Eu não conheço nenhum desses blogs, mas como um RPG tático baseado em turnos é meu segundo gênero favorito logo após roguelikes, escreverei uma postagem para você. Pela minha experiência, não foi uma dificuldade de IA tática em um RPG ou RTS que muitas vezes me deixou de lado, mas o contrário: a miopia completa da AI e a ausência de decisões da equipe. Humano nunca vai jogar assim.
Naquela época, quando eu ainda via os JRPGs como um pináculo do design de jogos, uma vez tentei fazer um "TRPG japonês típico" com grande foco em combates táticos por turnos, como Final Fantasy Tactics. Como sempre, tornou-se apenas uma demonstração de tecnologia para busca de caminhos e IA, então vou compartilhar meus pensamentos sobre o assunto.
A maioria desses TRPGs não se incomoda muito com a IA. A diversão dos jogadores não vem de um desafio tático ou estratégico complexo, mas da agricultura em geral e do abuso da IA de uma maneira engraçada. Portanto, não importa muito que suas IAs façam coisas que nenhum humano jamais faria. Normalmente, é suficiente ter uma IA estúpida e equilibrá-la com o design do jogo, de forma que ele nunca precise ver mais de um movimento com antecedência e use apenas os melhores movimentos de curto prazo. Claro que nunca parece real, mas quem se importa? Parece errado, quero acreditar que é possível criar diversão com base em ações complexas de IA em vez de agricultura e rolo a vapor. Talvez desnecessário e demorado, mas possível.
Lembrando o Final Fantasy Tactics original e seu mod incondicional FFT 1.3, eu estabeleci os seguintes objetivos para a IA humana e divertida:
- A IA deve criar um desafio, mas um desafio divertido e não um desafio de "pesquisa completa humana". Esse divertido desafio deve ser esperado com frequência pelo jogador no contexto geral de uma missão atual. Geralmente é aí que os scripts entram em cena, criando uma IA de um truque.
- A IA deve ser inteligente, mas não profunda, o Minimax. Diferentes tipos de IA devem ter falhas diferentes, assim como diferentes personalidades humanas. É uma coisa rara de se encontrar em jogos, Advance Wars tinha personalidades com roteiro para generais, por exemplo, mas as unidades também podem tê-las.
- A IA deve evitar parecer burra quando não se destina. A estupidez obscena arruina completamente qualquer ilusão de inteligência, sempre vencendo estratégias também. E brechas criadas por scripts descuidados, essas são as piores.
Pensei em abordar o número 1 com comportamentos emergentes, o número 2 com personalidades diferentes e a escolha de estratégias "semi-aleatórias" semelhantes a humanos, o número 3, mantendo a codificação embutida no mínimo e um teste cuidadoso.
Então, quais são esses comportamentos sobre o que estou falando, é uma sequência de habilidades com scripts para usar? A melhor capacidade de uma lista ponderada? Não, o que eu tinha em mente era uma combinação de uma inteligência desejada , tipo de personalidade e um papel derivado das habilidades e armas atualmente disponíveis. Você pode descrever essa combinação como um "estúpido traficante de danos" ou "curador defensivo inteligente". Assim, as especializações de IA, como classes ou profissões, por exemplo, uma Archer AI que usa arco para disparar flechas com algum conjunto de habilidades de arqueiro genéricas predefinidas, como Take Aim ou Arrow Shower, tornam-se logicamente emergentes em vez de codificadas.
Basicamente, é importante detectar e operar nessas funções: negociante de danos, absorvedor de danos, desabilitador, skirmisher, curandeiro, buffer / debuffer, área de efeito; geralmente, um personagem desempenhará pelo menos dois desses papéis.
Para tirar sarro tático disso, queremos que os comportamentos manejem vários casos de maneira sólida:
Caso mais simples. Muitos duendes fracos emboscam nossos heróis. A ameaça percebida é óbvia, os goblins tentarão sobrecarregar o jogador, com cada goblin tendo uma personalidade estúpida de berserk com algumas habilidades corpo a corpo primitivas, a fraqueza percebida também é óbvia, como atrair os goblins a um único personagem blindado e resistente ao fogo e, em seguida, lançar uma série de tiros AoE baseadas em feitiços nessa direção geral. Encontre um absorvente de dano, encontre um AoE'er, especialize-o para o tipo de dano de AoE'er, envie o absorvente de dano para a massa de goblins, lance um feitiço de AoE danificado quando os goblins se agruparem.
Caso usual para testar interações simples da equipe. O jogador encontra um cavaleiro, um arqueiro, um mago e um clérigo. A ameaça percebida agora é mais complexa, várias interações se tornam disponíveis. Você já pode ver possíveis papéis e suas combinações. O clérigo irá polir e curar, o mago distribuirá coisas mágicas complexas, mas altamente prejudiciais, o cavaleiro atacará alguém ou defenderá um mago, o arqueiro ajudará o cavaleiro cortando aqueles que tentam fugir dele ou tornando sua estratégia de defesa mais completa, isso vai depender da escolha do cavaleiro. As personalidades dos inimigos podem ser decididas aleatoriamente, transformando o mesmo encontro em uma experiência única. O jogador terá que decidir qual é a melhor estratégia com as unidades que ele possui atualmente, e se a IA tentar fazer o mesmo no outro lado da tela, seria interessante.
Caso complexo para testar as interações da equipe e o planejamento estratégico. Há uma batalha em que você enfrenta uma gangue de quatro assassinos (negociante de dano cuidadoso e inteligente + skirmisher). Poucos em números, com aparência ameaçadora, a ameaça percebida reside em ataques hábeis e mortais, e a fraqueza percebida é que é fácil reduzir a força geral com apenas um único assassino morto. Então, naturalmente, eles são espertos, usam habilidades que funcionam bem entre si e podem focar os personagens mais perigosos dos jogadores de fogo; os gravemente feridos recuam, curam e se lustram para voltar à batalha. Obviamente, o jogador tentará destruir um deles primeiro, e os assassinos terão que suavizar essa estratégia fácil, para que seja menos dominante.
Caso difícil para muita estratégia. Existem vários esquadrões de inimigos, com cada líder de esquadrão decidindo os melhores movimentos táticos locais e, em seguida, uma melhor decisão estratégica global é selecionada para beneficiar todos os esquadrões.
Caso impossível. Adicione um general para decidir uma estratégia e peça aos líderes de esquadrão que a implementem da melhor maneira possível.
Já existem muitas cartas, e por muito tempo, a implementação foi uma bagunça e eu nunca superei um "caso difícil", mas mesmo assim essa abordagem de táticas divertidas parecia factível. Comecei com FSMs, mas tive que abandonar essa abordagem rapidamente, tornou-se uma bagunça emaranhada de estados e transições impossíveis de depurar. Depois de um tempo, decidi com personagens semi-autônomos baseados em percepção de habilidades, como no paradigma "senso-pensar-agir" com árvores de comportamento para possíveis ações individuais, uma estratégia global que afeta possíveis ações de equipe baseadas em possíveis ações individuais, também uma versão bastardizada de algo como previsão estatística N-Gram foi lançada.
Como isso funcionou? Surpreendentemente bem, a IA até leu minha mente várias vezes, mas eu me cansei e a abandonei, pois havia falhas convincentes mais do que suficientes:
- A maior falha era que, às vezes, toda a operação de IA era estranha e caótica, mesmo que eu punisse a mudança rápida de estratégias. Provavelmente, a lógica da estratégia ou as personalidades erradas eram culpadas, mas nunca descobri. Sim, a arquitetura de código era horrível.
- Ajustar o cenário desejado com uma seleção cuidadosa de habilidades e personalidades disponíveis é entediante.
- A marcação de capacidade para funções deve ser muito cuidadosa, ou alguns combos malucos apareceriam.
- O mesmo vale para a identificação de personalidade, mas, em vez de combos malucos, você vê rodízios cuidadosos polidos por ataques frontais.
- Era difícil decidir sobre um nível de "inteligência" para uma determinada habilidade.
- Algumas decisões aparentemente estúpidas que foram necessárias para um design de nível como "sustentar essa muralha do castelo, não importa o que" tivessem que ser implementadas de maneira tola.
- Planejar unidades para realizar um ataque baseado em tempo também foi um truque.
Eu acho que minha abordagem era medíocre, na melhor das hipóteses, se não totalmente ruim, e a IA era um buggy e um pé no saco para se desenvolver ainda mais, mas mesmo assim eu me diverti bastante jogando contra ela, quase como se estivesse brincando com um garoto distraído, que ainda é melhor que o Tactics Ogre :)