Releases: loadsec/Terraria-Mod-Menu-PC
Release list
v2.0.0
🎨 Terraria Patcher v2.0.0 — Full UI Redesign + Independent Patching Bridge
This is a major release combining a complete visual overhaul of the entire interface with the migration away from electron-edge-js to a self-contained .NET 10 patching bridge — making the app lighter, more stable, and ready for future growth.
🖥️ UI Redesign (v2.0.0)
Every page has been rebuilt from the ground up with a unified design language inspired by terminal and developer tooling aesthetics.
- 🎨 New design system — Zinc + Emerald palette, JetBrains Mono typography, zero border-radius throughout
- 🏠 Redesigned Home page — hero section with live system stats, Quick Access panel, System Status, Build Info, and a step-by-step Recommended Workflow
- 📊 Contextual stat cards — accent colors reflect state: blue for informational, green for OK, amber for warnings
- 🌗 Three-mode theme switcher — Light / System / Dark, replacing the old toggle
- 🌐 Automatic language detection on first launch based on system locale
- 🧩 Consistent page headers and section layout across all pages (Patcher, Config, Plugins.ini Editor, Changelog, About, Dev Tools)
- 🔲 Unified badge style — all badges aligned to the active preset with no rounded corners
- 🔤 Full i18n coverage — all visible strings now go through the translation system in both English and Português Brasileiro
- 🛠️ Dev Tools page redesigned to match the rest of the app
⚙️ Independent Patching Bridge (v1.2.0 — v1.2.1)
- 🔌 Removed
electron-edge-js— replaced with a standalone .NET 10 C# subprocess communicating via stdin/stdout JSON-RPC, eliminating native module compilation requirements - 🧱 Self-contained bridge binary —
patcher-win.exe/patcher-linux/patcher-macbundled directly with the app, no extra runtime install needed beyond .NET 10 - 🐧 Fixed Linux/Steam Runtime plugin loading — plugin loader now resolves
Plugins,Plugins.ini, and helper DLLs from Terraria's base directory, avoiding failures when Linux/Steam starts the game with a different working directory - 🔧 FNA loader improvements — skips compilation when no active
.csplugins are present, allowing the game to start cleanly with an empty plugin list - 📦 Dependency updates — Electron 39, React 19, Vite 7, Tailwind 4, ESLint with React Hooks
📋 Platform Support
| Windows | Linux | macOS | |
|---|---|---|---|
| App | ✅ | ✅ | ✅ |
| IL Patching | ✅ | ✅ | ⏳ |
| Plugin System | ✅ | ✅ | ⏳ |
macOS patching support is still under development. The app runs on macOS but patching requires dedicated testing on real hardware. Contributions are welcome.
Full Changelog: v1.1.13...v2.0.0
v1.1.13
🚀 Terraria Patcher v1.1.13 — Windows + Linux Edge Runtime Compatibility
This release fixes patch startup compatibility across both Windows and Linux by applying a platform-specific electron-edge-js loading strategy.
✨ Highlights
- 🪟 Windows: keeps the isolated edge runtime path to prevent
edge_coreclrassertion crashes after installer updates. - 🐧 Linux: restores packaged
node_modulesedge loading to fixedge.initializeClrFunc is not a function. - 🧩 Cross-platform stability: keeps safer runtime fallback behavior and startup guardrails to reduce JS/native mismatch errors.
- 🏷️ Version bumped to 1.1.13 with changelog updates in both English and Portuguese.
Full Changelog: v1.1.12...v1.1.13
v1.1.12
🛠️ Terraria Patcher v1.1.12 — NSIS Update Stale File Fix
Fixes the edge_coreclr assertion crash on Windows after updating via NSIS installer by cleaning up stale native binaries left by previous versions.
✨ Highlights
- 🧹 Added startup cleanup that removes stale
build/Release/edge_coreclr.nodeleft by NSIS updates from previous versions, preventing edge.js from loading an incompatible old binary. - 🔧 Removed the
EDGE_NATIVEenvironment variable pre-setting before loading edge.js to avoid potential double CoreCLR initialization. - 🐧 Linux AppImage patching remains unaffected.
Full Changelog: v1.1.11...v1.1.12
v1.1.11
🛠️ Terraria Patcher v1.1.11 — CoreCLR Double Init Fix
Fixes the edge_coreclr assertion crash on Windows by preventing double CoreCLR initialization in packaged builds.
✨ Highlights
- 🔧 Removed the
EDGE_NATIVEenvironment variable pre-setting before loading edge.js, which could cause the native.nodemodule to be loaded under two different cache keys, triggering a doublecoreclr::bind()assertion crash. - 🧭 Edge.js now handles all native module resolution on its own — it already has built-in platform-aware logic that correctly finds the right binary for each platform.
- 🐧 Linux AppImage patching remains unaffected (edge.js finds
build/Release/on its own).
Full Changelog: v1.1.10...v1.1.11
v1.1.10
🛠️ Terraria Patcher v1.1.10 — Prebuilt Edge Native Fix
Fixes the Windows edge_coreclr assertion crash in release/update builds by using the correct prebuilt native module instead of the CI-compiled one.
✨ Highlights
- 🔧 Windows packaged builds now use the prebuilt
edge_coreclr.nodefromlib/native/instead of the CI-compiledbuild/Release/binary, fixing theg_coreclr == nullptrassertion crash. - 🏗️ CI release workflow now removes the CI-compiled edge native on Windows to prevent it from being packaged over the correct prebuilt.
- 📦 Updated
asarUnpackto include bothbuild/Release/andlib/native/paths, ensuring Linux (CI-compiled) and Windows (prebuilt) both work. - 🧭 Made edge native path resolution platform-aware: Windows/macOS use prebuilt from
lib/native/, Linux uses CI-compiled frombuild/Release/.
Full Changelog: v1.1.9...v1.1.10
v1.1.9
🛠️ Terraria Patcher v1.1.9 — Packaged Edge Path Fix
Fixes Windows patching by loading electron-edge-js from the correct app.asar.unpacked path and tightening the native runtime check.
✨ Highlights
- 🔄 Updated packaged edge entry/native paths to use
app.asar.unpacked/node_modules/electron-edge-js, preventing edge_coreclr assertions in release builds. - 🧭 Improved error messaging to point to the exact native path expected in packaged Windows builds.
Notes: Target Terraria 1.4.5.x. Requires .NET 10 runtime (Mono only needed for plugin support on Linux/macOS).
Full Changelog: v1.1.8...v1.1.9
v1.1.8
🚑 Terraria Patcher v1.1.8 — Windows Patch Assert Fix
Fixes the edge_coreclr assertion seen when patching from release builds on Windows.
✨ Highlights
- 🛠️ Removed the duplicate packaged copy of electron-edge-js that made edge_coreclr load from the wrong path in release builds.
- ✅ Workflow validation now checks the correct unpacked edge path in Windows bundles.
- 🔒 Windows patching now uses a single edge runtime copy, preventing the assertion failure.
Full Changelog: v1.1.7...v1.1.8
v1.1.7
🚀 Terraria Patcher v1.1.7 — UI Overflow + Release Artifact Guardrails
This release fixes long backup path overflow in the patch modal and strengthens Windows release artifact validation.
✨ Highlights
- Fixed patch modal layout overflow when backup paths are very long (paths now wrap correctly instead of breaking the dialog).
- Added release pipeline checks to ensure tag/version consistency before packaging.
- Added Windows packaged artifact validation to guarantee
patcher-edge-jsruntime files are present before publishing.
✅ Result
- Cleaner patch workflow UI with long file paths.
- Safer release artifacts from GitHub Releases.
- Lower risk of broken Windows builds being published.
Full Changelog: v1.1.6...v1.1.7
v1.1.6
🚀 Terraria Patcher v1.1.6 — Windows Edge Runtime Hardening
This release focuses on preventing Windows packaged builds from crashing due to electron-edge-js runtime/module mismatches after updates.
✨ Highlights
- Packaged builds now force-load
electron-edge-jsfromresources/patcher-edge-js. - Added defensive validation to ensure the loaded edge module exports
edge.funcbefore patch initialization. - Removed packaged fallback to bundled
node_modulesedge path to avoid JS/native mismatch crashes. - Improved error clarity when packaged edge resources are missing.
✅ Why this matters
- Reduces startup/assert crashes like
g_coreclr == nullptron Windows. - Makes patch initialization behavior more deterministic across upgrades.
- Improves reliability for users updating from previous versions.
Full Changelog: v1.1.5...v1.1.6
v1.1.5
🚀 Terraria Patcher v1.1.5 — Runtime Sync Guardrails
This release improves update reliability on both Windows and Linux by preventing stale runtime/plugin files from being reused after upgrades.
✨ Highlights
- Added version-aware runtime sync so managed patch files are refreshed after app updates.
- Added startup runtime maintenance for configured installs with plugin support enabled.
- Serialized runtime sync operations to avoid copy/cleanup race conditions during patch and sync actions.
- Added a dedicated runtime repair path for safe forced re-sync flows.
✅ Result
- More consistent behavior after updates.
- Fewer issues caused by old hidden/cached runtime files.
- Better stability across Steam/GOG patch flows on Windows and Linux.
Full Changelog: v1.1.4...v1.1.5