Resposta #7: Balanceamento Matemático

Faz um bom tempo que não temos convidados aqui no blog. Acredito que isso acontece por uma razão: eu não sei quem convidar, pois não sei um bom tópico para todas as pessoas que conheço. Juntando com minha redução no contato com a comunidade de Game Designers. Termina que fica bem difícil eu ter essas ideias e realizar os convites. Entretanto, no finalzinho do ano passado, eu tive uma ideia de um tópico importante e de uma pessoa específica para conversar sobre ele com vocês. Um amigo de relativa longa data: Ricardo Amaral.

Olá, pessoal! Para quem não me conhece, sou o Ricardo Amaral, Game Designer do Luna Maris, jogo que deve ser publicado ainda este ano. Luna Maris é um jogo de administração de recursos em que o jogador, no papel de supervisor de uma equipe de astronautas, deve procurar a melhor forma de usar as habilidades de seus trabalhadores para extrair recursos naturais da Lua (minérios, água e gás Hélio-3), consumindo a menor quantidade possível de energia e oxigênio.

Luna Maris vem sendo desenvolvido e testado há 4 anos. No final do ano passado, após conversar com a Editora e o Game Developer, foi sugerido que eu buscasse um balanceamento matemático para ajustar os últimos detalhes de balanceamento do jogo. “Tranquilo!”, pensei. Embora nunca tivesse realizado um balanceamento matemático, eu já tinha ouvido tanto falar nisso que achei que seria fácil encontrar algum método. Que ingenuidade. Eu fucei a Internet procurando métodos, mas tudo o que encontrei foram definições. Nenhum local mostrava como fazê-lo. Até em livros consagrados de Game Design procurei, mas nada prático consegui encontrar.

Então, fui procurar quem sabe fazer! Por intermédio de Roberto Pinheiro, consegui o contato de Moisés Pacheco (Grasse e Overdrive) que foi muito solícito comigo e me deu as primeiras ideias sobre balanceamento do jogo com o Excel. Inclusive, com uma planilha inicial para o Luna Maris. Depois, consegui uma videoconferência com o Michael Alves (Triora, Zona Mágica, Anime Saga e Contária) que me ajudou a tirar as dúvidas de como explorar melhor as planilhas e obter balanceamentos. Usarei o Luna Maris como exemplo, pois foi o jogo que usei as metodologias. Vamos lá?

Tabela 1: pesos dos recursos do jogo.

O primeiro passo é descrever tudo o que obtemos no jogo. No caso do Luna Maris, temos: Energia, Oxigênio, Água, Minérios (Basalto comum e Titânio), Hélio-3, Cientistas e o Lixo produzido. Então, estabelecemos a menor ação possível no jogo que proporcione uma pontuação mínima e começamos a definir pesos para cada recurso. Não é um estudo difícil, mas dá um certo trabalho. Acredito que seja mais fácil quando você parte do zero. No meu caso, com o jogo já estruturado, foi mais difícil encontrar uma relação que contemplasse o que já funcionava no jogo. Eu precisei fazer 4 balanceamentos diferentes até encontrar um que me contemplasse. Na tabela ao lado estão os pesos que defini para cada recurso no jogo. Os valores dessa tabela foram obtidos por meio de vários testes, a fim de estabelecer uma proporção balanceada sobre os pesos de cada recurso.

Depois, é preciso preparar algumas fórmulas no Excel (um parto pra quem nunca tinha trabalhado com isso!). Segue abaixo o modelo de cálculo que foi desenvolvido.

Tabela 2: Exemplo de Gastos e Ganhos de uma ação do jogo descriminados em unidades e pesos. Última célula indica o peso total da ação, resultado da subtração do peso ganho com o peso gasto.

Os pesos presentes na Tabela 1 são criados de modo a balancear as ações disponíveis no jogo (exemplo na Tabela 2) para que todas as ações tenham um rendimento de X pontos. Nesse caso, o rendimento foi de 1 ponto. Vamos detalhar melhor o processo.

