MultiplayerFixes
Runtime patcher that adds NetworkServer.active checks to mods for multiplayer safety. Prevents desync without modifying original mod files.
| Last updated | 6 days ago |
| Total downloads | 17 |
| Total rating | 0 |
| Categories | |
| Dependency string | CertiFried-MultiplayerFixes-1.0.1 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
MultiplayerFixes
A runtime Harmony patcher that adds NetworkServer.active checks to popular Techtonica mods, preventing multiplayer desync issues.
What It Does
Many Techtonica mods modify game state (inventories, machine progress, etc.) without checking if the code is running on the host/server. In multiplayer, this causes desync - each player's game runs the same logic independently, leading to duplicate items, corrupted saves, and crashes.
MultiplayerFixes patches these mods at runtime using Harmony, ensuring only the host runs state-modifying code. The changes are synced to clients via Mirror networking automatically.
Key Features
- No modified DLLs - Original mod files remain untouched
- Legal to distribute - Just patches at runtime, doesn't redistribute code
- Automatic - Just install and play, no configuration needed
- Soft dependencies - Only patches mods that are installed
Mods Patched
| Mod | Methods Patched |
|---|---|
| VoidChests | FixedUpdate |
| CreativeChests | FixedUpdate |
| WormholeChests | GetWormholeInsteadOfInventory, UpdateChestMap |
| VirtualCores | AddVirtualCore |
| MorePlantmatter | AddMorePlantmatter |
| Blueprints | FixedUpdate |
| SmartInserters | ShouldGiveItems |
| caspersLoaders | FixedUpdate, BlockVisuals |
| CrusherCoreBoost | ResetAtStartOfFrame_Prefix, HandleEndOfFrame_Postfix |
| EMUBuilder | BuildMachine (all overloads) |
Installation
- Install with r2modman or manually place in
BepInEx/plugins/ - Ensure all players have the same mods installed
- Play multiplayer without desync!
Multiplayer Mod Guide
Everyone Must Install (Identical):
- MultiplayerFixes (this mod)
- EquinoxsModUtils
- EMUAdditions
- CasperEquinoxGUI
- caspersLoaders
- CreativeChests
- VoidChests
- WormholeChests
- CrusherCoreBoost
- CrusherPerformanceFix (same config)
- StackLimits (same config)
- BeltHub2x2 (same config)
- SmarterRail (same config)
- LongStackInserters (same config)
Host Only:
- EMUBuilder
- VirtualCores
- MorePlantmatter
- Blueprints
- SmartInserters
- Restock
- MachineHugging
- BiggerExplosives
Client-Side (Anyone):
- KnowEncumbrance
- UnityAudio
- FlightFixes
- ScanGrenade
- EquinoxsDebuggingTools
Avoid in Multiplayer:
- SmeltingEfficiency (modifies core recipes)
Technical Details
This mod uses Harmony to prefix target methods with a simple check:
if (!NetworkServer.active) return;
This ensures the method only runs on the host/server. Mirror networking handles syncing the results to clients.
Credits
- Created by CertiFried
- Original mods by their respective authors (Equinox, Casper, jrinker, etc.)
Source Code
Available at: https://github.com/xXDeath420Xx/CertiFried-EMU613-Mods