Implementação de IA em Jogos - NPC com diálogos ricos e interações mais realistas.

1. Conceito do Jogo:

Mundo Aberto de Fantasia: Imagine um mundo de fantasia em que as cidades são habitadas por diferentes raças e criaturas, como elfos, anões, orcs e humanos. O jogador é um viajante que explora este mundo, completando missões e interagindo com os NPCs.

2. Interatividade NPC:

  • Diálogos Dinâmicos: Ao se aproximar de um NPC, o jogador pode iniciar uma conversa. Em vez de opções de diálogo pré-definidas, o jogador pode digitar ou falar sua própria pergunta ou declaração, e o NPC, alimentado pelo ChatGPT-4, responderá de forma dinâmica.

  • Memória Temporária: NPCs podem se lembrar de interações recentes durante a sessão de jogo. Por exemplo, se um jogador insulta um NPC, o NPC pode agir de forma hostil ou desconfiada em interações subsequentes.

3. Quests Dinâmicas:

  • Missões baseadas em Diálogo: Algumas missões são totalmente baseadas em diálogos e negociações. Por exemplo, um NPC pode ter um problema pessoal e o jogador deve aconselhá-lo, ou talvez haja uma disputa entre dois NPCs e o jogador deve mediar a conversa.

  • Informação e Rumores: NPCs podem fornecer informações ou rumores que podem levar a missões secundárias. Usando o ChatGPT-4, essas dicas podem ser variadas e menos previsíveis.

4. Personalidade e História de Fundo:

  • Cada NPC pode ser programado com um conjunto de características básicas (por exemplo, amigável, desconfiado, bravo) e um breve histórico. O ChatGPT-4 pode usar essas informações para moldar a maneira como o NPC responde e interage.

5. Integração Técnica:

  • Interface com o Jogo: O motor do jogo se comunicará com a API do ChatGPT-4, enviando perguntas dos jogadores e recebendo respostas para serem exibidas ou faladas pelo NPC.

  • Limitações e Salvaguardas: Deve-se considerar a implementação de salvaguardas para evitar interações inapropriadas ou que quebrem a imersão. Por exemplo, o NPC pode ser programado para não reconhecer declarações que estão fora do contexto do mundo do jogo.

6. Teste e Iteração:

  • Antes de lançar o jogo, é crucial testar extensivamente as interações dos NPCs. Isso pode revelar áreas onde o ChatGPT-4 pode responder de forma inesperada e permitir que os desenvolvedores ajustem as configurações ou implementem correções.

Alguem que desenvolve jogos, pra ajudar a criar?

Existe uma aplicação que chama character.ia que tem a possibilidade de criar diálogos com personagens criados com base em referências predefinidas, quando testei achei uma tecnologia empolgante porque também permite a interação por voz, não somente por texto. Apesar disso, ainda me pareceu uma tecnologia distante de conseguirmos implementar em um jogo na prática além de diálogos com NPCs menos importantes para a gameplay e andamento do jogo. Ainda não testei o GPT-4, mas o GPT-3.5 ainda se repete muito e entra facilmente em looping. Acho que ainda estamos distantes de conseguir criar quests dinâmicas, mas a possibilidade de utilizar os diálogos do GPT-4 para criar mais dinâmica em interações entre NPCs e jogadores me parece bem legal e eu estou querendo testar para ver como seria em um jogo, tenho receio de acabar sendo algo muito impessoal e genérico Mas como disse, ainda não tive a possibilidade de testar, alguém já teve alguma experiência nesse sentido e acha que atualmente já conseguimos "treinar" o chat com informações sobre o personagem para torná-lo menos genérico?

E uma outra questão, como seria para o caso de o NPC precisar de ocultar certas informações para o jogador, mas acabar falando após um tempo, em um diálogo de investigação, por exemplo? O GPT-4 consegue guardar essa informação na memória e só entregar no momento que se adequar a narrativa?

A ideia em si é muito legal, mas acho que ainda é difícil de conseguirmos criar isso de maneira independente... Talvez algum Triplo-A consiga implementar isso nos próximos 2 anos, acho que ainda depende muito de treinamento para o projeto em si, mas não conheço o suficiente de IA para dizer isso com mais certeza.

da pra vc montar toda a parte das apis e tudo mais sem precisar de fato ter um NPC num jogo, usando um simples textbox para capturar a entrada e exibir a saida.

Uma duvida, mas como seriam criadas as quests baseadas em dialogos e negociacoes com o NPC? Ja que ambas conversas seriam dinamicas com ChatGPT. Como o jogo/sistema vai saber quando uma quest deve ser criada?

  • desculpa nao usar o acento...
Para criar quests baseadas em diálogos com NPCs usando o ChatGPT, da pra usar: 1. **Palavras-chave**: Se você falar algo específico, tipo "dragão", o NPC pode começar uma missão sobre dragões. 2. **Humor do NPC**: Se o NPC estiver triste porque perdeu algo, e você conversar sobre isso, ele pode te pedir ajuda. 3. **Escolhas e Resultados**: Dependendo do papo com o NPC, diferentes coisas podem acontecer. Tipo, se você ajudar em uma briga, pode ganhar uma recompensa. 4. **Perguntas ao Jogador**: Depois de um bate-papo legal, o jogo pode perguntar se você quer ajudar o NPC com algum problema. 5. **O Jogo "Ouve" Você**: Se você sempre fala de magia, o jogo pode te oferecer mais missões sobre isso. Basicamente, é uma mistura de programação tradicional com a esperteza do ChatGPT para criar missões legais e dinâmicas. 😉