Important
Supports Terraria 1.4.5.6 (world file version 319)
🎉 New Features
- Add Debug menu with NBT overlay toggle
- Add NBT payload to undo/clipboard disk serialization
- Add unit tests for mod tile copy/paste and undo/redo NBT preservation
- Add mod test files
- Add tile/wall coating get/set methods to scripting API
- Add Calamity1 test fixtures and track .twld/.bak files with Git LFS
🐛 Bug Fixes
- Fix Calamity2 tile loading: support new dense .twld format #1075
- Fix mod tile/wall rendering: accurate colors, layer depth, Safe prefix #1075
- Fix pre-existing unit test failures
- Fix Tile struct copy bugs in TwldFile — mod tiles now apply correctly
- Fix mod NBT data loss in copy/undo, add missing mods warning
- Fix undo and clipboard serialization to preserve mod tile virtual IDs
- Fix redo duplicating chest entries and chest row button bindings
- Fix chest editor button bindings for selection vs row context (#2174)
- Fix 4 top crash bugs identified from App Insights telemetry
- Fix tModLoader .twld save: compression bloat and tag preservation
- Fix undo crash and delete crash from user reports
- Fix .twld save producing invalid NBT that tModLoader can't load
- Fix mod item stacks zeroed during save, causing pasted chest items to vanish
- Fix Item.Copy() zeroing StackSize for mod items (actual root cause)
- Fix Beta/Alpha update channel not showing pre-release updates
- Fix concurrent update checks fighting over Velopack lock file
- Fix clipboard flip scrambling sprites (struct regression)
✨ Enhancements
- Update dependency Xunit.SkippableFact to 1.5.61 (#2230) (#2230)
- Update dependency ReactiveUI.Avalonia to 11.4.12 (#2232) (#2232)
- Update dependency SkiaSharp to 3.119.2
- Update dotnet monorepo to 10.0.5 (#2233) (#2233)
- Update dependency coverlet.collector to 8.0.1 (#2239) (#2239)
📦 Other Changes
- TModLoader .twld support: NBT parser, tile/wall overlay, round-trip save #1075
- ModScraper: extract tile/wall colors from .tmod archives #1075
- World Explorer: add Vanilla/tModLoader toggle button #1075
- Convert .wld test files to LFS pointers
- Load mod tile/wall textures from .tmod archives at world load #1075
- Item editing
- Mod chest item editing: copy/paste, UI display, item textures #1075
- Mod item support for tile entity editors #1075
- Merge main into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge main into feature/modloader
- Merge main into feature/modloader
- Merge main into feature/modloader
- Merge main into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Mod world improvements: NBT overlay, entity editing, save fixes
- Move NBT tree buttons inline, add View NBT button on special tile editor
- Move NBT overlay to debug-only rendering
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Merge remote-tracking branch 'origin/main' into feature/modloader
- Sprite sheet editor, tiered tile config, pixel-based frame detection
- Merge remote-tracking branch 'origin/main' into feature/modloader
- ModDataSerializer v3 with cross-world ID mapping, NBT fixes, render fix
- Localize the sprite editor
- Localize the sprite editor
- New Crowdin translations by GitHub Action
- Shrink default main window size to 1600x900
- New Crowdin translations by GitHub Action
- Merge remote-tracking branch 'origin/l10n_crowdin' (#2236)
- Rebuild mod chest/entity items on save so edits are preserved
- New Crowdin translations by GitHub Action
- Merge remote-tracking branch 'origin/l10n_crowdin' (#2238)
👥 Contributors
- @BinaryConstruct (62 commits)
- @crowdin-bot (3 commits)
- @renovate[bot] (5 commits)