Anno 1503 A.D. Royal Edition — Natywny port 64-bitowy i tryb kooperacyjny

Rodzima 64-bitowa wersja SDL2 — Anno 1503 A.D. Royal Edition (w trakcie rozwoju)

Anno 1503 A.D. — Royal Edition (The New World + Treasures, Monsters & Pirates / niemiecka Königsedition, Max Design / Sunflowers, 2002–2004) to jedna z najbardziej szczegółowych 2D izometrycznych gier typu city-builder, jakie kiedykolwiek powstały. Tworzymy rodzimego 64-bitowego port silnika w C++20 & SDL2, przeznaczonego na macOS ARM64, Linux x86_64 oraz Linux ARM64, w tym przywrócony tryb wieloosobowy dla 1–4 graczy oraz kooperacyjny tryb wspólnego imperium.

Kup oryginalną grę na GOG.com (wymagane dla danych gry):
Potrzebujesz oficjalnych plików gry (archiwa .ann, tabele sprite'ów _zei oraz strumienie audio) z własnej kopii Anno 1503 A.D. zakupionej na GOG.com:
- Kup Anno 1503 A.D. — The New World (Royal Edition / Königsedition) na GOG.com

Architektura portu i zastępowanie oryginalnych DLL

Oryginalna architektura 1503Startup.exe + modularne DLL (Anno1503.dll, World.dll, Graphics.dll, Sound.dll, Network.dll) jest systematycznie zastępowana czystymi, przenośnymi modułami 64-bitowymi w C++20:

ModułOryginalny komponent z 2003Natywny zamiennik 64-bitowy (Status)
Archiwum i I/O zasobówAnno1503.dll (kontener .ann i dekompresja LZSS)Natywny 64-bitowy czytnik .ann obsługujący zarówno wersję angielską (The New World), jak i niemiecką (Königsedition) — Zaimplementowano
Renderer izometrycznyGraphics.dll (DirectDraw7 RGB565, blitter programowy/pamięć VRAM, 3 poziomy powiększenia)SDL2 / Vulkan – renderer wsadowy kafelków i sprite’ów z wielopoziomowym zoomem (_zei, _ani, anlagen.zei) — W trakcie
Gospodarka i takt AIWorld.dll (20 Hz, symulacja wyspy z liczbami stałoprzecinkowymi, szlaki handlowe i potrzeby mieszkańców)Deterministyczna 64-bitowa pętla symulacji o stałym kroku (bitowo identyczna na x86_64 iARM64) — W trakcie realizacji
Dźwięk i wideo BinkSound.dll (Miles Sound System Mss32.dll + binkw32.dll)SDL2_mixer + FFmpeg (libavcodec) dla scenek Bink (.bik) i mowy — Zaimplementowano
Multiplayer i tryb kooperacyjnyNetwork.dll (niewydany / niedokończony stub DirectPlay8)Sieciowa synchronizacja poleceń dla 1–4 graczy w trybie Multiplayer i kooperacyjnym — W fazie projektowania

Przywracanie Sławnego Nieskończonego Trybu Wieloosobowego i Współpracy

Anno 1503 zostało wydane w 2002 roku z wyłączonym tuż przed premierą modułem wieloosobowym Network.dll. Ponieważ symulacja World.dll jest już napędzana przez dyskretne polecenia budowy/handlu graczy z częstotliwością 20 Hz, nasz natywny port przywraca tryb wieloosobowy w dwóch trybach:

  1. Klasyczne sesje wielowyspowe dla 2–4 graczy: Każdy gracz osadza się i rozwija własne wyspy, zawiera układy handlowe oraz rywalizuje lub współpracuje na całym archipelagu.
  2. Tryb współpracy – Wspólne Imperium: Dwóch lub więcej graczy wspólnie zarządza tą samą siecią osad, skarbcem i flotą handlową jednocześnie — jeden gracz optymalizuje łańcuchy produkcji, podczas gdy drugi zarządza trasami statków i dyplomacją.