Notícias do setor
Uma edição em modo social é um segundo envio, não um interruptor
Quando se pede a um estúdio que «adicione um modo social», normalmente se está pedindo algo muito maior do que um ajuste. Numa plataforma que publica títulos de dinheiro real e de cassino social, a edição social é uma versão de front separada, com os próprios textos, o próprio conjunto de moedas, as próprias regras de idioma e a própria revisão. Tratá-la como uma flag na compilação existente é a forma mais comum de um jogo encomendado chegar à data de envio com uma segunda revisão ainda por vir.
A distinção não é pedante. As diretrizes de aprovação publicadas pela Engine indicam que cada pedido de aprovação cobre uma versão de front e uma versão de matemática, revisadas em conjunto, e que, após a aprovação, só são permitidas atualizações menores para corrigir problemas visuais: não são admitidas alterações no modelo matemático subjacente, a inclusão de novos modos de jogo nem modificações nas mecânicas. Se a edição social precisa de nomes de modo diferentes, textos de tabela de pagamentos diferentes ou uma apresentação de moeda diferente, essas decisões têm de existir antes do envio, não depois.
Este artigo é escrito para as duas pessoas que têm de tomar essa decisão: o responsável de conteúdo de um operador ou de uma plataforma que avalia se um título pode servir a um cassino social, e o produtor do estúdio que decide o que a encomenda deve incluir. A parte de certificação de uma edição específica de mercado é tratada em separado no guia de evidência de certificação localizada; isto é a parte do escopo da compilação.

