Estamos a conceber o Ancient Online: Remastered como um único mundo onde os jogadores de Windows, Linux, macOS, Android e iOS se vão encontrar. No papel parece simples: um jogo, cinco plataformas. Na prática, levar para telemóveis e comandos um MMORPG clássico pensado para ser jogado a cliques de rato implica uma série de decisões difíceis. Nesta parte do diário de desenvolvimento, partilhamos essas decisões e as razões por trás delas.
O jogo está em desenvolvimento. A versão de desenvolvimento está atualmente a ser testada em dispositivos Windows e Android; macOS, Linux e iOS são as outras plataformas que temos como alvo.
Regra 1: um mundo, um só conjunto de regras
Não há um servidor à parte nem um equilíbrio «simplificado» para os jogadores de telemóvel. Como todas as regras do jogo correm no servidor, jogas no mesmo mundo e com as mesmas regras, seja qual for o dispositivo a partir do qual te ligas. A tua conta, a tua personagem, o teu inventário e a tua guilda não dependem do dispositivo. Falámos do lado do servidor na primeira parte do diário de desenvolvimento.
Para o cliente, esta regra significa que plataformas diferentes podem oferecer controlos diferentes, mas não podem oferecer capacidades diferentes.
Ecrãs táteis: repensar em vez de encolher
Encolher tal como está a interface clássica de um MMORPG e pô-la num telemóvel não funciona; os botões ficam pequenos de mais para um dedo e o ecrã fica demasiado cheio. Por isso, desenhámos uma camada de interface à parte para o telemóvel:
- Um joystick flutuante: onde quer que ponhas o dedo na metade esquerda do ecrã, o joystick vai ter com ele; o jogador não tem de acertar num ponto específico do ecrã.
- Um botão de ataque de manter premido, com um arco de habilidades à volta.
- Tocar para selecionar o alvo: o equivalente tátil do hábito do PC de «clicar no monstro».
Há também uma coisa que decidimos deliberadamente não fazer: tocar para andar. O joystick trata do movimento. Com dois sistemas de movimento, cada toque que falhasse o alvo transformar-se-ia numa corrida involuntária, e a meio de um combate isso é inaceitável.
Mais uma decisão pequena mas importante: num telemóvel só se veem alguns espaços de cada vez, por isso a mudança entre páginas de habilidades acontece com muito mais frequência do que no computador. Tornámos os espaços de poções independentes das páginas; quando mudas de página, as tuas poções ficam onde estão. Fazê-lo exigiu mais do que mover uma célula na interface: tivemos de separar por completo da lógica das páginas o código que usa os espaços de poções.
Câmara e multitoque
Num telemóvel, a câmara roda quando arrastas um dedo numa zona vazia. Fazê-lo colocando uma «zona de câmara» de ecrã inteiro por cima da interface era tentador, mas uma camada dessas engoliria os toques destinados a todos os botões que estão por baixo. Ao tratarmos o arrasto da câmara no controlador do jogador e não na camada de interface, evitámos os conflitos entre os botões e a câmara. Além disso, distinguimos a seleção de alvo do arrasto da câmara com um pequeno limiar de movimento: enquanto o limiar não é ultrapassado a câmara não se mexe, e depois de ultrapassado começa a rodar sem um salto brusco.
Comandos: andar também pelos menus
Desenhámos o suporte para comando para toda a interface, não apenas para o combate. Para navegar no inventário e nos menus com um comando, adicionámos navegação por foco com o D-pad. Também aqui havia uma armadilha: o D-pad e os botões de confirmar e de voltar são precisos tanto para navegar nos menus como para usar os espaços rápidos. A solução: enquanto uma janela está aberta, estes botões navegam no menu e, quando está fechada, voltam aos espaços rápidos. Escorregar em silêncio para o «modo menu» a meio de um combate seria o pior erro que este sistema poderia ter.
O jogo regista qual foi o último dispositivo de entrada que usaste: quando mudas para um comando, os botões táteis retiram-se do ecrã.
As definições também acompanham a plataforma
A janela de definições ganha forma a partir do dispositivo: os separadores de rato e teclado só aparecem no PC, e o separador tátil só aparece nos telemóveis. As opções gráficas exclusivas de computador, como Lumen, DLSS e FSR, dão lugar, no telemóvel, às opções de resolução e de suavização de contornos. Em cada dispositivo mostramos apenas as definições que ali servem realmente para alguma coisa.
30 línguas e uma interface medida língua a língua
O jogo e os nossos sites apontam para 30 línguas. A dificuldade escondida de uma interface multilingue é o comprimento do texto: a mesma etiqueta de um botão pode ser curta numa língua e ter o dobro do tamanho noutra. Calculamos a largura dos separadores da janela de definições a partir da largura real de cada etiqueta nessa língua, em vez de lhes darmos partes iguais; quando a língua muda, a disposição é recalculada. No seletor de língua, cada língua aparece escrita com o seu próprio nome.
Tradução do chat nos nossos próprios servidores
Para que jogadores de países diferentes se possam entender no mesmo mundo, as mensagens do chat são traduzidas para a língua de quem as lê. Ao construir este sistema, seguimos dois princípios:
- As mensagens não saem dos nossos servidores. A tradução é feita nos nossos próprios servidores por um modelo local, que só usa CPU; não é usada nenhuma API de tradução externa.
- Preservar a linguagem do jogo. O chat de um MMORPG está cheio de abreviaturas, termos de jogo e emojis. Usamos um glossário específico do jogo e protegemos os emojis à parte, para que não se percam na tradução.
O que se segue
O trabalho continua no desempenho em telemóvel e nas outras plataformas que temos como alvo. Para a lista completa de controlos do lado do jogador, dá uma vista de olhos ao guia multiplataforma para PC e telemóvel no site do jogo. Para conheceres o nosso estúdio, lê Quem é a Astronaut Entertainment?.


