Todos os posts

Um mundo, cinco plataformas — Devlog nº 2: os desafios de desenvolver um MMORPG multiplataforma

Um MMORPG jogável com mouse, tela de toque e controle: as escolhas de Ancient Online em interface, controles, 30 idiomas e tradução local do chat.

Um controle de videogame sobre uma mesa em um ambiente com pouca luz, com reflexos vermelhos e turquesa

Estamos projetando Ancient Online: Remastered como um único mundo em que jogadores de Windows, Linux, macOS, Android e iOS vão se encontrar. No papel parece simples: um jogo, cinco plataformas. Na prática, levar para celulares e controles um MMORPG clássico pensado para ser jogado com cliques do mouse significa uma série de decisões difíceis. Nesta parte do devlog, compartilhamos essas decisões e os motivos por trás delas.

O jogo está em desenvolvimento. No momento, a build de desenvolvimento é testada em dispositivos Windows e Android; macOS, Linux e iOS são as outras plataformas que temos como meta.

Regra 1: um mundo, um conjunto de regras

Não existe um servidor separado nem um balanceamento “simplificado” para quem joga no celular. Como todas as regras do jogo rodam no servidor, você joga no mesmo mundo, pelas mesmas regras, seja qual for o dispositivo de onde se conecta. Sua conta, seu personagem, seu inventário e sua guilda não dependem do dispositivo. Tratamos do lado do servidor na primeira parte do devlog.

Para o cliente, essa regra significa que plataformas diferentes podem oferecer controles diferentes, mas não podem oferecer capacidades diferentes.

Telas de toque: repensar em vez de encolher

Encolher a interface clássica de MMORPG do jeito que ela é e colocá-la em um celular não funciona; os botões ficam pequenos demais para um dedo, e a tela, lotada demais. Por isso, projetamos uma camada de interface separada para o mobile:

  • Um joystick flutuante: onde quer que você coloque o dedo na metade esquerda da tela, o joystick vai até ele; o jogador não precisa acertar um ponto específico da tela.
  • Um botão de segurar para atacar, com um arco de habilidades em volta.
  • Toque para selecionar o alvo: o equivalente, no toque, ao hábito de “clicar no monstro” do PC.

Também há algo que deixamos de fazer de propósito: o toque para mover. O joystick cuida do movimento. Com dois sistemas de movimento, cada toque que errasse o alvo viraria uma corrida involuntária, e no meio de uma luta isso é inaceitável.

Mais uma decisão pequena, mas importante: no celular, só alguns espaços ficam visíveis por vez, então a troca entre páginas de habilidades acontece com muito mais frequência do que no PC. Tornamos os espaços de poções independentes das páginas; quando você troca de página, suas poções ficam onde estão. Fazer isso exigiu mais do que mover uma célula na interface: tivemos que separar por completo o código que usa os espaços de poções da lógica de páginas.

Câmera e multitoque

No celular, a câmera gira quando você arrasta um dedo por uma área vazia. Fazer isso colocando uma “zona de câmera” em tela cheia por cima da interface parecia tentador, mas uma camada assim engoliria os toques destinados a cada botão que estivesse embaixo dela. Ao tratar o arrasto da câmera no controlador do jogador, e não na camada de interface, evitamos conflitos entre os botões e a câmera. Também diferenciamos a seleção de alvo do arrasto da câmera com um pequeno limiar de movimento: até o limiar ser ultrapassado, a câmera não se mexe, e, depois que ele é ultrapassado, a câmera começa a girar sem dar um salto brusco.

Controles: navegar também pelos menus

Projetamos o suporte a controle para a interface inteira, e não só para o combate. Para navegar pelo inventário e pelos menus com um controle, adicionamos navegação por foco com o direcional. Aqui também havia uma armadilha: o direcional e os botões de confirmar/voltar são necessários tanto para navegar nos menus quanto para usar os atalhos rápidos. A solução: com uma janela aberta, esses botões navegam pelo menu e, quando ela é fechada, voltam para os atalhos rápidos. Entrar silenciosamente em “modo menu” no meio de uma luta seria o pior bug que esse sistema poderia ter.

O jogo registra qual dispositivo de entrada você usou por último: quando você passa para o controle, os botões de toque somem da tela.

As configurações também seguem a plataforma

A janela de configurações toma a forma do dispositivo: as abas de mouse e teclado só aparecem no PC, e a aba de toque só aparece nos celulares. Opções gráficas exclusivas de PC, como Lumen, DLSS e FSR, dão lugar no mobile às opções de resolução e de anti-aliasing. Em cada dispositivo, mostramos apenas as configurações que realmente fazem alguma coisa ali.

30 idiomas e uma interface medida para cada idioma

O jogo e nossos sites têm como meta 30 idiomas. A dificuldade escondida de uma interface multilíngue é o comprimento do texto: o mesmo rótulo de botão pode ser curto em um idioma e ter o dobro do tamanho em outro. Calculamos a largura das abas da janela de configurações a partir da largura real de cada rótulo naquele idioma, em vez de dar a elas partes iguais; quando o idioma muda, o layout é recalculado. No seletor de idiomas, cada idioma é escrito com o próprio nome.

Tradução do chat em nossos próprios servidores

Para que jogadores de países diferentes se entendam no mesmo mundo, as mensagens do chat são traduzidas para o idioma de quem lê. Tivemos dois princípios ao construir esse sistema:

  1. As mensagens não saem dos nossos servidores. A tradução é feita em nossos próprios servidores por um modelo local, que usa apenas CPU; nenhuma API externa de tradução é usada.
  2. Preservar a linguagem do jogo. O chat de um MMORPG é cheio de abreviações, termos de jogo e emojis. Usamos um glossário específico do jogo e protegemos os emojis à parte, para que não se percam durante a tradução.

O que vem a seguir

O trabalho continua no desempenho mobile e nas outras plataformas que temos como meta. Para a lista completa de controles do lado do jogador, dê uma olhada no guia multiplataforma de PC e celular no site do jogo. Para conhecer nosso estúdio, leia Quem é a Astronaut Entertainment?.

Compartilhar:
Também disponível em29