Alpha v0.12
Usurper Reborn - Alpha v0.12.0
Debug Logging & Stability Update
This release focuses on improving debugging capabilities and system stability, making it easier to diagnose and fix issues reported by players.
New Features
Comprehensive Debug Logging System
A brand new DebugLogger system has been added to track game events for post-mortem debugging. When players report issues, they can now share their logs/debug.log file for diagnosis.
Features:
- Automatic log rotation (5MB max, 3 backups)
- Session tracking with unique IDs
- Timestamped entries with severity levels (Debug, Info, Warning, Error)
- 60+ specialized logging methods covering all game systems
Logged Events Include:
- Save/Load - Player data, NPC states, system restoration
- Combat - Battle starts, damage, deaths, victories, fleeing
- Location - Dungeon floor changes, location transitions
- NPCs - Deaths, respawns, AI decisions, movements
- Romance - Relationship changes, marriages, divorces
- Castle - Throne challenges, king actions, court events
- Quests - Quest starts, completions, achievements
- World - Daily resets, world events, economy changes
- Grief - Grief stages, companion death effects
Crystal Ball Pagination
The Level Master's crystal ball scrying feature now supports pagination:
- 15 NPCs displayed per page
[N]extand[P]revnavigation- Direct number selection (1-69)
- Shows total soul count with page indicators
Version Display on Splash Screen
The game version is now displayed on the animated splash screen in bright green, making it easy to identify which version you're running.
Bug Fixes
NPC Respawn Queue Persistence (Critical)
Fixed: When switching between saves (e.g., playing as "Rage" then loading "Bob"), NPCs from the previous character's respawn queue would cause "Could not find NPC to respawn" warnings.
Root Cause: The respawn queue wasn't cleared when loading a different save, causing the system to look for NPCs that don't exist in the new save's world.
Solution: The respawn queue is now automatically cleared at the start of ProcessDeadNPCsOnLoad().
Dungeon Ally Management Improvements
- Entry fee handling improved: Players can always enter the dungeon - unaffordable allies simply stay behind instead of blocking entry entirely
- Party cap enforcement: Party size is now properly capped at 4. If saved allies exceed this limit, excess allies are gracefully skipped with a notification
- Fee-based ally filtering: When player can't afford all ally fees, the system now intelligently keeps affordable allies and leaves expensive ones behind
Files Changed
| Category | Files Modified |
|---|---|
| New Systems | DebugLogger.cs (630 lines) |
| Core Systems | WorldSimulator.cs, SaveSystem.cs, GameEngine.cs, DailySystemManager.cs |
| Locations | DungeonLocation.cs, LevelMasterLocation.cs |
| UI | SplashScreen.cs |
| Config | GameConfig.cs |
| Documentation | BUG_REPORT.md (new), CLAUDE.md, README.md |
Total: 39 files changed, ~5,000 lines added
Technical Details
Debug Log Location
Logs are stored in: <game_directory>/logs/debug.log
Log Format
[HH:mm:ss.fff] [LEVEL] [CATEGORY] Message
Example:
[16:48:18.801] [WRN] [DEATH] Player 'Rage' died on floor 40 - Cause: Wyvern
[16:48:46.423] [INF] [NPC] RESPAWNED: Zen Master Lotus (HP restored to 160, MaxHP=160, IsDead=False)
[17:01:43.779] [INF] [LEVEL] Bob leveled up: 31 -> 35
Upgrade Notes
- Save Compatibility: Fully compatible with v0.11 saves
- No action required: Debug logging is automatic and non-intrusive
- Log sharing: When reporting bugs, please include your
logs/debug.logfile
Thanks
Thank you to all alpha testers for your feedback and bug reports! The debug logging system was built specifically to help diagnose the issues you've reported.
Report bugs: https://discord.gg/EZhwgDT6Ta or GitHub Issues