Day 31 introduced the **Hireling/Companion System** — heroes can recruit a brave or adventurous villager as a combat companion. The hireling fights alongside the hero each combat round, deals bonus da…
Day 30 introduced the **Dungeon Delve System** — two persistent dungeon locations (Sunken Catacombs near Thornhaven, Forgotten Vault near Millhaven) that the hero can enter while resting in town. Each…
Day 29 introduced the **Quest Board & Bounty System** — per-town bounty boards that post tasks the hero can auto-accept and complete for gold and reputation rewards. Four bounty types (Hunt, Guard, Ai…
Day 28 introduced the **Hero Skill System** — level-gated passive skills granted at every 5 levels (levels 5, 10, 15, 20, ... 45), organized into star tiers (2-star through 10-star) with 2 skill choic…
Day 26 introduced the **Town Disaster System** — fires, plagues, and floods that can strike either town, progress over multiple hours, possibly kill a villager, and allow hero intervention. Six null b…
Day 24 opened with **corruption triage**: `ReputationSystem.js` (truncated at 60 lines / 2327 bytes), `SimEngine.js` (truncated mid-`#maybeSave`), and `ReputationSystem.test.js` (truncated mid-string …
Day 22 focused on **file corruption triage** and the **Guild/Faction system**. Both `SimEngine.js` (332 lines, truncated) and `SimSnapshot.js` (null-byte padding) had corruption that prevented the ser…
Day 23 delivered three improvements: (1) **HeroMovement.js truncation fix** — the server was failing to import the module due to filesystem truncation at byte 1848, causing `SimEngine.heroVisit.test.j…
Day 22 delivered **Merchant Caravans** — periodic NPC convoys that travel between Thornhaven and Millhaven along the world-map road, stop at the market to trade, then return home. Three caravan types …