Qual é o nome do AI / algoritmo usado pela maioria dos MMOs para monstros ou monstros?

11

Existe um nome padrão para a IA (bastante idiota) que a maioria dos MMOs usa quando você 'agride' um monstro / multidão quando você está dentro de um determinado raio dele, e o monstro persegue seu personagem por um determinado período de tempo ou distância quando você tenta fugir?

Chris S
fonte

Respostas:

11

Acho que todo mundo está na bola com o nome "aggro", no entanto é provavelmente um comportamento emergente (efeitos colaterais de sistemas simples de regras, por exemplo, Boids ). Eu acho que provavelmente seria alcançado usando uma árvore de decisão ponderada. Para dar um exemplo de por que esse sistema teria resultados interessantes, considere isso:

    Start
      |
Player threat (based on player level, distance, DPS, etc.)
Very High  High   Low
|          |      |
Flee       Fight  Pass

Essa decisão seria executada para cada jogador e subgrupo mob (produto cartesiano) nas proximidades. A multidão inteira seguiria uma árvore de decisão como:

    Start
      |
Combined results
More flee  More fight                    All pass
|          |                             |
Flee       Attack own fight result;      Attack individuals
           otherwise, attack the player
           with most fight results.
  • A multidão vê um grupo de jogadores se aproximando; e começa a se mover em direção a eles para atacar (a ameaça é baixa porque a distância é alta). Quando eles se aproximam, a ameaça se torna excessiva e eles correm (ou seja, percebem que morderam mais do que conseguem mastigar).
  • Se o nível dos jogadores estiver baixo, diga que um jogador recebeu um item de nível muito alto e a multidão começa a atacá-los. De repente, um jogador produz DPS louco e a multidão foge.
  • Se um jogador é mais ameaçador, a maioria da multidão se concentrará nele (portanto, sua mecânica agro-clássica).
  • Uma equipe de jogadores assume um grupo que não deveria ser. A multidão se concentra em jogadores individuais para lhes dar uma chance de lutar; e se eles não puderem derrotar a multidão, alguns poderão se controlar.

O ponto aqui é que um sistema muito elegante, mas previsível, foi construído usando duas árvores de decisão muito simples.

nota lateral : Alguns dos resultados exigidos significam que a reavaliação não deve ocorrer por um prazo específico (por exemplo, Flee deve ser aplicado como um debuff 'Scared' dos anos 20); caso contrário, você obteria resultados muito estranhos (por exemplo, feedback infinito de ataques de fuga).

Jonathan Dickinson
fonte
4

Guild Wars apenas chama de " Aggro ", ou pelo menos é assim que a principal variável do algoritmo é chamada, suponho.

Eu também encontrei uma abordagem interessante, na forma de um post no blog: " Coma AI ". Eu gosto de como o autor relaciona a complexidade da IA ​​aos níveis de coma. Então, por essa definição, poderia ser chamado de "nível 4 de coma":

O nível 4 (confuso e agitado) é o padrão AGGRO AI. Você encontrou alguma criatura em Final Fantasy? Irá atacá-lo, não importa quem você é. Até jogos com IA avançada como Fallout 3 os possuem. Vagando pelas Terras Desertas, Pessoas e Animais vão me atacar sem motivo aparente. Não há como você convencê-los disso. Lembro-me do artigo épico “Quero curar os lobos”. Escapista.

Mas isso obviamente não é exatamente o que você está procurando.

Infelizmente, nunca ouvi falar em nenhum nome oficial para ele, mas não sou especialista em IA de forma alguma. Tudo o que sei é que geralmente o vejo soletrado "aggro", que é obviamente a abreviação de "agressivo", que tem dois g's, e não um como você soletrou.

Ricket
fonte
Você está certo, eu tenho erros ortográficos por osmose: lê-os incorretamente nos canais de bate-papo com tanta frequência (um pouco como a palavra imba) que comecei a usar essa versão. Uma das partes mais estúpidas da IA, como você mencionou, é que você pode ter um nível 5000 e ultrapassar o nível 10 e ele atacará.
Chris S
Muitos jogos o referenciam como "Ameaça", o que pode ajudar na sua busca pelo algoritmo padrão (se houver algum).
Chris Ridenour
1
"Ódio" também é um termo vagamente padrão.
precisa saber é o seguinte
"você pode ser um nível 5000 e ultrapassar o nível 10 e ele atacará", isso não é verdade no WoW. O raio da ameaça diminui quanto maior o nível de diferença entre você e a multidão.
Adam Harte
@TandemAdam pelo que me lembro, você ainda pode montar sobre um monstro de nível 10 no WoW (e ser o nível mais alto) e a maioria irá atacar. Seria bom se ele correu com medo
Chris S
2

Além da modelagem "aggro" mencionada por Ricket, outro estado comum da IA ​​é o "leashing". Se um NPC ficar muito longe de seu ponto de reprodução, ele volta para lá e rapidamente se recupera. Isso é para evitar kite excessivo .

coderanger
fonte
1

Não tem nome verdadeiro. Não é nenhum tipo de algoritmo 'aceito'. É apenas barato e fácil de implementar como uma máquina de estado trivial. Se o inimigo estiver ocioso e o jogador estiver próximo o suficiente, troque o inimigo para agressivo. Os MMOs continuam a usá-lo porque é fácil trabalhar com eles.

Kylotan
fonte
0

A IA nos MMOs é bastante ignorante. Você está lidando com um mundo em que você tem potencial para alcançar milhões de jogadores com habilidades variadas. Se a IA nos MMOs estivesse realmente presente, você veria criaturas constantemente atacando seus curandeiros, depois perseguindo os usuários de tecidos, etc. Mas não vemos isso. Vemos um sistema que fornece uma saúde mob x e uma classificação de ataque, dependendo do seu nível, e uma facção em que ele se enquadra (o que o faz atacar pessoas cuja facção é diferente). Eles são executados (às vezes) quando a saúde <y, e podem acionar mais multidões para ajudar se a condição x for atendida. O sistema pode fazer um teste de DX para ver se o ataque / feitiço bate ou não, e vai a partir daí. Se um jogador está atacando muito (aumentando a ameaça), as criaturas se voltam para ele. Portanto, este sistema é muito, muito básico. Não há como um jogador casual jogar um '

A partir daí, entramos em alguns encontros "avançados" que atraem a multidão do núcleo duro. Mas mesmo estes não são totalmente automatizados pela IA - são eventos com script. Quando uma guilda de alto nível leva uma semana e descobre como matar o King of Dreams, eles podem passar os detalhes do encontro para jogadores casuais.

Lembro-me no EverQuest que você poderia iniciar uma conversa com os NPCs e desencadear ações diferentes dizendo certas coisas! Alguma IA linguística.

David McGraw
fonte
0

A primeira versão disso que eu já vi foi no antigo jogo roguelike Moria. Cada espécie de monstro tem um parâmetro aaf, que significa área de afetação. Se você está fora do aaf do monstro, ele não se move.

cinzento
fonte