You are viewing a potentially older version of this package. View all versions.
PUP82-PUP_FPS-1.0.23 icon

PUP FPS

Improves FPS around massive Valheim bases by combining thousands of repeated building pieces. Controls: [ bake, ] restore, \ highlight, F8 emergency restore.

Date uploaded 3 weeks ago
Version 1.0.23
Download link PUP82-PUP_FPS-1.0.23.zip
Downloads 62
Dependency string PUP82-PUP_FPS-1.0.23

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2202 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.2202

README

PUP FPS

Author: PUP

PUP FPS improves performance around very large player-built bases in Valheim. It combines thousands of supported static building pieces into a small number of optimized clusters.

The mod works best on large builds made from many repeated pieces. The fewer different materials a base uses, the larger the FPS improvement can be. Mixed-material builds also benefit, but usually less.

Test results

Test PC: AMD Ryzen 9 7900X, NVIDIA GeForce RTX 4070 SUPER.

  • 50,000 instances, mostly Grausten: 40 FPS before, 170 FPS after on low settings, and 120 FPS after on maximum settings.
  • 22,000 instances, mostly wood: 80 FPS before and 180–200 FPS after.

Results depend on the base, graphics settings and hardware.

PUP FPS cannot raise Valheim above the normal limit of your PC. If your game reaches a maximum of 50 FPS away from a large base, the mod can help the base run closer to 50 FPS — it will not turn 50 FPS into 200 FPS.

Controls

Key Action
[ Bake the current 64x64 metre cell
] Restore the current baked cell
\ Highlight supported pieces in the current cell
F8 Emergency safe restoration

Each supported material type has its own highlight colour.

To repair or rebuild pieces, restore the cell with ], make the changes, and bake it again with [.

After baking is complete, restart Valheim. Reloading the world allows the optimized cache to load correctly and usually provides the best FPS improvement.

Highlight colours

  • Blue — Grausten
  • Green — regular wood
  • Purple — dark wood
  • Orange — Ashwood
  • Yellow — logs and roundwood
  • Beige/gold — thatch roofs
  • Grey — stone
  • Pink/red — black marble
  • Cyan — Dvergr copper
  • Red-orange — Flametal
  • Brown — crystal and glass

Supported materials

Grausten, regular wood, core wood, dark wood, Ashwood, thatch, stone, black marble, Dvergr copper, Flametal, crystal and glass.

Doors, gates, animated pieces and incompatible multi-material objects are skipped automatically.

Installation

  1. Install BepInExPack for Valheim.
  2. Copy PUP_FPS.dll into BepInEx/plugins/PUP_FPS/.
  3. Start Valheim and load a single-player world.
  4. Check that the BepInEx log contains PUP Safe Building Combiner 1.0.23 loaded.

Important

  • PUP FPS is intended for single-player worlds only.
  • Make a world backup before first use.
  • Keep only one version of PUP_FPS.dll installed.
  • Wait until baking or restoration finishes before leaving the world.
  • Use F8 only if normal restoration does not work.
  • If necessary, saved PUP FPS world data can be removed through the BepInEx Config Editor. Restore baked cells first whenever possible and make a world backup before deleting the data.

PUP FPS preserves collision, structural support and exact restoration data. Original pieces are saved at their normal world coordinates so the world remains usable if the mod is disabled.

Video

https://youtu.be/7gId6gBINAk

CHANGELOG

Changelog

Author: PUP

1.0.29

  • Fixed bugs.

1.0.28

  • Fixed a highlighting bug in single-player.

1.0.27

  • Added dedicated-server support, including administrator permissions through adminlist.txt.
  • Added synchronized baking, restoration, highlighting and client cache loading on dedicated servers.
  • Changed highlighting to a clearer material-based view.
  • Fixed duplicate or missing visuals, collision gaps, repeated baking, restoration and world-switching issues.
  • Fixed missing restored textures after emergency restoration on dedicated servers.

1.0.26

  • Fixed a bug when quickly rebaking restored zones.

1.0.25

  • Fixed some objects being destroyed when baked zones became inactive.

1.0.24

  • Added multiplayer support.

1.0.7

  • The 16x16 subcluster under the player receives collision immediately.
  • Remaining cached colliders load through one distance-prioritized background queue.
  • Added a global adaptive 0.5-1.5 ms frame budget to prevent large baked bases from freezing on entry.
  • Background loading is safely reset when changing worlds or unloading the mod.

1.0.6

  • MeshCollider geometry is now embedded directly in newly baked cache files.
  • Fixed missing collision on black-marble stairs after zone reload or game restart.
  • Existing cache formats remain readable; rebake affected cells to create the new collider format.
  • Added an explicit log error when an old named collider mesh cannot be resolved.

1.0.5

  • Added rediscovery of baked objects in both parking and original world sectors.
  • Uses persistent PUP tags and cell markers when saved ZDO IDs change.
  • Rebinds stale IDs only after full count and uniqueness validation.
  • Does not modify object rotations or the proven combining algorithm.

1.0.4

  • Removed the unsafe mass rotation repair.
  • Restore validation now finds exact objects by their saved ZDO IDs instead of requiring parking coordinates.
  • Cells can be restored after the world has been opened with the mod disabled.
  • Safe saving changes positions only and leaves native rotations untouched.

1.0.3 (withdrawn)

  • Safe world saving no longer rewrites native object rotations.
  • Added one-time rotation repair for worlds previously saved with 1.0.2.
  • Original positions are still restored before saving and reparked afterwards.

1.0.2

  • Restored the proven 1.0.0 remote-parking optimization.
  • Original coordinates are restored before every normal Valheim world save.
  • Baked pieces are reparked after saving so optimization continues during play.
  • Saved worlds can load their original building pieces when the mod is disabled.
  • Added migration support for existing baked cells.

1.0.1

  • Original building objects now keep their vanilla world coordinates.
  • Disabling or removing the mod no longer leaves baked structures without visible originals.
  • Added automatic migration from the legacy remote-parking system.
  • Original GameObjects are disabled only locally while their optimized cluster is active.

1.0.0

  • Added multi-cell GPU instancing for supported static building pieces.
  • Added 16x16 metre shadow proxies.
  • Added safe distant tessellation reduction with near-field materials unchanged.
  • Preserved staged restoration, collision and structural-support protection.
  • Added supported materials including Grausten, wood families, thatch, stone, black marble, Dvergr copper, Flametal and crystal.
  • Excluded animated and incompatible multi-material pieces.