


Huginn Map gives your whole Valheim server one shared, self-updating map.
Built from scratch on BepInEx + Jotunn, fully server-authoritative: the server holds the canonical map and pin registry, pushes it to every client, and saves it next to the world so it survives restarts.
Shared fog of war - When anyone explores, everyone sees it. Built on Valheim's own shared-map format, relayed and persisted by the server. No more re-walking the same ground on every character.
Automatic resource pins - Ore deposits near players get pinned for the whole server with the real in-game icon for each ore (copper, tin, obsidian, flametal, soft tissue). The pin clears the moment a deposit is fully mined out. Silver is the exception: it is pinned only when a player actually strikes the vein, so the Wishbone hunt stays intact.
Harvestable pins - Berries, mushrooms, thistle, dandelion, etc... all pin when you find them, each with its own icon. Renewable plants stay pinned since they regrow; one-shot pickables clear once collected.
Dungeon and landmark pins - Crypts, caves, fortresses, fuling camps, and other points of interest are pinned by location when discovered.
Portal pins - Every portal is pinned and labelled with its tag. The pin is cleared if the portal is destroyed.
Boat pins - Park a boat and it gets pinned where it sits. The pin follows the boat when relocated and clears when it is destroyed.
Shared cleared marks - Left-click any pin to cross it out. The mark is shared with everyone and persists across reloads.
Per-player visibilty filter - A panel on the large map lets each player toggle pin types on and off, grouped by biome. It is purely local, so your view never affects anyone else's.
Install on every client and the server. (NetworkCompatibility is enforced —
everyone needs the same mod.)
Huginn.dll into BepInEx/plugins/Huginn/.Config file: BepInEx/config/nightofgames.huginn.cfg. Most options are admin-only and
server-synced — the server's values are pushed to all clients automatically.
| Key | Default | Notes |
|---|---|---|
General.ShareMap |
true |
Sync explored fog of war. |
General.AutoPinResources |
true |
Pin ores + dungeons. |
General.AutoPinPortals |
true |
Pin portals. |
General.AutoPinBoats |
true |
Pin stopped boats. |
General.AutoPinPickables |
true |
Pin harvestable plants. |
Scanner.ScanRadius |
10 |
Ore/pickable detection radius (m). |
Scanner.PoiScanRadius |
30 |
Dungeon/POI detection radius (m). |
Scanner.ScanIntervalSec |
2 |
Scan frequency. |
Scanner.OrePrefabs |
(list) | Prefab=IconItem=Label, comma-separated. |
Scanner.PoiLocations |
(list) | LocationPrefix=Label[=Icon], comma-separated. |
Scanner.PickablePrefabs |
(list) | Prefab=IconItem=Label; icon auto-detected from the drop. |
Scanner.HitPinPrefabs |
(list) | Deposits pinned only when struck (e.g. silver). |
Scanner.ClusterMerge |
8 |
Merge nearby same-type pins (m). |
Boats.BoatStopSpeed |
0.5 |
Below this speed = stopped. |
Boats.BoatStopSeconds |
1 |
Stopped this long before pinning. |
Map.MapFlushIntervalSec |
10 |
Min seconds between map syncs. |
Map.ShareVanillaPins |
false |
Off = the cartography table / shared-map no longer copies player pins (prevents duplicate-pin clutter); fog is still shared. |
Debug.LogNearbyPrefabs |
false |
Log nearby prefab names (see below). |
Prefab names differ between game versions and content patches. If a deposit or
dungeon isn't being pinned, enable Debug.LogNearbyPrefabs, walk up to it,
and check the BepInEx log for the exact prefab name — then add it to
Scanner.OrePrefabs / Scanner.PoiLocations / Scanner.PickablePrefabs. For
ores, the middle field is the item whose icon you want (e.g. CopperOre); a POI
icon can also be $name for one of the mod's built-in custom sprites.
Requires the .NET SDK. The project references the game assemblies directly and publicizes them at build time (Krafs.Publicizer), so just point it at your install:
dotnet build Huginn.csproj -c Release
Override the game path if needed: -p:ValheimDir="D:\SteamLibrary\steamapps\common\Valheim".
A successful build auto-copies Huginn.dll into BepInEx/plugins/Huginn/.
Package for Thunderstore: pwsh ./package.ps1 → produces dist/Huginn_Map-<version>.zip.
1.0.0 — first stable release, tested in-game through the Ashlands content. If a
deposit, dungeon, or plant isn't pinning in your game version, it's almost always a
prefab-name difference: use Debug.LogNearbyPrefabs (above) and adjust the lists,
and please report it with your BepInEx log.