O jogador deseja extrair água de um minério anteriormente coletado na Lua. Então, ele precisa pegar o seu meeple de cientista e leva-lo até o Complexo Industrial. Cada movimento na colônia, consome 1 Oxigênio. No exemplo, como ele está adjacente ao Complexo, ele gasta 1 Oxigênio e move seu cientista para o local da ação. Então, precisa baixar a carta de cientista cujo ícone seja equivalente à ação desejada, gastar 1 Energia para ativar o módulo e descartar 1 Minério. Ao fazer isso, o jogador obtém 1 Água e 1 Ponto de Vitória. O processo de extração também resulta em resíduos sólidos, daí o jogador também produz 1 Lixo.

Agora, façamos a análise matemática desse processo, utilizando os pesos estabelecidos na Tabela 1. Iniciando com os Gastos, vamos na Tabela 2 e preenchemos apenas o quantitativo do que foi usado nessa ação: Oxigênio (1), Cientista (1), Energia (1) e Basalto (1). Calculando o peso de cada recurso vezes a quantidade do recurso, o próprio programa apresenta o peso de cada recurso gasto. Finalmente, somando todos os pesos, obtemos o peso final dos Gastos da ação que é de 2 pontos. Ou seja, para obter água, o jogador está abrindo mão de 2 pontos no jogo.

Agora vamos para os Ganhos. Na parte inferior da tabela, preenchemos o que o jogador estará ganhando ao fazer a ação: Água (1), Lixo (1) e Ponto de Vitória (1). Novamente, usando o mesmo esquema de cálculo, com exceção do lixo (veremos essa especificidade adiante). Ao somar todos os pesos, obtemos o peso final dos ganhos da ação que é de 3 pontos.

Ou seja, ao fazer essa ação, o jogador abre mão de 2 pontos para ganhar 3 pontos. Resumindo, essa ação lhe rende 1 ponto de vitória. É preciso fazer esses ajustes para cada ação possível no jogo. E em toda ação, o resultado final deverá ter o saldo de 1 ponto de vitória. Deste modo, o jogo ficará com as ações balanceadas por possuir o mesmo rendimento, com pequenas flutuações. Caso contrário, uma ação será muito mais valiosa que outra, o que resultará em desbalanceamentos. O valor do rendimento fica a cargo do Game Designer, mas pode ser 2, 3 ou mais.

No mais, ao utilizar essa metodologia você não precisa engessar tudo. No Luna Maris, algumas ações resultam em pontuações menores ou maiores que 1 ponto. Por exemplo, contratar um Cientista rende 0,25 pontos. Mas uma vez contratado, o Cientista permanece em jogo até o final e, dependendo do turno em que for adquirido, pode ser usado 2 ou 3 vezes. Diferentemente de outros recursos que, uma vez consumidos, não voltam ao jogador livremente. Outro exemplo é o uso da Usina de Reciclagem. Uma vez que o jogador tenha desenvolvido pesquisas em sustentabilidade no Laboratório, ele pode transformar Lixo em outros recursos além do Minério. Então, ao transformar 1 Lixo em 3 Energias, ele está obtendo 1,5 pontos nessa ação. Mas esse aumento na pontuação se baseia no fato de que o jogador precisou fazer ações no Laboratório que não lhe rendem pontuação imediata. Portanto, a palavra de ordem é BOM SENSO! Devemos sempre manter a pontuação de cada ação num mesmo patamar. Mas mantendo um olhar para alguma ação que seja mais ou menos benéfica, a fim de compensar as perdas ou ganhos nessa bonificação.

