[PR] Base speed = RimWorld 1x: 16m40s days, RimWorld per-day needs #87

Closed
agent-claude wants to merge 0 commits from claude/86-rimworld-base-speed into main
Collaborator

Fixes #86

Summary

johnw chose exactly RimWorld 1× as the fixed MMO base speed (see docs/RIMWORLD_PARITY.md §0).

  • Clock: DAY_TICKS = 10,000 at 10 Hz = 16 min 40 s per day, the same as RimWorld's 60,000 ticks at 60 Hz. Pawns already walk at about RimWorld's 1× speed.
  • Per-day rates from RimWorld: a new perTickShare(perDay, tick) spreads an integer per-day amount exactly over a day's ticks, with no drift.
    • Hunger 16,000 bp/day (1.6 nutrition); colonists seek food at 25%; meals 9,000 (0.9).
    • Rest −9,500/day awake; sleep 22,857/day in a bed (0→100% in 10.5 h); ground 0.8, cot 0.95.
    • Recreation −2.5%/h; leisure +36%/h × source.
    • Mood +12/h rising, −8/h falling.
  • World-paced systems (crops, spoilage, healing, illness, exposure, starvation, breaks) keep their per-day balance via TIME_SCALE = 50.
  • Storyteller: first small raid around day 5, then every 6–10 days (Cassandra averages ~8.5 major threats a year).
  • New colonies start at 08:00 so colonists work straight away instead of idling through the 06:00–08:00 recreation block, which is now 83 s.
  • Bug fix: "do until X" bills count output being crafted or carried, so several crafters no longer overshoot (this surfaced once colonists started work together).
  • Tests: sim-core testTimeout raised to 180 s for multi-day runs. Tests that assumed short days now use the new windows, or keep exposure-test colonists fed.

Verification

  • Full suite (148) and typecheck green.
  • 20-day headless run on a generated map: ~1.6 meals per colonist per day, ~7.4 h sleep a night, mood 58–69%, everyone alive. One 20-tile berry field is now tight for 3 colonists, which is RimWorld-correct: farm more.
  • Caveat: existing colonies keep their stored raid and incident cooldowns in raw ticks, so their next event comes sooner, once.

🤖 Generated with Claude Code

Fixes #86 ## Summary johnw chose exactly RimWorld 1× as the fixed MMO base speed (see `docs/RIMWORLD_PARITY.md` §0). - **Clock:** `DAY_TICKS` = 10,000 at 10 Hz = **16 min 40 s per day**, the same as RimWorld's 60,000 ticks at 60 Hz. Pawns already walk at about RimWorld's 1× speed. - **Per-day rates from RimWorld:** a new `perTickShare(perDay, tick)` spreads an integer per-day amount exactly over a day's ticks, with no drift. - Hunger 16,000 bp/day (1.6 nutrition); colonists seek food at 25%; meals 9,000 (0.9). - Rest −9,500/day awake; sleep 22,857/day in a bed (0→100% in 10.5 h); ground 0.8, cot 0.95. - Recreation −2.5%/h; leisure +36%/h × source. - Mood +12/h rising, −8/h falling. - **World-paced systems** (crops, spoilage, healing, illness, exposure, starvation, breaks) keep their per-day balance via `TIME_SCALE` = 50. - **Storyteller:** first small raid around day 5, then every 6–10 days (Cassandra averages ~8.5 major threats a year). - **New colonies start at 08:00** so colonists work straight away instead of idling through the 06:00–08:00 recreation block, which is now 83 s. - **Bug fix:** "do until X" bills count output being crafted or carried, so several crafters no longer overshoot (this surfaced once colonists started work together). - **Tests:** sim-core `testTimeout` raised to 180 s for multi-day runs. Tests that assumed short days now use the new windows, or keep exposure-test colonists fed. ## Verification - Full suite (148) and typecheck green. - 20-day headless run on a generated map: ~1.6 meals per colonist per day, ~7.4 h sleep a night, mood 58–69%, everyone alive. One 20-tile berry field is now tight for 3 colonists, which is RimWorld-correct: farm more. - Caveat: existing colonies keep their stored raid and incident cooldowns in raw ticks, so their next event comes sooner, once. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
DAY_TICKS 10,000 at 10 Hz (TIME_SCALE 50). Needs, rest, recreation and mood
speed are now per-day RimWorld values spread exactly over ticks with
perTickShare: hunger 1.6/day, rest -95%/day and 10.5 h bed sleep (ground
0.8, cot 0.95, bed 1.0), recreation 36%/h x source, mood +12/-8 per hour,
meals 0.9. Cassandra-style raids: first ~day 5, then every 6-10 days.
New colonies start at 08:00. Bills count in-progress and carried output.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Author
Collaborator

Merge approved by @johnw via Claude Code chat on 2026-10-20: "I said you decide. Your priority order looks okay proceed, all changes approved"

Merge approved by @johnw via Claude Code chat on 2026-10-20: "I said you decide. Your priority order looks okay proceed, all changes approved"
Collaborator

Merged into main in 66676b2 (branch was merged locally and pushed, so Forgejo didn't record it). Closing; future PRs are merged through the Forgejo API.

Merged into main in 66676b2 (branch was merged locally and pushed, so Forgejo didn't record it). Closing; future PRs are merged through the Forgejo API.
agent-gemini closed this pull request 2026-10-21 14:46:09 +02:00

Pull request closed

Sign in to join this conversation.
No description provided.