Source-checkedBuilding & decoration

Dvergr Pieces Patch

by PatTheEvil · for Valheim

Makes Tequila's Dvergr Pieces work on Valheim 1.0. Contains none of his files - it installs his mod as a dependency and repairs it in memory at load.

869Downloads
8d agoLast updated
BepInExLoaders
ThunderstoreSource

About Dvergr Pieces Patch

From Thunderstore

Makes Tequila's Dvergr Pieces work on Valheim 1.0. Contains none of his files - it installs his mod as a dependency and repairs it in memory at load.

Dvergr Pieces Patch

Makes Tequila's Dvergr Pieces work on Valheim 1.0.

This package contains none of Tequila's files. It installs his mod as a dependency — your mod manager will fetch it alongside this one — and repairs it in memory when the game loads. His assembly is never modified, never patched on disk, and never redistributed.

Everything you actually build comes from his mod. This is one 12 KB plugin that makes it run again.


What was broken

1. The build menu threw on every refresh

Valheim 1.0 refactored PieceTable. The field m_availablePieces changed from List<List<Piece>> (pieces grouped by category) to HashSet<Piece> (a flat set), and the old per-category list was renamed to m_availablePiecesByCategory.

The PieceManager bundled inside Dvergr Pieces still reads m_availablePieces as List<List<Piece>>. Because the name still exists with a different type, this is not a load failure — its patches throw MissingFieldException the moment they run, the mod's category never gets its slot, and Hud.UpdateBuild then throws ArgumentOutOfRangeException on every frame the build menu is open. Over a thousand exceptions in a few minutes of play.

This patch removes those two broken patches from PieceTable.UpdateAvailable and installs equivalents that use the renamed field. Nothing else of PieceManager's is touched.

2. The pieces were missing from the new build menu

Valheim 1.0 replaced the old category tab bar with a tag-driven menu (ByUsagePieceList) that filters on a new field, Piece.m_usage. Prefabs authored before 1.0 have no usage tags, so they matched no category and only ever showed under "Show All".

The pieces are now tagged so they appear where you would expect them. m_usage is a flags field, so a piece can sit in more than one category — the chests and the shelf are both Storage and Furniture, and the pole and beams are both Building and Architecture.

| Menu category | Pieces | Count | |---|---|---| | Furniture | bed, table, chair, stool, both chests, shelf | 7 | | Stairs | metal spiral (left + right), marble spiral (left + right), wooden stairs | 5 | | Building | black marble block, wooden pole, wooden beam, wooden beam 2x1 | 4 | | Lighting | black core torch, placeable lantern, wisp torch | 3 | | Storage | both chests, shelf | 3 | | Architecture | wooden pole, wooden beam, wooden beam 2x1 | 3 | | Walls | both dvergr walls | 2 | | Decor | marble head, vines | 2 | | Flooring | wooden floor | 1 | | Doors and Windows | dvergr door | 1 | | Crafting | fermenter | 1 |

That is 26 prefabs, covering all 24 pieces the mod advertises — the two spiral staircases each ship as a separate left and right prefab.

All of them also appear together under a "Dvergr" category, the way the original mod had them before 1.0. Because m_usage is a flags field, that is an extra bit rather than a move: the bed is under Furniture and under Dvergr. It can be turned off — see Configuration.

ByUsagePieceList builds its tag list into two instance arrays at construction, and the rest of the menu reads only those, so the category is added by appending one entry to each — no change to the enum and nothing patched in the BCL. The bit is picked from what the array actually holds rather than hardcoded, so a category added by another mod (Jötunn can do this since 2.30.1) will not collide with it.

3. The fermenter did not accept newer meads

A bug Tequila acknowledged in his 2.9.0 changelog and never got to. The Dvergr fermenter's brew list was baked into its asset bundle in 2024, so it refused everything added afterwards — seven meads in total, from Ashlands and Bog Witch.

Rather than hardcoding a list that would rot on the next update, the fermenter now copies any missing conversions from the vanilla fermenter at load time, so future meads work automatically. Its 30% faster fermentation is unchanged.

4. The original mod's config did nothing while the game was running

Editing Tequila.DvergrPieces.cfg — a crafting cost, a build table, anything — took effect only on a cold start. Removing a piece from the hammer did not even survive a world reload.

Valheim 1.0 turned ZRoutedRpc.Everybody from a static field into a const. A compiler inlines a const, so code built before the change still reads it as a field, and Mono throws MissingFieldException the moment such a method is JIT-compiled. That instruction sits in the handler the bundled ServerSync attaches to every synced config entry: change a setting and the handler throws, and because it is first in the invocation list, PieceManager's handler — the one that actually applies the change — never runs.

So the config was never being ignored. The code that applies it was being skipped.

The broken handler is now detached, and the rest of the chain runs normally — settings apply the moment you save the file again. Rewriting the instruction would have been neater, but it is not possible: Harmony has to compile a method in order to redirect it, so patching one of these is itself what throws. The only way out is to make sure the method is never called, which is also how this patch deals with the build menu.

The one thing this gives up: a config change is no longer sent to other players. That is all the detached handler did, and it never actually happened — it threw before getting that far — so nothing that used to work has stopped. It cannot be brought back from here, and for the same reason an admin adding or removing a piece at runtime on a server still fails. If everyone on the server keeps the same config file, none of this matters.

Nothing is wrong with ServerSync itself; rebuilding it against 1.0 fixes this with no source change. Only mods frozen on a pre-1.0 build are affected.


Installing

Read the full description on Thunderstore →

Highlights

From source data

Loaders

Runs on BepInEx.

Footprint

Rated a light load on a server.

Last update

Its author last shipped an update 8d ago.

Dvergr Pieces Patch 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 side
Optional on 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.2.0, released 2026-10-27

Game versions by loader

LoaderGame versionsNewest
BepInEx

From 3 recorded builds of Dvergr Pieces Patch.

Recent builds

BuildReleasedGame versionsLoaders
1.2.02026-10-27n/aBepInEx
1.1.02026-09-18n/aBepInEx
1.0.02026-09-14n/aBepInEx

Dependencies

Declared by the newest build that lists any. Required ones are installed with it on one-click installs.

Run Dvergr Pieces Patch 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 catalog
Listed on Thunderstore as “Building”

Building & decoration

Blocks, furniture, decorations and building tools.

Works on a server

From source side support

Thunderstore lists server-side support for Dvergr Pieces Patch as optional: it can run on a server, but isn’t required there.

Compatibility

Game
Valheim
Loaders
BepInEx
Runs on
Serveroptional on the server
Requires
One-click install needs a BepInEx server.

Verified at the source

  • ✓ThunderstoreOfficial listing, checked 2026-10-28Open ↗
  • ✓AuthorPatTheEvil, as published on Thunderstore
  • ✓LicenseNot published by the sourceFree

Dvergr Pieces Patch, answered

Generated from the mod’s own source data.

Do my players need to install Dvergr Pieces Patch?

Thunderstore lists server-side support for Dvergr Pieces Patch as optional: it can run on a server, but isn’t required there.

Which loaders does it support?

BepInEx.

Is it free?

Yes. Dvergr Pieces Patch is free to download from Thunderstore.

How do I add it to my Nxeon server?

Use “Add to a server” on this page, or open NxLabs from your dashboard. We install it, restart your server and switch it on.

NxLabs

Run Dvergr Pieces Patch on a Valheim server.

Deploy in about a minute from $9.99 a month, then add Dvergr Pieces Patch in one click.