An in-game trainer and mod menu for Valheim, built on BepInEx and HarmonyX.
Press Insert in-game. Eleven tabs. Everything reversible.
English · Русский
Website · Features · Installation · Usage · Configuration · Building · Architecture · FAQ
Fair play notice. MjolnirMenu is intended for single-player worlds and servers you own or have explicit permission to mod. It contains no anti-detection, no server bypass, and nothing that hides it from other players. Don't bring it to public servers.
| Toggle | Effect |
|---|---|
| God mode | No damage of any kind (Player.SetGodMode + Character.Damage guard) |
| Ghost mode | Enemies ignore you |
| Infinite stamina / eitr | Pools never drain; bars stay full |
| Infinite stamina while crouched | Crouch-only variant; overridden by the global toggle |
| No fall damage | Fall hits are dropped before they apply |
| Infinite carry weight | GetMaxCarryWeight → 100 000 |
| Extra inventory rows | Up to +5 rows through the game's own SetInventorySize; native panel, survives relog; shrinking packs items into free slots and drops the rest at your feet |
| Multi-equip armor | Equip several helmets / chests / legs / capes at once; extras add armor and equip effects, the model shows only the slot item |
| Fly | Vanilla debug fly, no console required |
| Speed / jump / crouch hacks | ×1–10 multipliers on run, jog, jump force and crouch speed |
| Sit / stand animation speed | ×1–5 on the emote animator, including the stand-up transition |
| No hunger | Eaten food never runs out (Player.m_foods timers pinned), so its health and stamina stay full |
| No knockback / stagger | Character.Stagger and ApplyPushback skipped for you: hits, broken blocks and parries never push or stun |
| Heal + refill | Instant full health, stamina and eitr |
| Rested now | Rested buff as if you slept in a max-comfort base |
Water: swim speed hack (×1–10) · jump while swimming · use items while swimming · walk on water · walk on the seabed · underwater camera (removes the camera's water clamp so it follows you when you dive).
| Toggle | Effect |
|---|---|
| Infinite durability | Weapons, armor and tools never wear |
| Infinite items | Ammo, food, mead, fuel, ore, animal feed and similar consumables are never removed from your inventory. Drag-and-drop, dropping and selling still behave normally |
| Infinite interaction | Interacting with a dropped item, bush, mushroom, pickable or beehive gives you a copy and leaves the source untouched. Walk-over pickup is disabled while this is on so nothing is double-collected |
| Damage multiplier | Separate ×1–50 sliders for melee, ranged, trees, stones / ores, player structures and world structures / destructibles |
| Attack speed hack | ×1–5 on attack animations — swings, draws and combos all finish faster |
| Ranged | Insta-focus (bow fully drawn instantly), insta-shot (full-draw shot on press; semi-auto or full-auto), insta-reload (crossbows), hitscan (straight line to the reticle, no drop or spread) |
Free build (no piece cost) · no placement delay · free crafting · instant crafting · big stations (×1–50 capacity for smelters, kilns, fires, beehives, sap collectors) · instant stations (smelters / kilns / windmills 1 item per second, fermenters 2 s, cooking 1 s and never burns) · instant growth (crops and saplings) · Repair all nearby (10–200 m radius) · lock time of day (slider, dawn / noon / dusk / night) · force any weather the game defines.
- Ship — every ship cheat applies only while you hold the helm, and is restored the moment you let go. Tailwind (the sail sees a private full-strength wind from where you look, full sail from any angle; the world's wind and waves are untouched) · Ship speed hack (×1–20; extra sail thrust applied at the centre of mass so it can't flip the hull, paddles scaled directly) · Responsive steering (×1–10 rudder speed and turning force) · Flip nearest ship upright button.
- Cart — Cart speed hack (cart mass → 1, no extra pull mass on the player, so it follows at full run speed) · Cart no-clip (
Rigidbody.excludeLayerson every cart body: rolls through everything butterrainandpiece) · Sticky hitch (unbreakable joint, never unhitches on its own) · Hitch from anywhere (cart swings into place behind you) · Carts ride ships (on by default: a loose cart on a deck is locked to it — kinematic, no hull contact, so it can't slow the ship; hitching releases it). - Hull immunity —
ImpactEffect.OnCollisionEnteris skipped whenever a ship or cart is on either side, and ships take no wave-slam (UpdateWaterForce) or capsize damage.
Every skill as a slider with 0 / 50 / 100 shortcuts, plus Max all, Reset all and Set all to N. Written straight into Skills.Skill.m_level, so it persists with the character.
- Forsaken powers — pick any boss power (Eikthyr, The Elder, Bonemass, Moder, Yagluth, The Queen, Fader) whether or not you've sacrificed the trophy. No cooldown and Power lasts forever toggles, plus Activate now.
- Status effect manager — list of everything currently on you with remaining time; extend (+60 s / +10 min), freeze (timer pinned at zero) or remove each one. Searchable catalog of every
StatusEffectin the game with one-click Apply.
Searchable catalog of every item and creature. Items are filtered to those that belong in an inventory (icon + item type); Show all lifts the filter. Give items with stack and quality; spawn creatures at any level (past the vanilla 10; loot keeps scaling — vanilla doubling up to level 10, then linear, dropped as full stacks) with count and tamed — tamed works on untameable creatures and bosses too, which makes them friendly. Morph into any creature (at the Level you set) and Morph back: you take control of a real, networked creature — everyone sees it, with its own model, animations, attacks, effects, sounds, health and hitboxes. Movement is camera-relative, the creature faces and aims where the camera looks; flying creatures take off / climb with jump and descend / land with crouch; sleeping bosses are woken up first, attack uses the selected creature attack and secondary attack picks the next one (panel above the hotbar shows health and attacks). Your own body waits hidden and invulnerable under the ground. Without Spoof morph the creature carries your name; with it, others see an ordinary wild creature. Kill everything within a radius.
Instant menu teleports (no fade, no vortex) · fast portals (×1–40 on the vortex timer) · portals accept any item · Ctrl + left-click the map to teleport · start temple / bed / last death point · every boss altar up to Kall Fimbulbringer (host / single-player; clients see altars revealed by a Vegvisir) · pin every dungeon, trader, village and boss altar at once (Reveal POIs, host / single-player) · reveal the whole map, then restore the fog later (also removes the POI pins, keeps your own and Vegvisir ones) — what you explored yourself stays explored, including what you walked through while the map was revealed (snapshot per character + world in BepInEx/config/MjolnirMenu.fog/) · named saved positions · teleport to other players who share their location.
Labels for players, creatures / bosses (name, level, HP) and resources (pickables, ore, trees) with distance and optional tracer lines. Range and label cap are configurable.
- Presets — save the whole menu state under a name, load it later, delete it, or mark one as Auto-load to have it applied the moment you enter a world.
- Cheat tags — the game marks you as a cheater the first time you deal damage in god / ghost / fly mode and stamps every drop afterwards with "obtained using cheats". MjolnirMenu reports the game's own
bypasscheatcheckskey instead (on by default) and can clear tags on items you already carry. - Character rename — main menu only (character select). Changes just the name stored in the profile: the save file name and player ID stay the same, so worlds, beds, wards, portals and tombstones keep working. Same rules as character creation (3–15 letters), confirm-twice, and a
.fch.mjolnir-rename.bakcopy is written before saving. - Hotkeys — rebind every key in the menu (click, press the new key; Ctrl / Shift / Alt combos work). Five extra quick-toggles ship unbound: ghost mode, speed hack, infinite stamina, ESP, map teleport.
- Language — English or Russian (Auto follows the game's language).
- Window — scale 75–150 %, opacity 40–100 %, remembers the last tab, watermark toggle, persistent defaults for multipliers.
Who made it and what it runs on.
Requirements: Valheim (Steam, Windows) and BepInExPack_Valheim.
- Install BepInEx into your Valheim folder. Either use the helper script (it asks before downloading) or extract the pack manually:
.\scripts\install-bepinex.ps1 - Launch Valheim once so BepInEx creates its folders, then quit.
- Drop
MjolnirMenu.dllinto<Valheim>\BepInEx\plugins\MjolnirMenu\— from a release or by building from source. - Start the game.
BepInEx\LogOutput.logshould containLoading [MjolnirMenu 0.9.0].
| Key | Action |
|---|---|
| Insert | Open / close the menu |
| F6 | Toggle god mode |
| F7 | Toggle fly |
| End | Panic: switch every cheat off |
While the menu is open the game's input gates (Player.TakeInput, PlayerController.TakeInput) report false and GameCamera.UpdateMouseCapture is skipped: keys and clicks reach the menu, not your character, and the cursor stays free. Every cheat is switched off automatically on logout so nothing leaks into the next world.
The in-game window uses the same design as the website — every texture is generated at runtime, so the plugin stays a single DLL.
BepInEx/config/com.mjolnir.menu.cfg — generated on first run.
| Section | Key | Default | Purpose |
|---|---|---|---|
| Hotkeys | MenuToggle GodToggle FlyToggle PanicReset |
Insert / F6 / F7 / End | Key bindings (also editable in the menu) |
| Hotkeys | GhostToggle SpeedToggle StaminaToggle EspToggle MapTeleportToggle |
unbound | Extra quick-toggles |
| UI | Language |
Auto |
Auto / English / Russian |
| UI | Scale / Opacity / LastTab |
1.0 / 1.0 / 0 | Window look, tab it reopens on |
| General | HideCheatTags |
true |
Report bypasscheatchecks so loot is never tagged |
| General | AutoLoadPreset |
(empty) | Preset applied when you enter a world |
| Player | SpeedMultiplier JumpMultiplier |
2.0 | Default multipliers |
| ESP | Range MaxEntities *Color |
150 m / 250 | ESP tuning |
| UI | ShowWatermark WindowX WindowY |
Window state |
Presets live in BepInEx/config/MjolnirMenu.presets/*.preset (plain Key=Value text, safe to share). Saved teleport positions are in BepInEx/config/MjolnirMenu.positions.txt.
Requirements: .NET SDK 8 or newer, Valheim installed.
# Only needed if Valheim isn't at D:\SteamLibrary\steamapps\common\Valheim
$env:VALHEIM_DIR = "C:\Program Files (x86)\Steam\steamapps\common\Valheim"
dotnet build src\MjolnirMenu -c Release- Game assemblies are referenced directly from
valheim_Data\Managed; nothing from the game is redistributed. - BepInEx and HarmonyX come from the BepInEx NuGet feed (
nuget.config), so the project compiles even before BepInEx is installed. - Krafs.Publicizer exposes the private
m_*fields the patches rely on — no reflection strings. - A successful build copies the DLL into
BepInEx\plugins\MjolnirMenuautomatically when that folder exists;scripts\deploy.ps1does the same explicitly. python scripts/check-translations.pychecks the menu's Russian table: every string has a translation and the{0}holes match.
src/MjolnirMenu/
├── Plugin.cs BepInEx entry point · Harmony.PatchAll · Update / OnGUI dispatch
├── Core/
│ ├── State.cs Every toggle and multiplier — the single source of truth
│ ├── MenuConfig.cs BepInEx ConfigEntry bindings
│ ├── Hotkeys.cs Rebindable keys and on-screen notifications
│ └── L.cs Menu language (English / Russian table)
├── Features/ Reconcile game state against State every frame; restore originals on toggle-off
│ ├── PlayerCheats.cs Survival, movement, water, camera, durability
│ ├── WorldCheats.cs Build, craft, time, weather
│ ├── SkillCheats.cs Skill levels
│ ├── Effects.cs Forsaken powers and the status-effect manager
│ ├── Spawner.cs Item / creature catalog and spawning
│ ├── Warp.cs Teleport, saved positions, boss altars
│ ├── MapFog.cs Reveal map / POIs and restore the fog from a snapshot
│ ├── Vehicles.cs Ships and carts
│ ├── Morph.cs Possessing a creature
│ ├── Rename.cs Safe character rename
│ ├── Esp.cs Overlay scanning and drawing
│ └── Presets.cs Save / load / auto-load of State
├── Patches/ Harmony patches, grouped by game type
│ ├── PlayerPatches.cs stamina · carry weight · speed · crafting · input gate · teleport speed · multi-equip · morph control & camera
│ ├── CharacterPatches.cs damage in/out · water jump · swim state · attack & emote speed
│ ├── DestructiblePatches.cs per-category damage for trees, rocks, pieces, destructibles
│ ├── ItemPatches.cs infinite items (scoped) · duplicate-on-interact
│ ├── VehiclePatches.cs tailwind · sail thrust · cart hitch · hull immunity
│ ├── MinimapPatches.cs map-click teleport · fog snapshot
│ ├── EnvManPatches.cs forced weather
│ └── GamePatches.cs reset on logout · instant growth · high-level loot
└── UI/
├── MenuWindow.cs Tabbed IMGUI window
├── Ui.cs Widgets (translated, auto-width)
└── Styles.cs Skin
Design rules
Stateis the only source of truth. Patches read it; they never hold state of their own.- Anything that writes a game field snapshots the original per
Playerinstance and reconciles every frame, so respawns, relogs and toggling off all land back on vanilla values. - Patches touch only the local player unless a feature is explicitly about the world.
- No reflection by name — Publicizer makes private members ordinary C#.
Does it work in multiplayer? Client-side effects (movement, ESP, menu) work anywhere. Damage multipliers are applied before the hit is sent to the target's owner, so they work too. Nothing here is hidden from a server or other players; see the notice at the top.
Items I picked up are tagged "obtained using cheats". That's the game's own flag, set the moment you damage something while god / ghost / fly is on. Settings → Cheat tags is on by default and stops new tags; use Clear tags on items in inventory for what you already carry.
A spawned item behaves strangely. The item catalog hides prefabs that aren't real inventory items (monster weapons, effects). If you turned on Show all, you're on your own.
Can I make the menu load with my preferred settings? Save a preset in Settings, then mark it Auto-load.
This repository was built with Claude Code, using two community add-ons: caveman for terse assistant output and graphify for a queryable knowledge graph of the codebase. The graph is generated locally (graphify .) and is not part of the repository.
Game method signatures were verified against assembly_valheim.dll with Mono.Cecil rather than guessed; the IL for every patched method was read before the patch was written.
MIT. Valheim © Iron Gate Studio / Coffee Stain Publishing. This project is not affiliated with either.