skip to content
carldmitchell.com
← all projects

Leatherstocking Tales

A multiplayer survival and crafting game set in the 1750s Great Smoky Mountains, with an authoritative dedicated server, in Rust and Bevy.

details

status
in progress
group
games
stack
Rust, Bevy 0.19, bevy_replicon + renet (UDP), Rapier physics, WGSL
since
2026-06

readme

A survival and crafting game in the frontier world of James Fenimore Cooper's novels: the Great Smoky Mountains in the 1750s. I'm writing the design and directing the build; Claude Code agents write the code, milestone by milestone.

The design

The game design document covers:

  • A real timeline (1757 to 1761), mapped onto the game world. Seasonal world events draw on it: the supply convoy, the war road, the green corn festival, a siege, the fall trade, the council, the hungry time, smallpox.
  • The whole East Coast, hardest in the north, with soft gating, ocean travel, and ports that serve as markets and fast-travel points once you've reached them.
  • A natural economy built on thirteen principles taken from the economies players praise, and from Ultima Online's failure.
  • Story told the way Conan Exiles does it: the world's history runs on its own, and the player finds it and inserts themself.
  • Real roots. Every people, town, fort and place in the game is real and existed in 1757: Fort Loudoun, the trading post at Ninety Six, the Cherokee towns. The game invents only its characters, events, mysticism and mechanics. Each region's factions are fact-checked against sources, and claims not yet confirmed are marked to verify before anything is built on them.
  • History handled with care. The Native origin characters are Cherokee, and story characters are fictional but drawn from real people. One path is the road to Fort Mose: helping people escaping slavery reach Spanish Florida, with no reward but having done it.

The engine

  • Three crates. shared (protocol, terrain, plants, character physics) is kept headless and light. server owns every piece of game state at 64 Hz. client renders, predicts and sends intent.
  • Single player runs the real server on a background thread over loopback, so every feature goes through the same requests in both modes. A test runs it over real UDP.
  • The server keeps the calendar. Time and season replicate from it, and anything seasonal reads that date and never a clock of its own.
  • Packaging: one script builds a shareable single-player Linux release.

Building

Building is a hammer in the hand and its menu, with pieces a frontier settler would have built. I set the design by answering a 20-question questionnaire on how building should work, and the answers went into the design document before any of it was built.

  • Four sets: a log cabin (roofs, gables, stairs, a loft ladder, windows), fieldstone, a palisade that follows the slope with a gate that swings, and a camp set (a lean-to, a bark shelter, a hide tent).
  • Nothing floats. Every piece must connect back to the ground, and a foundation stands level on a slope on its own footing. When a piece breaks, what stood on it falls with it.
  • A home does something. A fieldstone hearth cooks and warms a room. A walled, furnished cabin rests you longer. A woodpile grows as it's stocked, and you can see into a corn crib.
  • Buildings claim the ground around them on a multiplayer server, and nothing can be built on a trail or in a town's clearing, so nobody can wall off a road.
  • Pieces have owners. The hammer takes your own pieces down for a refund, and pieces wear and can be mended.
  • The server owner sets the rules: costs, stability, piece limits, admins, and decay for abandoned buildings.

Each building milestone was reviewed by an independent critic agent, and its findings went in as their own commits. The test suite stands at 280 tests.

304 commits since June 2026. Systems that turn out to be generic move into the DevKit, and the game adopts them right away. The DevKit's cast of characters and their animations came back the same way.