Como (E Por Quê!) Criamos Mapas de Última Geração Com os Eventos Aleatórios

O Missão de Reconhecimento 2023 introduziu os eventos aleatórios para as localizações muito conhecidas (Himmelsdorf, Ruinberg, Prokhorovka e Porto Seguro). Nosso intuito era fornecer mais opções táticas e novos cenários de combate, bem como oportunidades para improvisar em situações fora do padrão.

Após concluir os testes dos eventos aleatórios, nós analisamos quase 400 mil questionários. E 86.8% dos entrevistados gostaram de jogar em mapas com os eventos aleatórios!

Estamos adicionando esses mapas ao próximo Teste Comum, então você terá a chance de experimentá-los em sua forma mais recente antes deles serem inseridos no jogo por definitivo. Enquanto isso, o que acha de conferir como criamos eles?

Nova Tecnologia, Novos Mapas

Você pode se perguntar: por que introduzimos os eventos aleatórios em apenas quatro mapas, e não em todos ou pelo menos metade deles? E por que só estamos finalizando agora, seis meses após a conclusão de testes do Missão de Reconhecimento?

O fato é que todo esse processo da criação de mapas com os eventos aleatórios é um trabalho muito longo, extensivo e que consome muito tempo. É necessário muito tempo e recursos (equipe de design, controle de qualidade, desenvolvedores, etc.), bem como novas ferramentas e tecnologias avançadas. Nós simplesmente não tínhamos a capacidade técnica para implementar os eventos aleatórios em todos os mapas existentes num curto espaço de tempo.

Especificamente para esse recurso, começamos a desenvolver uma nova ferramenta especial baseada em uma das tecnologias mais avançadas da indústria GameDev. Esta ferramenta ainda está em sua “primeira versão preliminar” e continuamos a desenvolvê-la. Mas agora podemos tornar o processo de implementação de eventos aleatórios muito mais fácil, rápido e eficiente. Confira mais abaixo!

 
 

Preparação Para os Testes

Começamos as preparações para testar os eventos aleatórios em Abril de 2023. Adicionar cenários dinâmicos a um grande número de mapas exigiu uma nova abordagem de automação, além de ferramentas especiais para a criação de tal conteúdo. Mas, nessa épica, nós simplesmente não tínhamos a capacidade técnica para criar cenários tão dinâmicos. Portanto, escolhemos apenas quatro mapas e alguns eventos, e configuramos eles manualmente para cada campo de batalha.

Como esta foi apenas a fase inicial de testes, não tentamos tornar o estado e a mecânica deles algo definitivo. Para nós, foi uma espécie de “pen test” para verificar o que tínhamos naquele momento e quais ferramentas e tecnologias eram necessárias.

Rapidamente ficou claro que configurar manualmente eventos dinâmicos para mais de 40 mapas no jogo era muito demorado e ineficiente. Portanto, nos deparamos com o desafio de criar uma nova ferramenta que automatizasse e dimensionasse (simplificasse a produção) desse conteúdo.

Estrutura de jogabilidade central: tecnologia inovadora para criação de conteúdo de jogos de nova geração

Para enfrentar esse desafio, implementamos a tecnologia Core Gameplay Framework (CGF) no World of Tanks. Esta é uma variação do Entity Component System, uma das tecnologias mais modernas e tendências da indústria GameDev.

Já estava presente no jogo de alguma forma, mas sua funcionalidade e flexibilidade claramente não eram suficientes para a plena realização dos eventos dinâmicos. Na verdade, tivemos que melhorar bastante esta tecnologia e implementá-la no World of Tanks em um formato profundamente novo.

Sobre a Tecnologia CGF

Expandir

Anteriormente, ao criar conteúdo, só podíamos interagir com veículos. A tecnologia CGF é uma espécie de construtor que permite fornecer vários objetos (não veículos) no ambiente de jogo com propriedades e conexões próprias. Ele permite alterar e gerenciar propriedades e partes de objetos. Desta forma, você pode interagir com cada objeto com uma lógica comportamental diferente da lógica do veículo.

CGF é usado para criar conteúdo de jogo funcional com alto grau de automação e escalabilidade. Com a ajuda do CGF, agora podemos criar e configurar rapidamente os eventos aleatórios em um formato mais simples e conveniente.

Reduzir

Novas Ferramentas

Também criamos ferramentas de design especiais que nos permitem usar essa tecnologia para criar cenários aleatórios detalhados. Na verdade, implementamos um novo editor semelhante ao que usamos para criar mapas.

Graças a isso, os objetos nos mapas (excluindo veículos ou edifícios estáticos) podem ser divididos em partes e adquirir propriedades e trajetórias próprias e únicas. Eles obedecem às regras gerais da física, influenciam o ambiente e operam de acordo com a mesma lógica física dos nossos veículos.

Costumávamos montar cada cenário específico dos eventos aleatórios manualmente. Agora, graças à tecnologia CGF e às ferramentas criadas para trabalhar com ela, os eventos aleatórios são criados no servidor de forma sincronizada para todos os jogadores.

Agora vamos conferir os bastidores dessa tecnologia e ver como criamos os eventos aleatórios na prática.

Passo 1: Escolhendo um Mapa

