🇺🇸 English · 🇰🇷 한국어 · 🇯🇵 日本語 · 🇨🇳 中文 · 🇪🇸 Español · 🇮🇳 हिन्दी
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
- 🔮 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.
npm install
npm run dev # Express + Vite dev server → http://localhost:3080Production 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 |
| 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).
- 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.