O interruptor que você vê é um banco de testes, não uma estratégia de compilação
A documentação da Engine descreve um ajuste de modo social dentro do modal de jogo, e é fácil ler isso como prova de que o modo social é um comutador. É uma superfície de teste: permite verificar como uma compilação se comporta quando a plataforma a carrega num contexto social. O comportamento que expõe é real, e é dirigido pela plataforma, não pelos ajustes do próprio jogo.
O RGS envia um parâmetro de consulta social=true ou social=false para indicar se o jogo é carregado num cassino social. Espera-se que o jogo trate os dois casos. Esse único parâmetro muda mais do que um rótulo: muda qual arquivo de idioma é adequado, quais códigos de moeda chegam e quais palavras são permitidas em qualquer lugar que o jogador possa ler.
Assim, a primeira pergunta do briefing não é «conseguimos suportar o modo social?». É «qual das duas edições é a compilação principal e o que a segunda herda?». Um estúdio que responde «a mesma compilação, com outro arquivo de idioma» descreveu uma abordagem real e viável, mas só se os textos, os nomes de modo e o tratamento da moeda foram desenhados para isso desde o início.
A superfície de textos restritos é trabalho de conteúdo, não um localizar e substituir
O exemplo publicado mais claro de até onde vai uma edição social é a lista de frases restritas que a Engine aplica para a stake.us. O requisito é que um jogo aprovado para esse mercado não possa conter os termos listados quando roda em modo social, e a lista não é curta: bet passa a play, buy a play, cash a coins, deposit a get coins, wager a play, stake a play amount, total bet a total play, withdraw a redeem, credit a balance, currency a token, bonus buy a bonus ou feature, e place your bets a come and play ou join in the game.
O que transforma isso num problema de conteúdo e não num localizar e substituir é o alcance. O requisito cobre todo o texto visível ao jogador: rótulos de interface, botões, tabelas de pagamentos, páginas de ajuda, telas de carregamento, pop-ups, diálogos de confirmação, mensagens de erro e menus de configurações. A própria orientação da Engine nomeia as falhas que vê com mais frequência: um botão de aposta ainda rotulado «Bet», «Auto Bet» ou «Total Bet» dentro de um menu de aposta automática, e «Buy» que permanece num botão de compra de bônus ou no respetivo diálogo de confirmação.
Essas são exatamente as cadeias que vivem fora do documento de textos principal. Uma tabela de pagamentos é gerada a partir do modelo matemático. Um menu de aposta automática é um componente com os próprios valores padrão. Um diálogo de confirmação costuma ser escrito por quem construiu a funcionalidade, tarde, e nunca é revisto como texto. Um estúdio que planeja a edição social como uma passagem de tradução vai encontrar essas cadeias depois de a versão de front estar congelada, que é o pior momento possível.
A resposta prática é um inventário de textos como entregável: cada cadeia visível ao jogador na compilação, o respetivo arquivo de origem e a respetiva substituição em modo social, revistos como uma lista em vez de descobertos num teste. Esse inventário é também o artefato que um revisor da plataforma pode verificar, o que o torna mais valioso do que uma garantia de que a compilação «foi verificada quanto a termos restritos».
Os nomes de modo são a armadilha, porque vivem no arquivo de matemática
O requisito que apanha equipas experientes é o dos nomes de modo. A orientação da Engine diz que os nomes de modo não podem conter termos restritos como «buy», «bet» ou «pay» e — a parte importante — têm de ser iguais no jogo, na janela de repetição e nos arquivos de matemática.
Essa última cláusula transforma uma decisão de nomes numa decisão de versões. Na Engine, um jogo é um conjunto de arquivos estáticos: uma versão de matemática que contém todos os resultados possíveis, gerada antecipadamente e comprimida por modo, e um front que reproduz esses resultados. O RGS seleciona um número de simulação com uma frequência proporcional ao seu peso e devolve os eventos desse resultado na resposta de /wallet/play. Os nomes de modo fazem parte dessa estrutura, não são uma cadeia de visualização sobreposta.
Assim, um modo chamado «Buy Bonus» não se resolve renomeando um botão. Tem de ser renomeado nos arquivos de matemática, no jogo e na janela de repetição ao mesmo tempo, e, se o jogo já foi aprovado, as regras posteriores à aprovação não permitem acrescentar modos nem alterar o modelo matemático. Uma edição social que precisa de nomes de modo diferentes é, portanto, um envio diferente, planejado desde o início, não uma correção aplicada depois.
A janela de repetição merece a própria linha no briefing pela mesma razão. É uma superfície visível ao jogador que reproduz uma ronda passada, e a orientação da Engine exige que também esteja livre de termos restritos. Uma tela de repetição que mostra o nome de modo original falhará um requisito em que ninguém pensou em testar, porque a janela de repetição costuma ser construída uma vez e nunca mais revista.
Moeda e idioma são configuração que o briefing tem de nomear
Mais dois parâmetros pertencem ao briefing porque são baratos de especificar e caros de acrescentar depois.
O primeiro é a moeda. A orientação da Engine exige que o jogo carregue e seja exibido corretamente com as moedas sociais XSC (SC) e XGC (GC), e em concreto que não prefixe esses valores com o sinal de dólar. É uma regra de formatação com uma falha real: uma compilação que formata todos os saldos com um único formatador de moeda vai exibir um saldo social como valor em dinheiro, o que é simultaneamente incorreto e, num cassino social, um problema de conformidade e não cosmético.
O segundo é o idioma. O inglês é o único idioma suportado em modo social nessa plataforma, e a orientação recomenda um arquivo de idioma adicional com o prefixo sweeps_ para tratar as mudanças de frase. Essa recomendação é a diferença entre uma compilação com uma segunda tabela de cadeias e duas compilações que se afastam. Um estúdio que mantém os textos sociais num arquivo separado pode atualizá-los sem tocar no texto de dinheiro real; um estúdio que edita as cadeias principais no lugar tornou as duas edições mutuamente exclusivas.
Nenhuma das duas coisas é motivo para recusar uma edição social. Ambas são motivos para as escrever na encomenda antes de construir a versão de front, ao lado das verificações de aceitação de front da Engine que já cobrem combinações de idioma e moeda.
O contrato de sessão faz parte da compilação, não é um problema da plataforma
Uma edição social continua a ter de cumprir o mesmo contrato de RGS que qualquer outra compilação, e o contrato tem comportamentos que um front pode errar de formas que só aparecem em jogo real.
Todo fluxo começa com uma chamada a /wallet/authenticate quando o jogo carrega pela primeira vez. Essa chamada autoriza o identificador de sessão para /wallet/play, /wallet/balance e /wallet/end-round. Se o jogo nunca a chamar, as chamadas seguintes devolvem um erro 400 ERR_IS porque a sessão não é válida. O fluxo básico recomendado abre uma ronda com /wallet/play e fecha-a com /wallet/end-round quando as animações terminam.
Para uma ronda mais longa — um bônus de slot, por exemplo — a orientação sugere guardar até onde o jogador assistiu e, no carregamento seguinte, usar o valor round.event da resposta de /wallet/authenticate para retomar as animações a partir desse ponto. É um requisito de retomada, e relaciona-se com a edição social de uma forma que vale a pena nomear: uma ronda retomada mostra o mesmo nome de modo e os mesmos textos que a original, pelo que uma alteração de textos que não seja aplicada ao caminho de retomada produz uma tela que falha a regra de termos restritos apenas para os jogadores que saíram a meio da ronda.
O contrato de URL também importa. O jogo é carregado com um identificador de sessão, um idioma, um valor de dispositivo mobile ou desktop e um rgs_url. O identificador de sessão é obrigatório em cada pedido, e o rgs_url não deve ser codificado de forma fixa porque pode mudar em tempo de execução. Uma compilação que fixa o endpoint do RGS funciona no estúdio e falha num ambiente que o estúdio não controla.
O que o briefing deve realmente dizer
Em conjunto, uma encomenda que inclui uma edição social precisa de seis decisões registadas antes de a produção começar.
Qual edição é a principal. A compilação de dinheiro real ou a social. A edição principal fixa o documento de textos, os nomes de modo e a estrutura da tabela de pagamentos; a secundária herda e adapta. Decidir isto tarde significa reescrever os nomes de modo do arquivo de matemática, que é o caminho caro.
O inventário de textos. Cada cadeia visível ao jogador, a respetiva origem e a respetiva substituição social, como uma lista revista. Inclui as superfícies geradas: tabelas de pagamentos, menus de aposta automática, diálogos de confirmação, mensagens de erro, telas de carregamento e a janela de repetição.
Os nomes de modo, acordados uma vez. Nomes que sobrevivam às duas edições, verificados contra a lista de termos restritos antes de gerar a versão de matemática. É a decisão com mais probabilidade de forçar um reenvio.
A apresentação da moeda. Como XSC e XGC são formatados, e onde vive o formatador, para que um saldo social não possa herdar um símbolo de dinheiro.
A estratégia de arquivos de idioma. Uma tabela sweeps_ separada em vez de edições no lugar, para que as duas edições sejam mantidas de forma independente.
O comportamento de sessão e retomada. Autenticação antes de qualquer outra chamada, fecho de ronda após as animações e um caminho de retomada que mostre os mesmos textos que a ronda original.
Nada disto exige uma relação com a plataforma nem uma aprovação especial. Exige que o comprador pergunte pelo escopo da segunda edição no momento do briefing, quando os nomes de modo ainda são uma decisão de design e não um formato de arquivo. O custo dessa conversa no início é uma reunião; o custo de o descobrir depois da aprovação é um segundo envio com um modelo matemático congelado.
Para um estúdio, a posição honesta é que uma edição social é um segundo produto com um núcleo de arte e matemática partilhado. É uma afirmação de escopo, não uma recusa, e é a que permite a um editor planear um lançamento nos dois catálogos em vez de descobrir a segunda revisão no dia em que a primeira é aprovada. O briefing de projeto da Engine é a via para fixar esse escopo, incluindo qual edição é a principal e o que a segunda herda, antes de a produção começar.
Perguntas frequentes
O modo social é um ajuste na mesma compilação do jogo?
Não. A plataforma envia um parâmetro social=true ou social=false para indicar se o jogo é carregado num cassino social, e espera-se que o jogo trate os dois casos, mas a edição social leva os próprios textos, apresentação de moeda e regras de idioma. As diretrizes de aprovação da Engine indicam que cada pedido cobre uma versão de front e uma de matemática revistas em conjunto, pelo que uma edição social com nomes de modo ou textos de tabela de pagamentos diferentes é um envio separado, não um interruptor.
Porque é que um estúdio não pode simplesmente renomear os modos após a aprovação?
Porque os nomes de modo fazem parte da estrutura matemática, não são um rótulo de visualização. A orientação da Engine exige que os nomes de modo estejam livres de termos restritos e que sejam iguais no jogo, na janela de repetição e nos arquivos de matemática. Após a aprovação só são permitidas atualizações menores para corrigir problemas visuais; acrescentar modos de jogo ou alterar o modelo matemático não é permitido. Uma mudança de nome que toca os arquivos de matemática é, portanto, um novo envio.
Que palavras têm de mudar numa compilação em modo social?
A Engine publica uma lista de frases restritas para a stake.us que inclui bet por play, buy por play, cash por coins, deposit por get coins, wager por play, stake por play amount, total bet por total play, withdraw por redeem, credit por balance, currency por token e bonus buy por bonus ou feature. O requisito cobre todo o texto visível ao jogador, incluindo tabelas de pagamentos, páginas de ajuda, telas de carregamento, pop-ups, diálogos de confirmação, mensagens de erro e menus de configurações.
Como deve uma compilação social tratar a moeda e o idioma?
A orientação da Engine exige que o jogo carregue e seja exibido corretamente com as moedas sociais XSC e XGC, sem prefixo de sinal de dólar, e afirma que o inglês é o único idioma suportado em modo social. Recomenda um arquivo de idioma separado com o prefixo sweeps_ para as mudanças de frase, o que mantém os textos sociais sustentáveis sem editar o texto de dinheiro real no lugar.
O que o RGS espera do front?
Todo fluxo começa com /wallet/authenticate, que autoriza o identificador de sessão para /wallet/play, /wallet/balance e /wallet/end-round; sem ela, as chamadas seguintes devolvem um erro 400 ERR_IS. O fluxo básico abre uma ronda com /wallet/play e fecha-a com /wallet/end-round quando as animações terminam. Para rondas mais longas, o valor round.event da resposta de autenticação permite ao front retomar as animações onde o jogador as deixou, e o rgs_url não deve ser codificado de forma fixa porque pode mudar em tempo de execução.
