Check what a plugin requires on the client before adding it to a crossplay server. Enabling crossplay provides a connection route between platforms; it does not install missing game code, models or interface changes on a player's device.
For a group with console players, a plugin that requires client installation is a blocker. A genuinely server-only plugin may be a candidate, but its current game-version support, dependencies and behavior with vanilla clients still need verification. Neither “all mods break crossplay” nor “server-side means guaranteed compatible” is a useful rule.
This guide helps evaluate a particular mod set for an existing dedicated server. Iron Gate does not provide official mod support on PC or consoles. Compatibility belongs to the exact game, loader, plugin and client combination you plan to run.
Start with the players and the required feature#
List each player's platform and storefront, then describe the change you actually need. “Make shared storage less tedious” is a goal; “install this twenty-plugin pack” is already a large implementation choice. A built-in world modifier may solve a difficulty or resource problem without adding a plugin dependency.
Keep the current world-modifier values before changing them. A preset can overwrite individual settings, and some choices affect achievement eligibility. Check the relevant Iron Gate guidance rather than trying changes on your only persistent world.
For each proposed plugin, complete this record from its maintainer's documentation:
| Question | Evidence to retain |
|---|---|
| Where must it run? | Client, dedicated server, or both |
| What does it require? | Loader, libraries and any other plugins |
| Which versions work together? | Game build, package release and compatibility notes |
| What happens to an unmodified client? | Explicit support, rejection, limited behavior or unknown |
| What persists? | Added objects, changed world data or character data |
Do not use the word “server” in the title, a download count or a category tag as the complete answer. Dependencies can impose client requirements even when the main plugin sounds like an administration tool.
Distinguish three types of changes#
A client-only change belongs on a player's PC and is not installed on the dedicated server merely to make it available to everyone. Console players do not gain that feature from your server.
A server-only change must work with the messages and assets the vanilla client already understands. The modding community maintains examples intended for unmodified clients, which shows why a universal ban on all plugins is too broad. Treat those lists as leads to the individual maintainer's requirements, not a certificate for today's game build.
A client-and-server change needs a compatible installation at both ends. New content and custom network behavior are reasons to check this particularly carefully. If it requires a client plugin, crossplay cannot supply it to a console.
Jötunn lets plugin authors declare different presence and version requirements. A mismatch may deliberately reject a connection. Conversely, an absent enforcement check does not establish that missing assets or behavior are harmless. Do not disable a version check to force players through an incompatibility.
Preserve a vanilla baseline and a recoverable mod profile#
Before installation, verify that the unmodified dedicated server accepts the actual platform mix through your intended crossplay route. Record the working game version, selected world, startup arguments and current connection details. A console failing on vanilla needs a connection or account investigation before a plugin investigation.
Stop the server cleanly and retain the complete save root, launcher and access configuration. Preserve character data separately before experimenting with a plugin that changes it. Current Valheim worlds can use a multi-part folder layout; do not reduce a backup to a legacy extension filter.
Use a separate test instance with its own data copy and ports. Protect the production directory from the test process. Keep package files and a list of exact versions plus configuration; a link called “latest” is insufficient to reproduce a working installation later.
On Linux, use the current Valheim-specific BepInEx pack instructions for starting its dedicated-server loader. Launching an ordinary script can bypass the loader even when its files are present. The pack and an arbitrary generic BepInEx archive are not interchangeable installation instructions.
Test one dependency set at a time#
Start with the required loader and libraries, then add one plugin and its documented dependencies. Check a fresh startup log: confirm the loader ran and the expected plugin loaded without a dependency or startup error. A historical BepInEx/LogOutput.log file is not evidence of the latest start; compare its time and contents with the run you are investigating.
Join first with a clean PC client if the plugin claims vanilla-client support, then with the real console platform. For a PC-only mod set, use the agreed client profile. Reaching the character-selection screen or seeing the server listed does not prove the gameplay feature works.
Exercise the specific feature, visit an existing build, and inspect relevant inventories or containers. Confirm a save, stop and restart, then repeat the check. Also test a normal player account: administrator access can hide a feature's permission problem. Keep a short result for each platform and package set rather than one blanket “mods work” note.
Diagnose the failure at the right layer#
| Observation | Next check |
|---|---|
| Plugin never appears in the current log | Loader startup, actual install directory and dependencies |
| Connection names a missing plugin or version | Server/client requirement and exact package versions |
| PC joins but console cannot | Required client code, then console-specific crossplay/account conditions |
| Both clean clients fail after a backend change | Current destination and stale recent-server entry |
| Join works but objects or feature behavior differ | Missing assets, unsupported vanilla client or configuration mismatch |
Retain the server and affected client logs from the same attempt, with private connection details removed before sharing. Change one layer at a time. Installing more packages to hide an unexplained error makes the next attempt harder to interpret.
Update the environment and restore the data together#
Review the game, loader, libraries and plugins as separate update components. Schedule a maintenance window and validate the intended combination on the copy before reopening the shared world. Keep the same client requirements available to players.
If recovery is needed, stop the failed instance and restore the known working environment with its matching pre-change data. Removing a content plugin and saving the only world without it is not a safe rollback strategy. For coordinating services on your own infrastructure, Nexardo offers a management workflow; compatibility decisions still depend on the plugin maintainers and your platform checks.
Sources#
- Iron Gate: Valheim 1.0 FAQ, mod support and world modifiers
- BepInExPack Valheim: maintainer installation and loader instructions
- Jötunn: network compatibility requirements
- Valheim Modding: vanilla-client-compatible mod categories and server troubleshooting
- Community Valheim Tools: world storage and mod environment




