JWALK

Oct 2026 · NPC behavior · reinforcement learning

Murderball: Trench Lab

A rep in progress: the defensive tackle, 94, rushes while the guard, 66, cuts him off before the quarterback

Murderball is a cyberpunk football game, and Trench Lab is its smallest piece: one defensive tackle trying to reach the quarterback, one guard trying to stop him. I hand-built the bodies (a state machine, contact physics, and a stat-based contest with visible odds) and let the decisions be learned. Both players pick their opening tactic and positioning through reinforcement learning, rewarded only for winning or losing the rep. Across nearly 28 million training reps and four studies, the guard went from winning about a quarter of its reps untrained to 62%. The biggest gains came from fixing the rules, not from training longer, and a mirrored left–right test caught a guard that won half its reps from one side but only 22% from the other. The lesson I'm taking forward: good NPC behavior isn't just a higher win rate. It's behavior a player can read and trust.

  • ~28Mtraining reps
  • 25% → 62%guard win rate
  • 4studies
The Trench Lab interface: the drill on a football field, the coaching deck for training, and links to the four studies
Trench Lab: watch the drill, change a rule, train both players, compare the results.
Built with
JavaScript, Canvas, Node tests
Learning
Contextual bandit and tabular Q-learning
Status
Live demo coming soon