Games · Devlog #02 · projeto pessoal

Coliseu IA

Quando o lutador pensa com um LLM

Um jogo de luta 2D em que você não joga: assiste a duas IAs se enfrentarem. Na Partida Rápida, quem decide é uma heurística local; no modo opcional com LLM, as decisões vêm de um modelo de linguagem, e a luta volta sozinha para a heurística se ele falhar.

Ilustração em pixel art: dois lutadores genéricos se enfrentam numa arena de coliseu à noite, com tochas e “VS” no céu; sobre um, o símbolo de uma engrenagem, sobre o outro, uma pequena rede de nós.
Ilustração em pixel art feita para este post. Não é uma captura do jogo.

Duas IAs entram

Duas IAs entram. Uma sai. Você só assiste. O Coliseu IA é um jogo de luta 2D em que você não aperta botão de golpe: você escolhe os lutadores e assiste a duas inteligências artificiais se enfrentarem.

Ele não resolve um problema de negócio. É uma vitrine. A ideia é mostrar, de um jeito visual e divertido, o que muda quando a decisão sai de uma heurística escrita à mão e passa a ser tomada por um modelo de linguagem. Em 30 segundos de luta, qualquer pessoa vê a diferença.

Três modos

Partida Rápida

As duas IAs decidem por uma heurística local. Não precisa de chave nem de serviço externo, então dá para mostrar em qualquer lugar, até offline.

Jogar Local com IA

O modo opcional com LLM: as ações dos lutadores passam a ser decididas por um modelo de linguagem (Gemini 2.5 Flash). Se o modelo não responder, a luta volta sozinha para a heurística.

Multiplayer online

Aparece no menu como “Em construção”. É um placeholder declarado, não uma função escondida.

Os dois primeiros modos estão completos. O terceiro está lá para deixar claro aonde o jogo quer chegar.

Como é uma luta

  • Dois lutadores, com tela de seleção de personagem.
  • Rounds de 30 segundos, até a vida de um zerar ou o tempo acabar.
  • Pausa com ESC, que congela tudo de verdade: a IA, o movimento, a colisão e o cronômetro.
  • Trilha e efeitos sonoros, com controle de volume.
  • Interface em português.

O LLM é upgrade, não requisito

A decisão de design de que eu mais gosto aqui é a degradação graciosa. O jogo inteiro funciona sem nenhum modelo de linguagem. O modo com LLM melhora a luta quando está disponível e some sem drama quando não está.

  1. A luta precisa da próxima ação de um lutador.
  2. Com o modo LLM ligado, quem escolhe a ação é o modelo de linguagem.
  3. Se o modelo não estiver configurado ou a chamada falhar, a heurística local assume na hora.
  4. A partida continua, agora decidida pela heurística.

E, como não há build, a demonstração fica fácil: é HTML, CSS e JavaScript puro, sem instalação.

Parente do Ecos de Aether

O Coliseu conversa com o Ecos de Aether, o devlog #01. São três jeitos de dar uma decisão a um personagem de jogo: no Ecos, os inimigos aprendem com Q-Learning; aqui, a mesma luta coloca lado a lado uma heurística e um LLM.

Heurísticaregras escritas à mão, sempre disponíveis.

LLMum modelo de linguagem escolhe a ação, quando está disponível.

Ficha técnica

Status
Jogo funcional, com dois modos completos. Multiplayer online em construção.
Plataforma
Navegador, sem instalação e sem build
Gráficos
HTML5 Canvas + GSAP
Código
JavaScript puro, sem package.json e sem bundler
IA
Heurística local; LLM opcional (Gemini 2.5 Flash)

Quer trocar ideia sobre IA em jogos, ou sobre como fazer fallback de LLM sem quebrar a experiência?

Me escreva