Um ponto que merece destaque nesse balanceamento é o Lixo. Se você observar na Tabela 1 o seu peso é dito como Variável. Sem dúvidas foi o recurso que me deu mais trabalho. Antes de balancear o jogo matematicamente, cada Lixo valia -2 Pontos de Vitória no final da partida. Sendo que quando fui usar a planilha do Excel, de cara vi que era algo muito pesado. O caminho comum seria mudar para -1 ponto. Mas também se mostrou muito baixo para grandes quantidades. Depois de alguns testes, vi que o caminho mais próximo pro balanceamento que eu queria seria um valor variável e escalonável de acordo com a quantidade de lixo. Assim, a pontuação acabou ficando da seguinte forma: você não perde pontos se não tiver Lixo, mas se tiver receberá -2 vezes quantidade de Lixo mais 1. Confuso? Exemplo: um jogador com 1 Lixo, recebe -1 ponto (-2×1+1); um jogador com 2 Lixos, recebe -3 pontos (-2×2+1); com 3 Lixos, recebe -5 pontos (-2×3+1), e assim por diante. Com isso, consegui balancear as ações que usavam ou rendiam lixo de forma mais satisfatória.

O importante é você ter um conhecimento mínimo de Excel (que eu não tinha). Precisei assistir umas videoaulas para entender como construir fórmulas. No caso do lixo, a fórmula ficou: =SE(H19>0;-2*H19+1;0). No qual H19 é a célula onde insiro a quantidade de lixo.

Depois de usar Luna Maris como exemplo, acho propício mostrar um exemplo genérico. A definição do peso que você dá a cada recurso é a parte primordial nesse tipo de balanceamento. Os pesos precisam se combinar de forma a conseguir sempre um mesmo valor de pontuação ao subtrair o ganho do gasto. E não é simples achar essa combinação perfeita. Mas não tem mágica. É experimentando valores e combinações.

Por exemplo, se sua meta é que cada ação renda 2 pontos, seu jogo usa Worker Placement e você quer que o jogador gaste trabalhadores e água pra conseguir alimentos. Então, a combinação de pesos entre trabalhador – água – alimento deve ser tal que o saldo seja de 2 pontos positivos. Algumas possibilidades para esse equilíbrio:

Assim, no exemplo 1, o jogador precisaria gastar 1 trabalhador e 1 água pra receber 2 alimentos. Então, de acordo com os pesos de cada recurso, ele gasta 2 pontos para ganhar 4 pontos. Enquanto que no exemplo 2, o jogador precisaria gastar 1 trabalhador e 2 águas pra receber 2 alimentos. NA mesma análise, ele gasta 3 pontos para ganhar 5 pontos. E, no último exemplo, o jogador precisaria gastar 2 trabalhadores e 1 água pra receber 2 alimentos. Como na análise anterior, ele gastaria 3 pontos pra ganhar 5 pontos. Em qualquer uma das possibilidades, o saldo da ação é de 2 pontos. No entanto, a escolha dos pesos depende das relações desses recursos com os demais recursos do jogo. E é isso.

Para concluir, tenho uma pequena reflexão. Uma coisa que a experiência de Game Designer me proporcionou é a de que podemos nos ajudar mutuamente e isso não tira o espaço de ninguém. Graças a amigos como o Roberto Pinheiro, o Moisés Pacheco e o Michael Alves, pude compreender uma forma de balanceamento matemático de jogos. Sou muito grato a eles. E hoje estou aqui deixando esse material (pífio) que pode ajudá-lo a compreender o passo-a-passo do processo.

Aproveito para agradecer o espaço cedido pelo amigo Roberto Pinheiro. Uma pessoa que ajudou muito no processo de desenvolvimento do Luna Maris e que tem grande experiência em design de jogos.

2 Comments

  1. Cássio Nandi Citadin
    13 de março de 2020

    Cara que bacana ver os designers nacionais colaborando.

    Responder
    1. Roberto
      13 de março de 2020

      E o mais legal é ser sobre um tema que muita gente pergunta ou tem curiosidade =D

      Responder

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Scroll to top