⛏️ Patch v0.1.6 — Offline Workers, Auto-Redeploy & Full Audit

This is our biggest stability patch yet — a complete codebase audit squashed 28 bugs, plus two highly requested features: persistent offline workers and auto-redeploy expeditions.

✨ New Features

  • 💤 Persistent Offline Workers — Your dwarves now produce at full rate while you’re away, not the old 15%. Toggle it on/off in Settings > Gameplay (“Full Offline Production”). Comes with relic support via the offline_efficiency relic stat
  • 🔄 Auto-Redeploy Expeditions — New checkbox in the Expedition panel. After collecting (auto or manual), the same tier + destination is immediately resent if you have enough workers and the destination is still unlocked
  • 🏗️ Room Reordering — Up/down arrows on room cards in the left panel let you arrange rooms however you like. Unlocks once you build the Engineering Hall
  • 📖 Converter Help Popup — The converter menu now has a ? button explaining how conversion works, efficiency bonuses, and batch mechanics
  • ⏱️ Trade Cooldown Timers — Caravan arrival countdown and mercenary cooldown now display directly in the Trade Post section headers so you always know when the next one’s coming
  • 👋 Enhanced Welcome Back Screen — The offline earnings popup now shows how many dwarves worked while you were away with a fun flavor line

🔒 Security & Stability (Audit Fixes)

  • 🔑 F9/F10 debug keys gated behind OS.is_debug_build() — no longer trigger raids in release builds
  • 🛡️ Blessing cave-in reduction clamped to 0.10 minimum — prevents negative HP cave-ins at high blessing levels
  • 🔒 Save import validation — imported saves now pass integrity check, migration, and field validation before loading
  • 🌐 CSV column fix for zh/ja/ko — commas inside number strings no longer corrupt achievement descriptions

🐛 Bug Fixes (24 more from audit)

  • 📊 Modifiers panel: wrong achievement key for Blueprints display — fixed
  • ⛏️ Offline calculator: removed Beast Den phantom multiplier, added ~10 missing production multipliers, fixed gem_polish mutation bug
  • 💎 add_mithril(-cost) no longer corrupts lifetime stats when combining runestones or rerolling quests
  • ♻️ Ascension now properly resets artifact_dps_mult and all auto-buy flags
  • 🌳 Skill tree respec refunds shadowsteel at 75% rate
  • 📈 Prestige preview now includes all active multipliers (was missing several)
  • 🏪 Trade panel and trade overlay mercenary values unified — no more mismatched numbers
  • 📦 MiniEventManager serialize/deserialize implemented — mini events no longer vanish on save/load
  • 🎯 EventManager minimum depth resets on prestige; events suppressed during active raids
  • 🏁 game_won flag now resets on prestige; timed events persist through save/load
  • 🖱️ Hold-click alt-tab exploit fixed — releasing focus stops mining immediately
  • 📜 Notification log clamped to viewport — can’t drag it off-screen anymore
  • ✨ Victory screen sparkles array trimmed — no unbounded particle growth
  • 🔊 SfxManager “purchase” sound mapped correctly (was pointing at nothing)
  • 🚀 Expedition panel parse error fixed — a type inference bug prevented the entire expedition panel from loading. This was why the expedition button appeared broken for some players
  • ⏱️ Expedition completion popup now auto-closes after 30 seconds with a visible countdown

🌐 Localization

  • 🗣️ 11 hint keys translated across all 9 languages
  • 🔑 Duplicate CSV key UI_HDR_WORKERS resolved
  • 💎 Runestone panel name display localized (removed hardcoded English .replace())
  • 📐 Large panels resized for 720p screens (automation, modifiers, expedition)
  • 🌐 Hardcoded English strings in raid warning, runestone, quest, and automation panels replaced with tr() calls
  • ➕ 40+ new translation keys added across all supported languages

🎨 UI Polish

  • 🤖 Automation panel labels corrected — “Hire Dwarf Miner”, “Hire Dwarf Worker”, “Upgrade Pickaxe”, “Upgrade Expertise” now match their actual functions
  • 🔍 “Check It Out” hint button removed — the bottom-center notification toast no longer has an extra button; the feature unlock popup handles discovery
  • 🌳 Skill tree Tier 4 tooltip now shows Shadowsteel cost; help popup explains 75% respec refund
  • 🎵 Music player widget layout improvements
  • 💎 Gem panel and overlay display fixes
  • 🏠 Station popup improvements

Your dwarves never sleep. Neither do we. ⛏️