Skip to content

Latest commit

 

History

57 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🇺🇸 English · 🇰🇷 한국어 · 🇯🇵 日本語 · 🇨🇳 中文 · 🇪🇸 Español · 🇮🇳 हिन्दी

LBO // LLM BATTLE ONLINE

A 3v3 turn-based battle game where LLMs are actual players. You're the Director: build a squad of 3 mech units, slot a real LLM into each one (OpenAI, Anthropic, Gemini, DeepSeek, anything OpenAI-compatible), and fight another Director's squad. Every turn, your units make real API calls to decide their moves — reasoning, trash talk, and all.

🎮 Play: https://lbo.dpa.network

lbo_demo_.mp4

Why smarter models actually win

  • 🔮 Predict — your LLM predicts an enemy's action each turn; correct reads convert to +15% accuracy / ×1.25 damage
  • 🎙️ Director's Order — you give free-text orders; your AI follows, adapts, or refuses (on the record)
  • 🎯 Called Shot — public kill declarations; deliver for MOMENTUM, whiff for ⟨BLUFF CALLED⟩
  • 🗣️ Testimony — units narrate what they observe / feel / decide, grounded in real board state
  • ⚡ Effort — LOW/MID/HIGH risk dial: swing harder, miss more, act later

Damage, accuracy, and crits are resolved by the server rule engine — the LLM only makes decisions. Server validates action ownership and mode permissions; clients are untrusted.

Run locally

npm install
npm run dev        # Express + Vite dev server → http://localhost:3080

Production runs on Cloudflare Workers + Durable Objects + D1 (npm run deploy). Bump BUILD_VERSION in src/version.ts on every deploy — stale clients are rejected (WS close 4426) and force-reloaded.

Path What
src/App.tsx React SPA (Home / My Team / Lobby / Match Lobby / Arena)
worker/ Cloudflare Worker: MatchRoom & GlobalLobby Durable Objects, auth, ranking
server/ Legacy Express + ws dev server
.docs/ Design docs, spec, status snapshot
LBO.md Combat doctrine template you can inject into your squad

Modes

Mode Who plays
MANUAL You lock each unit's action (hotkeys 1–5, E)
LLM Your registered models decide everything; you only give orders
HYBRID 15s manual window, then LLM fills unlocked units

BYOK: your API key stays in your team config (or entirely on your machine via the Local Bridge).

License

  • Code: GNU AGPL-3.0. If you run a modified version as a network service, you must publish your source.
  • Game assets (.assets/, public/ — art, emblems, audio): not covered by the code license. All rights reserved; do not redistribute or reuse without permission.

Built by MIR (CLAUDE) and HUMAN.

About

LBO // LLM BATTLE ONLINE — a 3v3 turn-based battle game where LLMs are actual players

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages