Ancient Online: Remastered projektujemy jako jeden świat, w którym spotkają się gracze na systemach Windows, Linux, macOS, Android i iOS. Na papierze brzmi to prosto: jedna gra, pięć platform. W praktyce przeniesienie klasycznego MMORPG, zaprojektowanego do grania kliknięciami myszy, na telefony i kontrolery oznacza serię trudnych decyzji. W tej części devlogu dzielimy się tymi decyzjami i ich powodami.
Gra jest w fazie rozwoju. Wersja deweloperska jest obecnie testowana na urządzeniach z systemami Windows i Android; macOS, Linux i iOS to pozostałe platformy, na które celujemy.
Zasada 1: jeden świat, jeden zestaw zasad
Dla graczy mobilnych nie ma osobnego serwera ani „uproszczonego” balansu. Ponieważ wszystkie zasady gry działają na serwerze, grasz w tym samym świecie, według tych samych zasad, bez względu na to, z jakiego urządzenia się łączysz. Twoje konto, postać, ekwipunek i gildia nie zależą od urządzenia. Stronę serwerową omówiliśmy w pierwszej części devlogu.
Dla klienta ta zasada oznacza, że różne platformy mogą oferować różne sterowanie, ale nie mogą oferować różnych możliwości.
Ekrany dotykowe: przemyśleć na nowo, zamiast pomniejszać
Pomniejszenie klasycznego interfejsu MMORPG w niezmienionej postaci i wrzucenie go na telefon nie działa; przyciski robią się za małe na palec, a ekran zbyt zatłoczony. Dlatego dla urządzeń mobilnych zaprojektowaliśmy osobną warstwę interfejsu:
- Pływający joystick: Gdziekolwiek położysz palec w lewej połowie ekranu, joystick pojawia się pod nim; gracz nie musi trafiać w konkretne miejsce na ekranie.
- Przycisk ataku do przytrzymania z łukiem umiejętności wokół niego.
- Dotknięcie, by wybrać cel: Dotykowy odpowiednik znanego z PC nawyku „kliknij potwora”.
Jest też coś, czego celowo nie zrobiliśmy: ruch przez dotknięcie. Za ruch odpowiada joystick. Przy dwóch systemach ruchu każde chybione dotknięcie celu zamieniałoby się w niezamierzony bieg, a w środku walki to nie do przyjęcia.
Jeszcze jedna mała, ale ważna decyzja: na telefonie widać naraz tylko kilka slotów, więc przełączanie stron umiejętności zdarza się znacznie częściej niż na komputerze. Sloty mikstur uczyniliśmy niezależnymi od stron; gdy zmieniasz stronę, mikstury zostają na miejscu. Wymagało to czegoś więcej niż przeniesienia komórki w interfejsie: musieliśmy całkowicie oddzielić kod używający slotów mikstur od logiki stron.
Kamera i wielodotyk
Na telefonie kamera obraca się, gdy przeciągasz palcem po pustym obszarze. Kuszące było zrobienie tego przez nałożenie na interfejs pełnoekranowej „strefy kamery”, ale taka warstwa pochłaniałaby dotknięcia przeznaczone dla wszystkich przycisków pod nią. Obsługując przeciąganie kamery w kontrolerze gracza, a nie w warstwie interfejsu, uniknęliśmy konfliktów między przyciskami a kamerą. Wybór celu odróżniamy też od przeciągania kamery małym progiem ruchu: dopóki próg nie zostanie przekroczony, kamera ani drgnie, a po jego przekroczeniu zaczyna się obracać bez nagłego skoku.
Kontrolery: także poruszanie się po menu
Obsługę kontrolera zaprojektowaliśmy dla całego interfejsu, nie tylko dla walki. Aby po ekwipunku i menu dało się poruszać kontrolerem, dodaliśmy nawigację fokusem za pomocą krzyżaka. Tu też była pułapka: krzyżak i przyciski potwierdzenia/cofnięcia są potrzebne zarówno do poruszania się po menu, jak i do używania szybkich slotów. Rozwiązanie: gdy okno jest otwarte, te przyciski obsługują menu, a gdy jest zamknięte, wracają do szybkich slotów. Ciche przejście w „tryb menu” w środku walki byłoby najgorszym błędem, jaki ten system mógłby mieć.
Gra śledzi, którego urządzenia wejściowego używasz ostatnio: gdy przechodzisz na kontroler, przyciski dotykowe znikają z ekranu.
Ustawienia też podążają za platformą
Okno ustawień przybiera kształt zależny od urządzenia: karty myszy i klawiatury pojawiają się tylko na PC, a karta dotyku tylko na telefonach. Opcje grafiki dostępne wyłącznie na komputerach, takie jak Lumen, DLSS i FSR, na urządzeniach mobilnych ustępują miejsca opcjom rozdzielczości i wygładzania krawędzi. Na każdym urządzeniu pokazujemy tylko te ustawienia, które faktycznie coś na nim robią.
30 języków i interfejs mierzony dla każdego języka
Gra i nasze strony mają być dostępne w 30 językach. Ukrytą trudnością wielojęzycznego interfejsu jest długość tekstu: ta sama etykieta przycisku może być krótka w jednym języku i dwa razy dłuższa w innym. Szerokość kart w oknie ustawień obliczamy na podstawie rzeczywistej szerokości każdej etykiety w danym języku, zamiast dawać im równe części; gdy język się zmienia, układ jest przeliczany na nowo. W wyborze języka każdy język jest zapisany pod własną nazwą.
Tłumaczenie czatu na naszych własnych serwerach
Aby gracze z różnych krajów mogli się zrozumieć w tym samym świecie, wiadomości na czacie są tłumaczone na język czytającego. Budując ten system, mieliśmy dwie zasady:
- Wiadomości nie opuszczają naszych serwerów. Tłumaczenie wykonuje na naszych własnych serwerach lokalny model działający wyłącznie na procesorze; nie używamy żadnego zewnętrznego API tłumaczeniowego.
- Zachowanie języka gry. Czat w MMORPG jest pełen skrótów, terminów z gry i emoji. Używamy słownika terminów specyficznego dla gry, a emoji chronimy osobno, żeby nie ginęły podczas tłumaczenia.
Co dalej
Trwają prace nad wydajnością na urządzeniach mobilnych i nad pozostałymi platformami, na które celujemy. Pełną listę elementów sterowania od strony gracza znajdziesz w poradniku gry wieloplatformowej na PC i urządzeniach mobilnych w witrynie gry. Aby poznać nasze studio, przeczytaj Kim jest Astronaut Entertainment?.


