Changelog — Wonderland
1.0.5 — Ashlands Compatibility & Full Patch Rewrite
This release is a complete modernization of Wonderland’s internal patching system, ensuring full compatibility with Valheim’s Ashlands update and eliminating all Harmony ambiguity, IL crashes, and deprecated API usage.
🔧 Core Architecture
- Replaced all attribute-based Harmony patches with explicit runtime patching
- Eliminated all ambiguous overload matches using
PatchSpecificOverload and PatchAllOverloads
- Removed all reliance on internal fields removed in Ashlands (e.g.,
Player.m_tempItems)
- Ensured zero IL2CPP/HarmonyX errors during load
- Rebuilt subsystem patching order for deterministic initialization
- Updated all patches to match Ashlands API signatures (void-returning
CreateTombStone, updated stamina methods, etc.)
⚔️ Combat & Damage Tweaks
- Updated
HitData.ApplyArmor patch to match new void signature
- Added safe post-armor multiplier using
m_damage.Modify(mult)
- Updated
Character.ApplyDamage patch to apply stagger/backstab multipliers once
- Ensured no permanent mutation of HitData fields
- Fully overload-safe patching across all
ApplyDamage variants
🛡️ Equipment & Death Handling
- Fully rewrote
EquipmentTweaks for Ashlands:
- Removed obsolete
___m_tempItems usage
- Updated to new
Player.CreateTombStone() (void, no args)
- Implemented Golden Rule: never lose items
- Equipped items always stay on the player
- Unequipped items are safely moved into the tombstone
- Guaranteed item safety across all death scenarios
🌿 Sanctuary Zones
- Rewrote all patches without Harmony attributes
- Updated for Ashlands AI changes:
- Vision aggro blocking
- Hearing aggro blocking
- Updated stamina, damage, and skill-loss suppression logic
- Updated projectile deletion to avoid deprecated fields
- Ensured all patches target correct overloads
🏃 Stamina & Movement Tweaks
- Updated
Player.UpdateStats and Player.UseStamina patches to Ashlands signatures
- Removed attribute-based patching
- Ensured stamina multipliers apply cleanly and safely
- Overload-safe patching for all UpdateStats variants
🔥 Smelter, Furnace, Refinery, Production
- No functional changes, but all patches now load without warnings
- Deprecated Unity API warnings isolated for future cleanup
🛠️ Server & Automation
- Config auto-reload remains intact
- Updated patching to avoid deprecated Unity calls (warnings remain but are safe)
🧹 Internal Cleanup
- Removed all obsolete Harmony field injections
- Removed all deprecated API calls from patch logic
- Ensured all subsystems compile cleanly under Ashlands
- Rebuilt Plugin.cs with:
- Full explicit patch registration
- Clear subsystem grouping
- Safe error handling
- Deterministic load order
1.0.1 — Stability & Release Prep
- Fixed Harmony crash caused by iterator-based logger
- Replaced logger iterator with safe implementation
- Updated plugin version to 1.0.1
- Cleaned namespaces and ensured all subsystems compile
- Verified Ashlands compatibility across all subsystems
- Finalized Thunderstore packaging structure
- Added full documentation suite (README, FEATURES, CONFIGURATION, KNOWN-ISSUES, CREDITS)
- Prepared Wonderland for public release
1.0.0 — Initial Release
- Full Ashlands-compatible rewrite
- Modular subsystem architecture
- Combat overhaul (stamina, slowdown, bow draw)
- Equipment death-drop rules
- Food system multipliers + auto-eat
- Stamina & movement tuning
- Sailing speed multiplier
- Crafting chest scanning + UI enhancements
- Environment infinite fuel/production
- Smelter automation (ore + fuel)
- Spawn safety system
- Server config auto-reload
- Debug logging
- Complete documentation suite