Building a Jesus-Era MMO With Two AI Agents and One Notion Page
ROMAN_MMO production notes · Matt Hall · October 14, 2026
Summary
ROMAN_MMO is a multiplayer game set in Jesus-era Judaea, built by two AI agents working in a fixed daily loop. Claude designs and writes one dated work order each evening. Codex builds overnight against Unity, Blender, World Creator, Tripo and Magnific, then reports results back to the same Notion workspace. Matt reviews once a week. In the first three days of Week 3 (October 12 to 14), that loop produced a walkable town of 9 homes, 2 courtyards and 8 residents on daily routines, shipped the r63 playable build, and retired 101.93 GB of superseded builds. Final art is still rated Partial by the project's own evidence gates.

Build r63, compiled 04:38 CT on October 14: courtyard, softened white cloth and matte clay jars with continuous handles.
The game
The current playable zone is Olivet, a farm settlement on the Mount of Olives with a westward view toward Jerusalem. The design target is a polished, multiplayer (not necessarily massive) game that still runs on low-end GPUs. Matt's RTX 5080 PC is the first test machine; friends will test on other hardware later.
Current milestone: Phase 1, "Beautiful Olivet," Milestone M1. Three of nine M1 criteria are met (Town, Camera, Performance). Ground cover, NPCs and animals, grounding, light, vista and team acceptance remain open.
Architecture: one page runs the project
Every instruction Codex acts on comes from a single Notion page, DAILY INSTRUCTIONS. Other pages in the ROMAN_MMO workspace (Lead Design Bible, Master Project Plan and WBS, TOOLS USED, Technical Evidence Archive) are reference material. Results flow back into Notion, where Claude reads them before writing the next order.
Purple: AI agents. Amber: credit spend frozen in the October 14 order. Gray: human, hub and local tools.
The daily cycle
The loop runs on a fixed schedule. A scheduled Codex automation starts at 00:30 CT and wakes hourly from 01:30 to 05:30, re-reading DAILY INSTRUCTIONS each time so it never works from a stale order. Each checkpoint must end with a freshly compiled build behind one desktop shortcut, "ROMAN_MMO Latest," running on copied saves so live saves are never touched.
Standing orders (Matt, October 11 and 13)
Make Olivet visibly beautiful: dense ground cover, layered horizon views and a real town with NPCs. Every night must change what Matt sees on launch.
Ship a new playable build at every checkpoint.
Clean up old builds: keep only accepted PLAY, ROMAN_MMO Latest and one rollback, with a receipt of deleted paths written first.
Every build can be quit from inside the game via an Escape menu.
Evidence gates
Each priority in a work order carries an explicit acceptance test, and the handoff reports Done, Partial or Blocked per WBS ID with evidence paths. The rules are strict about what counts: a passing numeric check does not certify final art, failed evidence is never converted into a pass, and neither agent may invent the other's review. On October 13 the order overruled "52 of 52 supports pass" because jars still looked suspended on screen; visual contact, not support numbers, now decides grounding.
The toolchain, and how each tool is actually reached
None of the creative tools below is wired as an MCP server in the project records. Codex drives local applications through scripts and uses existing authenticated sessions for hosted services.
The TOOLS USED inventory currently records 47 tools and providers, 240 references and 411 project utilities. The shared asset library holds 135 collections and 1,587 files.
Progress in pictures
Every image below is a capture from a compiled build recorded in the project's Technical Evidence Archive or Weekly Progress page.
October 12: from farmstead to town

Before: the October 11 scene replayed at a matching noon camera.

After, build r8: eight added dwellings, two connected courtyards, lanes and denser verges.
October 13: the road

Build r47 road view: clumped grass, 624 shrubs, three flower studies and 241 distant olive trees on World Creator hills.
October 14 overnight: houses and materials

Build r55: houses dressed with stone bases, plaster, timber lintels and stair, ladder and awning variants.

Jar comparison, r62 left and r63 right: two continuous handles replace 28 overlapping pieces per vessel.
By the numbers, Week 3 so far
Performance figures are emulated against the RTX 5080 target, not physical measurements. Other October 14 results: 145 repository tests passed; native rules and Need suites passed at 318, 518, 542 and 526 checks; jar renderer count fell from 319 to 33 with geometry, placement and collision preserved; measured in-game quit completes in under 0.4 seconds.
What is not done
Final art is Partial: repeated ground cover, geometric flower forms, faceted jar bodies, coarse clothing and masonry, distant vistas and dim night detail.
Natural gait, physical input feel, moving-character avoidance, animal replication and failed-network save retry are unverified.
Six of nine M1 criteria remain open.
Two Tripo assets (fodder bundle and goat pen gate) are waiting on a manual download by Matt.
There is no off-machine backup; Git has no remote.
Practices worth carrying into the blog post
One instruction source. Codex reads exactly one page for orders, which removes conflicting roadmaps.
Playable output every checkpoint. Progress is judged by launching a build, not by reading a report.
Honest status labels. Done, Partial and Blocked are tied to evidence, and numeric passes do not override what the screen shows.
Bounded spending. Credit use is limited to existing balances, with nightly orders able to freeze a provider entirely.
Weekly human review instead of daily approval. Since the October 13 delegation, routine work no longer waits on Matt.
Comments
Post a Comment