Gravegoods
World chests get a small chance of biome-appropriate resources, ammo, and gear.
About this mod Author’s original text
Gravegoods
Valheim's world is full of crypts, ruins, towers and shipwrecks with chests inside, and nearly every one holds the same few arrows and feathers. Gravegoods gives those chests a small chance of holding something worth the detour: biome resources, a handful of arrows or bolts, or a battered weapon or armor piece left behind by whoever didn't make it home.
It is built not to skip progression. Gear usually comes from the biome you have already beaten, arrives badly worn, and never includes boss-gated items.
Who needs to install this
Every player and the server. Whichever player first loads a chest rolls its loot, so everyone needs the mod. The server sends its loot tables and config to every client. Clients without the mod are refused.
What can drop
Each world chest rolls three independent chances, once, the first time it loads. Player-built chests are never touched.
| Roll | Default | Gives |
|---|---|---|
| Resource | 8% | One stack from that biome's resource list |
| Ammo | 5% | 3–8 arrows or bolts, 70% from the chest's biome tier, otherwise one tier behind |
| Gear | 2% | One weapon or armor piece at 5–30% durability |
Gear comes from one tier behind the chest's biome 85% of the time. That older gear can arrive upgraded: 17% quality 2, 3% quality 3. The other 15% of the time it comes from the chest's own tier, always at quality 1. Meadows chests always use Meadows gear.
Found gear is badly worn on purpose. Its durability is random anywhere between 5% and 30%, so a lucky find helps you push on but needs a trip home to the workbench before it can carry a whole expedition.
Tiers run Meadows, Black Forest, Swamp, Mountain, Plains, Mistlands, Ashlands, Deep North. The biome is read from the chest's map position, so dungeon chests count too. Ocean chests get nothing.
How gear and ammo are tiered
Nothing is hand-listed. Every craftable weapon, armor piece, arrow and bolt in the game, including other mods' items like ValheimArmory's, is placed at the tier of its highest-tier ingredient. A sword made from Iron and Ancient Bark is Swamp gear. Crafted ingredients like Bronze or nails resolve through their own recipes.
If any ingredient has no known tier (a material another mod added that isn't listed in loot.txt yet), the item is left out rather than guessed at. report.md names the ingredient; give it a tier under [materials] and those items join the pools.
Anything that needs a boss trophy or boss drop is left out: antler, Elder, Bonemass, Moder, Yagluth, Queen and Fader gear. So are DLC items and anything without an enabled recipe.
Files
BepInEx/config/Gravegoods/loot.txt decides what can drop:
- which tier each crafting material belongs to
- the boss materials list
- a [never] list
- [overrides] to force an item into a tier
- the resource list for each biome
It is plain text with comments explaining each section. On a server, the server's copy is used. Restart the server after editing it.
BepInEx/config/Gravegoods/report.md is written each time a world loads. It lists every item in every pool and why it's there, everything that was left out and why, and any name in loot.txt that doesn't exist in your install.
Commands
In the F5 console as gravegoods, or in chat as /gravegoods:
- gravegoods shows where the tables came from, the chances, and pool sizes per tier.
- gravegoods sim [chests] rolls imaginary chests and tallies the results. It's useful for tuning odds and changes nothing in the world.
- gravegoods report rewrites report.md.
- gravegoods legacy on|off is admin only. By default, only chests that load for the first time after install get a roll. Turning legacy on lets chests generated before the mod roll once the first time anyone opens them. It's stored in the world, so each world has its own setting.
Configuration
BepInEx/config/com.ragemedia.gravegoods.cfg. Everything except VerboseLogging is admin-only and synced from the server.
- General: Enabled, ExcludedContainers (prefab name fragments to s
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file. In multiplayer, the host and every client need the same mods installed.
Install these first, or the mod will not work: