github binary-knight/usurper-reborn v0.12
Alpha v0.12

latest releases: v0.65.7, v0.65.6, v0.65.5...
6 months ago

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]ext and [P]rev navigation
  • 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.log file

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

Don't miss a new usurper-reborn release

NewReleases is sending notifications on new releases.