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
Comprehensive performance optimization mod. Reduces CPU/GPU load via light culling, LOD system, AI throttling, distance culling, piece sleep management and more. Designed for large bases and busy servers.
CHANGELOG
Changelog
v2.7.1
Added
- mini-update (smokePatch).
v2.7.0
Added
-
Light Flicker Optimization — Harmony Prefix on
LightFlicker.CustomUpdatethat fixes light intensity at its base value, eliminating per-frame Shadow Map recalculation for all fires and torches. Significant GPU gain on bases with many light sources. -
Smoke Physics Optimization — Harmony Prefix on
Smoke.CustomUpdatethat replaces the vanilla complex aerodynamics (inter-particle collisions, volume simulation, roof accumulation) with a lightweight quadratic interpolation + single upward force. Dramatic CPU savings on large bases with many campfires. Lift force is configurable. -
Engine Quality Settings — Forces low-level Unity
QualitySettingsat startup:softParticles = false,softVegetation = false, configurableparticleRaycastBudget(default: 1024 vs vanilla 4096). Minor visual change on particle edges; measurable GPU and CPU gain in particle-heavy scenes. -
Skip Intro — Skips Iron Gate and Coffee Stain logo screens on every game launch by patching
SceneLoader.Start. Saves 5–10 seconds per startup. -
Frame Budget Guard — Dynamic stutter protection system. Monitors a rolling 120-frame window, computes the 1% Low frametime, and lowers
Time.maximumDeltaTimewhen heavy spikes are detected. Prevents Unity's physics Death Spiral (lag → engine over-simulates physics to catch up → more lag → freeze). Converts hard freezes into brief slow-motion. All thresholds are configurable. Automatically recovers when the game stabilises.
Changed
- Version bumped to
2.7.0. - README updated with new module descriptions, expanded compatibility notes, and updated performance expectations table.
- Config sections renumbered: new modules occupy sections 17–21.
Notes
- All new modules are enabled by default and can be individually toggled in config.
- Light Flicker and Smoke optimizations are Prefix patches with
return false— they fully replace vanilla logic. If you experience unexpected visual issues with fires or smoke, disable the relevant module. - Private game fields are accessed via
AccessTools.Field(cached) andTraverse— no direct decompiled references, compatible with future game updates.
v2.6.4
Added
- Nothing (maintenance release).
v2.6.3
Added
- Welcome screen on main menu launch.
- Displays a feedback message on first launch.
- Clickable link to Steam profile for bug reports and suggestions.
- "Don't show anymore" checkbox to permanently hide the screen.
v2.6.0
Changed / Fixed
- Removed
NetworkManager(ZSteamSocket-only implementation, broke crossplay). - Removed
ZDOOptimizer(potential desync risk on servers). - Fixed
LightLODManager: removed duplicateScanForLights()call onStart. - Fixed
AdvancedLightManager: removed periodicFindObjectsByTypescan every 5 s (caused micro-freezes). DistanceCullerrefactored: all cullers now managed by one centralUpdateloop instead of oneUpdate()per object.PiecePatches: replacedConcurrentDictionarywithDictionary(main thread only, 3–5× faster lookup).AsyncWearInit: added early exit when queue is empty.
v2.5.1
- Initial public release.