About ModDoctor
From ThunderstoreFinds which mod is breaking your game: traces errors to the mod behind them, silences log spam, flags updates, compares your mods with the server's and shows performance, with a server overview for admins.
Mod Doctor
Which mod is breaking my game? Mod Doctor answers that, in game, in plain words.
Big modpacks fail in confusing ways: a stack trace that only mentions InventoryGrid.UpdateGui, an error repeated 30,000 times, a patch that silently failed at startup, a friend who joins with an older version of one mod. Mod Doctor watches the game's errors, works out which mod caused each one, explains what it means and what to do, and keeps an eye on your mods and your server.
Versão em português abaixo.
Quick start
- Install it with your mod manager.
- Play. If a mod starts causing errors, a notice tells you which one.
- Press F7 for the full report.
Server owners: install it on the dedicated server too, to compare players' mods with the server's and see every player's problems from the Server tab.
What it does
Diagnose
- Traces every error to a mod, from its stack trace.
- Finds culprits hidden inside game methods. When an error surfaces in a patched vanilla method
(DMD<InventoryGrid::UpdateGui>, no mod in sight), it asks Harmony which mods patched that method. If one of them also failed to load part of itself, it is named as the likely culprit.
- Catches startup failures, including those of mods that loaded before Mod Doctor (recovered from
the start of LogOutput.log).
- Explains each problem: patch failed to apply, incompatible with this game version, error repeating
every frame, error in Valheim's own code, or harmless engine message.
- Flags updates on Thunderstore, highlighting the ones for mods that are causing problems.
Keep the log readable
- After 20 identical copies of an error, repeats are no longer written to
LogOutput.log; a one-line
"suppressed N more copies" summary is written every minute instead.
Compare with the server
- When you join, the server compares your installed mods with its own: missing, **different
version, or only yours** (normal for client-side mods such as UI, camera or clock).
- Also warns about a mod installed twice (e.g. a manual copy next to the mod manager's copy).
Measure
- FPS, 1% low FPS, worst frame, memory and garbage collections.
- World objects around you, grouped by type: thousands of one building piece or dropped items are
the usual cause of lag in big bases.
- The slowest mods to load.
- Mod Doctor's own cost, so you do not have to take its lightness on faith. In our testing it stays
around 0.01 ms per frame; performance numbers are only sampled while the window is open.
Server overview (admins)
- Server health (uptime, FPS, memory, objects, players online) and, for every player, their mod
differences and their problems, in game. Also written to BepInEx/ModDoctor/summary.txt.
The window (F7)
| Tab | What it shows | |---|---| | Problems | One card per mod, coloured by severity, with the error, where it happened, the mods involved, what to do and any update available | | Mods | Your mods vs the server's, mods installed twice, slowest mods to load | | Performance | FPS, memory, garbage collections, world objects around you, Mod Doctor's own cost | | Server | Admins on a dedicated server: server health and every player's differences and problems |
The window uses Valheim's own fonts and follows the game's language (English or Portuguese).
Examples
A problem, as written to report.txt:
== TeleportEverything 2.9.1 (OdinPlus-TeleportEverything) ==
- Incompatible with this game version (443x, ~85/s)
BadImageFormatException: Expected reference type but got type kind 17
Where: InventoryGrid.UpdateGui
Mods patching this method: TeleportEverything 2.9.1, Equipment and Quick Slots 3.1.3
Pinned on this mod because it is the only one of them that also failed to load part of itself.
The mod expects game code that no longer exists (built for an older Valheim). Update it; if
there is no update, remove it.
- Patch failed to apply (1x)
ArgumentException: Undefined target method for patch method ... GetTooltip_Patch::Postfix(...)
Where: TeleportEverything.Plugin.Awake
A player's mods compared with the server's, from the server's summary.txt:
##### Your mods vs the server's #####
== Mepzer (2026-09-29 15:16) ==
version Stonaar-ValheimBuildCamera: 1.10.0 / server 1.9.0
Files
| File | What | |---|---| | BepInEx/ModDoctor/report.txt | Your own report, rewritten whenever something changes | | BepInEx/ModDoctor/summary.txt | On a server: which mods are failing for which players, and whose mods differ from the server's | | BepInEx/ModDoctor/players/ | On a server: each player's latest problems (.tsv) and mod differences (.mods) |
Configuration (BepInEx/config/bub.moddoctor.cfg)
| Setting | Default | | |---|---|---| | General.Language | Auto | Auto (game language), English or Portuguese | | General.ToggleKey | F7 | Opens and closes the window | | General.ShowToast | true | Notice when a mod starts causing errors or your mods differ from the server's | | Log.SuppressRepeats | true | Stop identical errors flooding LogOutput.log | | Log.SuppressAfter | 20 | Copies written before suppressing | | Updates.CheckThunderstore | true | Look up newer versions on thunderstore.io | | Updates.CacheHours | 12 | How long a lookup is reused | | Server.SendReportsToServer | true | Send your findings and mod list to the server you play on | | Server.CollectClientReports | true | On a server: store players' reports and mod lists | | Server.ServerOnlyMods | ArgusMagnus-ServersideQoL*, Smootheim-*, MidnightMods-NetworkPerformanceSystem | On a server: mod folders players do not need (comma separated, * wildcard), never reported as missing |
The Server tab is shown to players listed in the server's adminlist.txt; the server checks it again before sending anything.
FAQ
Highlights
From source dataLoaders
Runs on BepInEx.
Footprint
Rated a light load on a server.
Last update
Its author last shipped an update 36d ago.
ModDoctor on Nxeon
From our catalogue- One-click install
- Supported on Nxeon Valheim servers, for BepInEx servers. We download it from Thunderstore, place it, and restart the server.
- Server type needed
- BepInEx
- Server load
- light
- Smallest plan we suggest
- Valheim — 4 GB (4 GB RAM). This follows our own load rating above, not a benchmark.
- Latest build
- 1.1.0, released 2026-09-29
Game versions by loader
| Loader | Game versions | Newest |
|---|---|---|
| BepInEx |
From 2 recorded builds of ModDoctor.
Recent builds
| Build | Released | Game versions | Loaders |
|---|---|---|---|
| 1.1.0 | 2026-09-29 | n/a | BepInEx |
| 1.0.1 | 2026-09-29 | n/a | BepInEx |
Dependencies
- Required: BepInExPack Valheim
Declared by the newest build that lists any. Required ones are installed with it on one-click installs.
Run ModDoctor on a Valheim server
Pick a server or deploy a new one above; it is installed in one click.
What kind of mod it is
From the catalogAdmin & protection
Permissions, moderation, anti-cheat and land protection for the people running the server.
Compatibility
- Game
- Valheim
- Loaders
- BepInEx
- Requires
- One-click install needs a BepInEx server.
Verified at the source
- ✓ThunderstoreOfficial listing, checked 2026-10-01Open ↗
- ✓AuthorHotdogKnights, as published on Thunderstore
- ✓LicenseNot published by the sourceFree




