COUCH PUMPKIN GAMES|The Borderlands – Build Your Legacy
Marcher Houses — The Borderlands
ARMIES TAKE TO THE FIELD
25 May 2026 · The Architect
Patch Notes

Server-authoritative formations, real-time marches, and lazy-materialized arrivals land in the persistent world. The M leg of the Build → Recruit → March → Fight loop is now live.

Slice 29 closes the third phase of the army system: formation at a Castle, march dispatch toward a destination Charter, and lazy-materialized finalization on arrival. The full Build → Recruit → March → Fight loop now has its M leg in place.

Three new endpoints joined the API family. POST .../castles/{castleId}/armies/form pulls live garrison troops into a new Army, validated against the seeded TroopTypes catalog. GET .../armies returns the player's force readout, with status reflecting any march that has finalized lazily on read. POST .../armies/{armyId}/march issues a march toward a destination Charter and stamps DepartedAt + ArrivesAt timestamps on the row.

Progress evaluation follows the Slice 27 lazy-materialization invariant: ArrivesAt is only ever truth-checked on the next relevant service read. There is no background timer, no asynchronous DB poller. The only timestamps that drive lazy finalization in the system are ConstructionJob.CompletesAt and now Army.ArrivesAt — and that is the entire surface.

Slice 30 is next: asynchronous combat resolution. When a marching army arrives at a hostile Charter, the engine resolves a server-authoritative battle and writes the outcome back to both sides. That closes the loop opened by Slice 28.