Caputchin
Personalização de jogo

Personalize o idioma de um jogo

Um jogo vem com os idiomas para os quais seu autor o traduziu. Na aba Idioma do editor do jogo você pode sobrescrever essas strings, corrigir uma tradução, ajustar o texto para combinar com seu produto, ou adicionar um idioma que o jogo não trouxe, e a mudança se aplica ao jogo renderizado.

A personalização de idioma está disponível do plano Alpha em diante (Alpha, Troop, Apex).

Defina as strings de idioma

Abra o jogo na página Jogos de uma chave de site (ou da equipe), depois a aba Idioma. Cada idioma que o jogo oferece é um preset, e cada preset é um conjunto de strings nomeadas (os rótulos e mensagens no jogo). Edite as strings que você quer mudar; deixe o resto e elas mantêm o texto empacotado do jogo.

Os campos de idioma são sempre texto puro. Não há nada para escolher além das palavras.

Como um idioma é escolhido em tempo de execução

Cada preset de idioma carrega uma tag de idioma (en, es, fr e assim por diante), e os presets são agrupados por essa tag. Escolher um acontece em duas etapas.

Primeiro o widget decide qual idioma pedir:

  1. O atributo locale do widget, se a página definiu um (intenção explícita do autor).
  2. Senão, o idioma do navegador do visitante (o primeiro dos idiomas preferidos dele).
  3. Senão nada, e o servidor recai no padrão do jogo.

Depois o servidor casa esse idioma contra os presets, após mesclar suas substituições (chave de site sobre equipe sobre o conjunto empacotado do jogo), nesta ordem:

  1. Um casamento exato de tag (pt-BR acha o preset pt-BR).
  2. O idioma base (pt-BR recai em um preset pt).
  3. O preset que você marcou como padrão.
  4. O primeiro preset do jogo.

Então um jogo com quaisquer presets sempre renderiza texto de verdade, nunca chaves cruas. Você marca um preset por idioma como o padrão no editor.

No elemento <caputchin-game> você também pode passar um objeto locale inline: um objeto JSON escrito como o valor do atributo, por exemplo locale='{"start":"Go!"}'. O widget o envia ao servidor como o sinal de idioma daquela montagem, e o servidor o faz parse e o sobrepõe aos presets resolvidos, então suas strings inline vencem tudo acima (incluindo suas substituições de equipe e de chave de site). É uma propriedade do seu próprio markup, então funciona em qualquer plano. A checkbox <caputchin-widget> não aceita um locale inline; seu atributo locale aceita só uma tag de idioma ou um nome de preset. Veja nossa filosofia para saber por que essa autoria por embed é grátis.

A direção do texto (da esquerda para a direita ou da direita para a esquerda) é derivada da tag de idioma automaticamente, então um idioma da direita para a esquerda renderiza corretamente sem configuração extra.

Adicione ou estenda um idioma

Você pode estender qualquer idioma que o jogo traz: o novo preset herda cada string daquele que você estende, e você sobrescreve só as que muda. Para adicionar um idioma que o jogo não trouxe, crie um preset com a tag desse idioma e preencha as strings.

O que se aplica, e onde

As substituições de idioma resolvem no servidor, o mais específico vence: um preset de chave de site vence o preset da equipe, que vence o idioma empacotado do jogo. O idioma do navegador do visitante seleciona qual preset resolvido ele vê.

Veja também

Nesta página