UsefulRunestones

v1.0.3·Updated 2026-09-09

Exploration rewards for RuneStones and Vegvisirs: reveal weighted global map pins from pinless RuneStones, grant biome-based Vegvisir buffs with cooldowns.

Screenshots 2 screenshots

About this mod Author’s original text

UsefulRunestones

UsefulRunestones turns Valheim's RuneStones and Vegvisirs into configurable exploration rewards.

Runestones have a chance to pin configured locations just like vegvisirs!

Vegvisirs can give players shorttime buff according to biome.

So vegvisir is still a little useful even though you already know boss locations.

Highlights

  • Let pinless RuneStones reveal configured world locations as saved map pins.
  • Give custom pin names and pin icons per target location.
  • Use weighted chances so a RuneStone can reveal one target or reveal nothing.
  • Resolve global pins on the dedicated server, then send only the result to the interacting client.
  • Restrict or expand valid RuneStone source biomes per target.
  • Grant weighted Vegvisir status-effect rewards by biome.
  • Combine biome-specific reward tables with an All table.
  • Keep one selected reward and per-player cooldown state per loaded Vegvisir.
  • Play optional shared vfx_, sfx_, or fx_ prefabs when a reward is granted.
  • Sync YAML to clients with ServerSync and reload while the game is running.
  • Support custom biome names through Expand World Data when it is installed.

Why Use UsefulRunestones

UsefulRunestones focuses on small world-interaction rewards that make exploration more useful:

  • Existing RuneStones can point players toward configured landmarks without editing location prefabs.
  • Server owners can tune target weights and the chance of revealing no pin.
  • Vegvisirs can become biome-flavored reward points instead of one-time boss pointers only.
  • Cooldowns are tracked per loaded Vegvisir and per player, so shared servers can reward exploration without giving unlimited buffs.
  • The YAML stays compact enough to maintain by hand.

Generated Files

The mod creates:

BepInEx/config/UsefulRunestones.yml

BepInEx/config/sighsorry.UsefulRunestones.cfg

Server admins should edit the YAML on the server or host. The full YAML text is synced to clients automatically.

RuneStone Global Pins

runestoneGlobalPins rows use this shorthand:

runestoneGlobalPins:

  • Vendor_BlackForest, 0.5, Haldor, Icon3
  • SunkenCrypt4, 0.25, Sunken Crypt, Icon3, [Swamp]

Fields:

locationName, chance, pinName, pinType, sourceBiomes

Field behavior:

  • locationName: target ZoneSystem location prefab/name.
  • chance: final weighted chance for this target. Omitted value defaults to 1.
  • pinName: saved map pin name. Omitted value uses the target location discover label, then child teleport enter text, then locationName.
  • pinType: Valheim Minimap.PinType. Omitted value defaults to Icon3.
  • sourceBiomes: extra RuneStone source biomes that can reveal this target.

If filtered target chances add up to 1 or less, the remaining chance means no pin. If the total is over 1, UsefulRunestones normalizes the target weights so exactly one target can be selected.

When sourceBiomes is omitted or empty, a RuneStone can reveal the target only from the target location's own biome. Add source biomes when you want a RuneStone in one biome to reveal a target in another biome.

Selection lifetime

  • Single-player and the host's own interactions keep one result per loaded RuneStone object. Recreating that object (for example, after zone unloading) allows a new roll. Changing the pin definition also allows a new roll.
  • Remote clients ask the server. The server derives a repeatable roll from the RuneStone's 16m XZ cell, the pin definition, and a secret that lasts while the plugin remains loaded. Height is not part of the cell. This is not a world-seed-based or saved-world result.
  • Nearby RuneStones in one cell share a roll percentile, not necessarily the same target: the server resolves eligible candidates and the nearest location for each request. Changes to available locations can therefore affect the result.
  • Pin definition order, names, icons, chances, and source biomes participate in the selection key. Editing display fields can change the roll too. Restarting the game/server creates a new secret; changing wor

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. 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.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. 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.

Dependencies

Install these first, or the mod will not work:

denikson-BepInExPack_Valheim

File & checksum

Filename
UsefulRunestones-1.0.3.zip
File size
308.2 KiB