Please disclose if your mod was created primarily using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
ValheimPerformanceOverhaul
Fps mod for Valheim..
| Last updated | 2 weeks ago |
| Total downloads | 6288 |
| Total rating | 3 |
| Categories | Mods Tweaks Misc Tools Server-side Client-side Utility Ashlands Update Bog Witch Update AI Generated |
| Dependency string | Skarif-ValheimPerformanceOverhaul-3.0.0 |
| Dependants | 17 other packages depend on this package |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.
Preferred version: 5.4.2202README
Valheim Performance Overhaul
A comprehensive performance optimization mod focused on reducing CPU and GPU load - especially on large bases, busy servers, and zones with many light sources.
Installation
Install via r2modman or Thunderstore Mod Manager (recommended) - everything is placed automatically.
Manual install:
- Install BepInExPack Valheim first.
- Copy
ValheimPerformanceOverhaul.dllintoBepInEx/plugins/. - Launch the game - a config file is generated automatically at
BepInEx/config/com.Skarif.ValheimPerformanceOverhaul.cfg.
What it does
⚙️ In-Game Settings Menu (New in 3.0.0)
- A built-in configuration menu accessible directly from the Valheim Main Menu.
- You no longer need external configuration managers to tweak VPO settings!
🧱 Decor Batching (New in 3.0.0)
- Automatically combines meshes of decorative building pieces (Misc category) in a grid chunk to drastically reduce draw calls.
- Huge FPS boost on extremely detailed, decoration-heavy bases.
🌐 Network Optimizations (Crossplay Safe!) (Returned in 3.0.0)
- Steam Socket Uncap: Increases P2P data limits (solves desyncs on huge bases). Safely checks for Steam API and disables itself gracefully on Game Pass / Crossplay to prevent crashes.
- Adaptive Throttling: Intelligently drops ZDO sends to clients with high ping (>400ms) to prevent choking their connection.
- Smart ZDO Sorting: Prioritizes players, portals, and ships over AI during network sync.
- Smart Zone Ownership: Automatically transfers AI control to the player with the lowest ping in the zone.
🌫️ Smoke Physics Optimization & Memory Leak Fix
- Replaces complex vanilla smoke aerodynamics with a simple, lightweight approximation.
- Fixes a critical vanilla memory leak where smoke objects were never destroyed after fading, piling up invisibly and killing FPS.
AddForceandmasscalculations are heavily throttled for maximum CPU savings.
🔦 Light Culling & LOD
- Limits active light sources to a configurable maximum (default: 15).
- Disables shadow casting beyond a set distance.
- Light LOD system: transitions lights through Full → No Shadows → Emissive → Billboard → Disabled as distance increases.
🕯️ Light Flicker Optimization
- Fixes fire and torch light intensity at its base value, eliminating per-frame Shadow Map recalculation.
- Making the light static means shadows are computed once and reused until something moves. Huge GPU gain.
💤 Distance & Piece Culler
- Puts distant creatures and building pieces to "sleep" - pauses their Update logic.
- Piece Sleep Manager: Puts static building pieces (
WearNTear) to sleep after 2 frames of inactivity. - Asynchronous WearNTear initialization - spreads load over multiple frames on scene load.
WearNTear.GetSupport()results are cached with a configurable TTL.
🤖 AI Throttling
- Monsters beyond 60 m update AI only every 5 seconds instead of every frame.
- LOS (line-of-sight) checks are cached per-target with a 0.5 s timeout.
- Idle tamed animals inside player bases enter a low-power mode.
🛠️ Engine Quality Settings
- Forces low-level Unity
QualitySettingstweaks at startup:- Soft Particles disabled - eliminates per-pixel Depth Buffer reads for particle edges.
- Soft Vegetation disabled.
- Particle Raycast Budget reduced (default: 1024, vanilla: 4096).
🌿 Vegetation & Graphics
- Grass render distance and density control.
- Configurable shadow distance, resolution, and cascade count.
- Bloom and screen-space reflections toggle.
🎵 Audio & ♻️ Object Pooling
- Reuses
AudioSourceandItemDrop/ProjectileGameObjects to reduce instantiation overhead. - Operates with zero garbage allocations on the hot path using pre-compiled Expression delegates.
🧠 GC Control & ⚡ JIT Warm-up
- Prevents Unity's garbage collection from firing during combat or movement.
- Pre-compiles critical game methods on spawn to eliminate the first-use stutter.
🛡️ Frame Budget Guard
- Monitors frame times in a rolling 120-frame window and tracks the 1% Low.
- When heavy spikes are detected, dynamically lowers
Time.maximumDeltaTimeto prevent Unity's physics engine from entering the Death Spiral (lag → over-simulation → freeze).
⏩ Skip Intro
- Skips the Iron Gate and Coffee Stain logo screens on every game launch. Saves 5–10 seconds.
Configuration
All settings are available in the Main Menu VPO Button or in BepInEx/config/com.Skarif.ValheimPerformanceOverhaul.cfg.
Key settings
| Setting | Default | Description |
|---|---|---|
| Decor Batching | false | Combines meshes of decorations to reduce draw calls |
| Network Optimizations | true | Enables Steam Uncap, Smart Sorting, and Adaptive Throttling |
| Max Active Lights | 15 | Max simultaneous light sources |
| Light Cull Distance | 60 m | Beyond this distance lights turn off |
| Light Flicker Optimization | true | Fixes light intensity, stops per-frame shadow rebuilds |
| Smoke Physics Optimization | true | Replaces heavy smoke aerodynamics + fixes memory leak |
| Engine Quality Settings | true | Disables soft particles/vegetation, reduces particle raycast budget |
| Frame Budget Guard | true | Prevents physics Death Spiral during heavy load spikes |
| Creature Cull Distance | 80 m | Creatures sleep beyond this distance |
| Piece Cull Distance | 100 m | Building pieces sleep beyond this distance |
Performance expectations
Results depend heavily on scene complexity. Typical gains:
| Scenario | Expected FPS gain |
|---|---|
| Open world, few structures | ~5–10% |
| Medium base (50–100 pieces) | ~10–20% |
| Large base (300+ pieces, 10+ light sources) | ~25–45% |
| Busy server with many players/mobs | ~15–30% |
| Massive base with decor batching & smoke fix | additional ~15–25% on top |
Compatibility
- ✅ Works standalone - no other mods required.
- ✅ Compatible with most content mods (Epic Loot, Jotunn-based mods, etc.).
- ✅ Crossplay Compatible! Network optimizations automatically detect if you are running on Steam or Game Pass and adjust safely.
- ⚠️ If Object Pooling conflicts with a custom projectile mod, disable it in config.
- ⚠️ Light Flicker Optimization removes the visual flicker from fires. Disable if you prefer vanilla aesthetics.
- ⚠️ Smoke Physics Optimization changes smoke behaviour (won't accumulate under roofs). Disable if this breaks your chimney designs.