Criar os eventos aleatórios começa primeiramente na escolha de um mapa adequado. É importante observar que não levamos em consideração a popularidade do mapa ou as estatísticas de banimento. Na verdade, focamos apenas em dois parâmetros principais:

  • Variedade de jogabilidade
  • Tipo do mapa: campo aberto, cidade ou misto

Escolhemos os locais com um ambiente que permite uma variedade de opções e possíveis cenários para os eventos aleatórios. Por exemplo, em Himmelsdorf, existe uma praça central espaçosa, permitindo a possibilidade da queda de um objeto grande como um Zeppelin.

E uma das áreas de jogabilidade mais importantes de Prokhorovka é um corredor onde você potencialmente poderia fazer um avião colidir.

Passo 2: Análises dos Eventos Potenciais

O próximo passo é fazer uma lista de todos os possíveis eventos aleatórios que poderiam acontecer em um determinado mapa. Ao mesmo tempo, quando escolhemos um cenário damos preferência para que ele seja único. E quanto mais único for o cenário, melhor.

Além disso nós avaliamos a exclusividade do evento e quais novas possibilidades táticas ele fornece para a jogabilidade. Quanto mais decisões os jogadores puderem tomar na batalha, melhor. 

Passo 3: Análise de Mapa de Calor e Seleção da Zona do Evento

Um dos principais elementos do progresso da batalha é a localização dos veículos no mapa. Para implementar um cenário do evento aleatório, é necessário analisar os mapas de calor que mostram a maior concentração de jogadores em determinadas áreas. Eles nos ajudam a entender onde em um mapa específico podemos ampliar o leque de possibilidades táticas e tornar a jogabilidade mais variável, com diferentes opções para o desenvolvimento de uma batalha.

Também levamos em consideração o seu feedback e a nossa própria experiência para determinar a zona de evento mais adequada.

Tudo o que falamos até agora é análise e preparação preliminar. Depois de recebermos e analisarmos todas as informações acima, começa o verdadeiro trabalho de criação dos eventos aleatórios.

Avaliamos o estado final e o formato da jogabilidade da zona dos eventos aleatórios após sua interação com o objeto. Se necessário, fazemos alterações, adicionando ou removendo calçadas, coberturas, edifícios, etc.

Nosso objetivo final é reconfigurar cuidadosamente a área de jogo de uma forma que abra novas oportunidades para uma jogabilidade emocionante e dê a você uma escolha das novas táticas que você pode utilizar.

Em outras palavras, não começamos a criar eventos aleatórios imediatamente, com o lançamento de um avião em queda ou de um trem em movimento. Em vez disso, pretendemos primeiro finalizar o formato de jogo da zona do evento em um mapa específico.

Passo 4: Criando um Protótipo

Então começamos a criar e testar um protótipo. Pode haver vários deles, dependendo das novas oportunidades de jogo e táticas que um determinado cenário irá fornecer. Para os testes, utilizamos as chamadas "caixas cinzas", as formas geométricas mais simples (cubos, retângulos, etc.) que funcionam como materiais de construção e imitam qualquer tipo de objeto.

Após testar o protótipo, fazemos as edições finais e começamos a adicionar vários detalhes e objetos nele.

Passo 5: Selecionando Objetos e Cenários Para um Evento Aleatório

Neste estágio, nós escolhemos:

  • Espaço: terra, ar ou água.
  • Objeto ativo: avião, navio, trem, carro, etc.
  • Objeto alvo (destrutível) com o qual o objeto ativo irá interagir: edifício, bunker, ponte, cais, etc.
  • Condição dos objetos após destruição. É necessário saber onde permanecem as partes dos objetos após a destruição, sua quantidade e localização exata.
  • Lugar e trajetória no mapa, levando em consideração a visibilidade e o terreno, para que o jogador possa ver o andamento de um evento aleatório desde o início.

Como resultado, entendemos que se tivermos espaço aquático, poderemos ter um navio que bate no cais. Se for ar, então será um avião ou dirigível caindo.

Um objeto destruído pode se quebrar em um único fragmento grande ou em vários fragmentos de tamanho médio, dependendo do cenário. Todos eles podem se dividir em partes separadas com suas próprias trajetórias.

Passo 6 (Final): Visualizando e Finalizando o Cenário

Por fim, preenchemos o cenário com detalhes adicionais e fazemos a seleção final dos objetos (modelos) com base na sua relevância para um determinado evento. Por exemplo, se precisarmos destruir um castelo com uma aeronave grande, mas não tivermos tal aeronave à nossa disposição, então a substituímos por um objeto mais adequado: um avião.

Também selecionamos e refinamos os efeitos visuais para adicionar mais realismo, entretenimento e uma sensação cinematográfica. Ao mesmo tempo, nunca esquecemos que, como resultado de um evento aleatório, novas oportunidades táticas vão surgir e a jogabilidade deverá se tornar mais variada e interessante.

Pronto! Um mapa espetacular de próxima geração com um evento aleatório incrível está pronto! 

Vamos ter mais novidades?

Em um futuro próximo, queremos lançar quatro mapas (Himmelsdorf, Ruinberg, Prokhorovka e Porto Seguro) com eventos aleatórios refinados que vão ficar disponíveis durante o Teste Comum. Prepare-se para participar e compartilhar sua opinião!

Continuamos trabalhando ativamente na expansão dos mapas da próxima geração com eventos aleatórios, para que possam ser introduzidos no jogo em um futuro próximo. Fique ligado!

Conversar no Discord

Fechar