Como a inteligência artificial evoluiu o Star Wars Battlefront II
Saiba mais sobre o funcionamento da nova tecnologia de IA.
Se você joga há muito tempo (ou é uma pessoa observadora), já deve ter notado como a implementação de jogadores não humanos – controlados pela IA (inteligência artificial) – teve um papel determinante na evolução do Star Wars™ Battlefront™ II ao longo do ano.
Como geralmente falamos sobre os aspectos mais tangíveis do jogo, seja na forma de novos planetas, heróis, reforços e outras coisas desse tipo, gostaríamos de destacar agora o trabalho dos nossos programadores e designers nesse domínio específico.
Esperamos que isso dê a você uma compreensão melhor de como a IA funciona e como ela permite que os nossos designers criem experiências de jogo incríveis e batalhas inesquecíveis no universo Star Wars.
Anakin Skywalker e Obi-Wan Kenobi, controlados pela IA, unindo forças e criando um momento perfeito de Star Wars nas ruas de Theed.
A nova IA no Star Wars Battlefront II – Um breve resumo
Um marco importante foi alcançado no início de 2019 com o lançamento do modo Supremacia da Capital, que trouxe uma nova tecnologia de IA. Pela primeira vez no multiplayer online do Star Wars Battlefront II, os jogadores lutaram ao lado de e contra robôs (outra palavra para as unidades controladas pela IA).
A IA deu escala ao combate, aumentando o número de soldados na frente de batalha. Mas ela também permite que jogadores de todos os níveis de habilidade possam se divertir, pois os robôs são, em comparação com jogadores veteranos, alvos mais fáceis.
Desde então, como parte da Atualização Cooperativa, a IA ganhou destaque em dois novos modos de jogo: o Co-Op online e a Ação Instantânea offline. A equipe de desenvolvimento apostou na utilização da IA para fazer os jogadores se sentirem heroicos na frente de batalha, permitindo que criassem seus próprios momentos de Star Wars e se divertissem, sem a pressão da competição com outros humanos.
Disparos de blaster voando pelo ar em uma batalha de alta intensidade durante as Guerras Clônicas em Geonosis, no modo co-op.
Tudo começou como uma ferramenta de testes
O projeto foi iniciado em agosto de 2017, por Jonas Gillberg, Engenheiro Sênior de IA na Electronic Arts, e envolvia a criação de uma nova tecnologia. Esclarecemos que essa iniciativa não tinha nada em comum com os agentes de autoaprendizado demonstrados por SEED ou a IA presente no modo Arcade do Star Wars Battlefront II.
Essa tecnologia foi criada para fazer os robôs jogarem o jogo, para que os humanos não precisassem fazer isso. Mas por quê?
O escopo inicial do projeto era criar uma IA para escalar os testes automatizados de grandes sessões multiplayer. Para testar as coisas corretamente, era necessário ter uma IA que se comportasse de maneira mais parecida possível com os jogadores humanos.
A tecnologia foi criada para oferecer aos analistas de controle de qualidade (que analisam e testam regularmente os jogos) e aos criadores de conteúdo (como designers de jogo e de fases) um controle de alto nível dos objetivos da IA com o scripting visual. Assim, não era necessário interagir diretamente com o código ao usar a IA para fazer testes.
Exemplos de objetivos de alto nível oferecidos por meio do scripting visual incluem movimentar, defender, atacar, interagir, agir, seguir, procurar e destruir. Enfim, o cérebro da IA produz os "botões" certos – atirar, mover para os lados, inclinar, girar, pular e assim por diante – para pressionar a cada quadro. Imagine um robô jogando com um controle nas mãos, apertando botões físicos, mas em um nível conceitual. Quando isso é ligado à engine do jogo, a ferramenta se torna extremamente versátil e pode ser aplicada a quase qualquer jogo.
Os soldados clones da IA estão defendendo seu território em Felucia, evitando o inimigo, usando cobertura e patrulhando a área.
Como ferramenta de testes, o escopo é enorme. Ela é usada para testar clientes e servidores de jogos, encher servidores de testes de jogos, fazer verificações antes dos testes, verificar a estabilidade do modo co-op, testar recursos (como pilotar veículos), testar funcionalidades dos patches futuros e mais. Ela também é usada pelos designers de jogo para aplicar "força bruta" e aperfeiçoar as fases. Por exemplo, liberando a IA em um mapa multiplayer, ela encontrará locais onde jogadores de verdade poderiam ficar presos.
Embora tenha sido criada como uma ferramenta de testes para imitar o comportamento humano, havia um grande potencial não explorado. Então, por uma coincidência do destino, Manuel Llanes, Diretor de Design do Star Wars Battlefront II, conversou com Luca Fazari, Engenheiro de Inteligência Artificial da EA, e perguntou sobre seu trabalho. Luca tinha acabado de conhecer a nova ferramenta de testes e demonstrou os robôs em ação. Manuel viu que tudo funcionava no lado do servidor, com bom desempenho. Parecia promissor e as coisas foram se encaixando. A criação do protótipo foi iniciada e apresentada à equipe de desenvolvimento, causando muita empolgação.
Logo depois, Luca assumiu a tarefa de aprimorar o sistema de combate e navegação e de implementar comportamentos para transformá-lo em um recurso aplicável – com foco específico no Star Wars Battlefront II.
O funcionamento da nova IA do Star Wars Battlefront II
Assim que você inicia um jogo de Supremacia da Capital, Co-Op ou Ação Instantânea, os robôs começam imediatamente a avaliar o que farão a seguir. Isso continua durante todo o jogo, com a IA priorizando e selecionando ações com base em seu estado atual.
O Conde Dookan, controlado pela IA, usando sua habilidade única relâmpago, antes que os clones vençam.
É aqui que a lógica cria a mágica (para contar só um pouquinho de vantagem).
A tomada de decisões pela IA pode ser considerada como subcategorias trabalhando simultaneamente:
- Mira e visão. A unidade controlada pela IA faz uma verificação da linha de visão em um cone à sua frente. Nessa visão, o alvo mais próximo é atacado. Os alvos sob cobertura e que não estejam diretamente visíveis não são considerados. Cada robô rastreia as posições e marcas de tempo do alvo atual.
Examinando as últimas posições do alvo localizado, a IA estima onde ele estará daqui a alguns segundos, calcula o vetor de velocidade e multiplica os dois valores para prever a futura posição. É lá que o robô vai mirar. Obviamente, a precisão da IA é configurável e depende de quanto ruído de mira é adicionado à arma.
- Armas e distâncias de combate. As decisões de combate são baseadas na arma equipada pelo robô e no alcance dessa arma. Existe uma distância ideal de "parar e atirar" com cada uma das armas, definida um pouco antes do dano do projétil começar a se dissipar. É nesse ponto que a IA vai parar de se mover na direção do alvo, já que, primeiro, chegar mais perto não causará mais dano, e, segundo, isso tornaria a IA um alvo mais fácil. Cada arma também recebe um valor do tipo float, entre 0 e 1, para decidir em que ponto do alvo o robô vai mirar – 0 são os pés do alvo e 1 é a cabeça.
Além disso, o limite definido até onde os alvos serão rastreados pela IA é o fim da redução do dano multiplicado por um número ajustável, decidindo quando o alvo está perto o suficiente para ser perseguido.
- Manobras de combate e percepção. Como o robô enxerga um cone à sua frente, é possível se esgueirar por trás dele! Porém, assim que um robô leva um tiro, ele se volta na direção do jogador que causou o dano e o define como alvo prioritário.
Se o robô e o jogador (ou outro alvo) estiverem de frente um para o outro, o robô entrará em um estado em que tentará se afastar e desviar dos projéteis do alvo, enquanto ele mesmo dispara. O robô se moverá para a esquerda e direita (variando aleatoriamente cada vez que ele mudar de direção) e, de vez em quando, para frente e para trás – tudo dentro de certos limites de tempo configuráveis.
A cada mudança de direção, o robô também terá uma oportunidade de saltar ou fazer uma rolagem. Essa imprevisibilidade controlada, por assim dizer, ajuda a dar a impressão de um comportamento humano.
Essa é a primeira linha, mas há muitas outras lógicas para a IA acompanhar, como:
- Defender uma área
- Agachar-se e patrulhar ao defender uma área
- Navegar pelo mapa de forma realista, usando um conjunto limitado aleatório de posições intermediárias entre o ponto de partida e o de destino
- Procedimentos para sair de uma área na qual esteja presa (em que um dos passos é a IA pressionar todos os botões freneticamente para se soltar. Imagine isso!)
- Seguir objetivos, fazer formações ao redor do jogador e alcançar uma posição próxima do jogador seguido para patrulhar a área e protegê-la de inimigos.
Detalhes do Sistema de Combate de Heróis
Podemos dizer que há uma empolgação palpável quando você está no meio de um tiroteio intenso na Ação Instantânea ou no Co-Op, quando de repente um herói da IA aparece. A batalha se torna periférica e agora você está duelando contra o impiedoso General Grievous ou com o Escolhido em pessoa! São nessas ocasiões que os jogadores podem criar seus momentos épicos de Star Wars.
Há algumas coisas que fazemos no combate dos heróis da IA para aumentar esse envolvimento. O objetivo dos robôs heróis é recriar experiências dos filmes Star Wars , em que bloquear e estudar o inimigo é uma parte importante da luta.
Quando o herói da IA seleciona um inimigo como alvo a uma certa distância, há várias possibilidades de que o robô use uma de suas habilidades únicas (ataques específicos do personagem, melhorias ou poderes da Força). Quando o alvo se aproxima ainda mais, a verdadeira lógica de ataque e defesa começa.
O General Grievous, controlado pelo jogador, combatendo o Anakin Skywalker controlado pela IA, alternando entre defesa e ataque.
Se a IA é um herói que usa sabre de luz competindo com outro herói com sabre de luz, ela terá uma janela de tempo para defender e outra para atacar. Para tornar o robô herói mais imprevisível, esses espaços de tempo variam aletoriamente entre os valores mínimo e máximo configuráveis. A mesma lógica é aplicada à manobra de evasão com esquiva do herói.
Em outubro, os heróis da IA foram atualizados para serem ainda mais agressivos. Um novo comportamento, ativado quando o alvo da IA usa um blaster em vez de um sabre de luz, também foi criado. Nesse caso, o herói da IA vai defletir os disparos de blaster na direção do inimigo que atira, até um certo período variável de tempo. Quando o tempo acabar, o robô herói vai começar a atacar o oponente o mais rápido possível.
Descobrimos que essa última parte é tão empolgante quanto apavorante!
Jogador enfrentando o Yoda controlado pela IA, absorvendo disparos de Blaster para usá-lo contra o jogador.
Como os designers usam a nova IA para criar momentos inesquecíveis de Star Wars
A nova tecnologia de IA do Star Wars Battlefront II possui duas camadas. Uma é a camada tática e a outra é a camada estratégica. O que foi descrito acima pode ser classificado como a camada tática, a decisão escrita em código, momento a momento.
O que o designer de jogo precisa descobrir, por outro lado, é a camada estratégica. Isso controla como os robôs, preparados pelos programadores com todo o conhecimento tático, agirão em modos de jogo específicos. No Star Wars Battlefront II, Viktor Lundberg, Designer Técnico Sênior, cuida da implementação dos modos de jogo Co-Op e Ação Instantânea. Martin Kopparhed, Designer de Jogo Sênior, programa os robôs para jogar os modos de forma estratégica.
A IA Separatista atacando um posto de comando em Naboo na Ação Instantânea.
Usando o modo Co-Op como exemplo, isso significa definir regras sobre qual Posto de Comando a IA deve atacar (e quando), quantos robôs são enviados para defender um posto de comando sob ataque por outros jogadores humanos, quando e como os robôs defensores devem recuar quando um setor é perdido e mais.
Outra tarefa é gerar o navmesh, uma camada invisível aplicada ao local para ajudar a IA a navegar pelo ambiente. O navmesh fará o melhor possível para impedir que a IA caia do precipício ou tente atravessar portas fechadas.
O trabalho do designer também inclui criar as ondas de aparecimento de inimigos para gerar picos e vales de intensidade. É por isso que, às vezes, temos momentos muito intensos, com tiros de blaster voando pelo ar como se estivéssemos nas Guerras Clônicas, e depois há momentos em que temos tempo para respirar e nos reagrupar.
Há um sistema semelhante para os heróis da IA, decidindo quando e como eles poderão aparecer, iniciando períodos de maior desafio – como se fosse um minichefe!
Pegue as camadas tática e estratégica da IA, combine-as com visuais e áudio autênticos, uma gama de personagens e locais únicos e todas as outras facetas do nosso jogo e terá todos os ingredientes necessários para criar seus próprios momentos incríveis de Star Wars.
Assim como o jogo inteiro, nossa tecnologia de IA está em evolução constante. Mantenha-se atualizado acompanhando este espaço, as redes sociais da EA Star Wars e os fóruns.
Se quiser saber ainda mais sobre como o Star Wars Battlefront II foi feito, temos outros artigos que você pode ler:
Animando Anakin Skywalker
A Arte Conceitual do Star Wars Battlefront II
Mundo Livre e Além da Batalha
A Criação de Geonosis
Criando um Herói
A Criação da Caçada dos Ewoks
–Daniel Steinholtz (Siga o Daniel no Twitter @dsteinholtz)
Participe da discussão em nossos fóruns oficiais ou nas nossas redes sociais – siga a EA Star Wars no Twitter, no Facebook e no Instagram.
Além disso, inscreva-se hoje para receber novidades, atualizações, conteúdo dos bastidores, ofertas exclusivas e mais sobre o Star Wars Battlefront II (incluindo outras novidades, produtos, eventos e promoções da EA), por e-mail.