Valheim
Install with App

Details

Latest version
1.0.2
Last Updated
First Uploaded
Downloads
1.8K
Likes
2
Size
182KB
Dependants
ADDatHost Valheim hosting
€1

Runic Exploration

Exploring Valheim is memorable. Finding the crypt, cave, trader, dock, or resource patch you marked three weeks ago is often less so—especially after the map fills with pins.

Runic Exploration turns the world you have already discovered into something you can search. Browse and filter known pins, inspect useful destination context, and ask Valheim's map to center on the place you chose.

Major features

  • Search saved pins that lie inside explored map cells.
  • Filter and group known locations without altering the underlying pins.
  • Distinguish personal, shared, and mixed pin sources.
  • Show distance, direction, elevation, and careful last-known labels.
  • Display local sailing context while you are actually controlling a ship.

How it feels in-game

Your map becomes a practical travel tool instead of a wall of symbols. You still earn every discovery by exploring; the mod simply helps you remember and navigate what your character has already found.

Safety and compatibility

Exploration is client-side and display/navigation-only. It does not uncover terrain, scan the world for hidden locations, create or delete pins, track remote players, claim ownership, send RPCs, or mutate gameplay state. No-map rules are respected, and an incompatible state causes the interface to stay hidden rather than interfere with Valheim's map.

What it does

  • Searches and filters saved pins whose exact map pixel is already marked explored in the local Minimap arrays. Optional shared-map coverage is applied only to pin data Valheim already placed in this client's saved-pin list.
  • Groups exact one-metre/name/type duplicates for display while retaining the underlying vanilla pins and their authorship unchanged. Results distinguish personal, shared, and mixed sources.
  • Recognizes tombstones, beds, bosses, and explicit known-asset name tags: [boat], [cart], [animal]/[tame], [portal], [bed], and [tombstone]/[grave].
  • Revalidates the selected source pin and explored-map evidence before asking Valheim to center its existing large map on that point. It shows straight-line distance, eight-way direction, and elevation. Tombstones include an explicit warning that topology, shores, and passability are not inferred and that no remote recovery occurs.
  • While the local player is actually controlling a ship, shows the current local ship speed/sail, wind power/intensity, current biome, and approximate straight-line distance to the selected known pin.

Every pin row is labeled LAST KNOWN. This release does not claim that a boat, cart, animal, portal, bed, tombstone, or other pin still exists. The sailing panel alone is labeled LIVE LOCAL SHIP, because it comes from the player's current controlled ship.

This MVP does not auto-create, live-confirm, or remove asset pins and does not offer a free-text author filter. Assets appear only through a vanilla/modded saved pin already known to the client; destroyed or moved assets remain LAST KNOWN until their underlying pin is updated or removed. Personal/shared source and category filters provide the bounded merge-quality controls in 1.0.0.

Privacy and known-state boundary

The source is only Minimap.m_pins plus the already-populated m_explored and, when enabled, m_exploredOthers arrays on the local client. For each pin, Exploration reads only position and the saved flag until the exact explored-cell gate passes. Names, types, checked state, and owner metadata are not inspected for an unknown or unsaved pin. It never consults WorldGenerator, ZoneSystem locations, loaded characters, ships, tameables, pieces, ZDO collections, scene scans, physics/radar queries, or peer map state.

No-map worlds are checked before Minimap, pin, or optional-integration access. Opening no-map mode, disabling the module, losing the local player/map, or encountering incompatible/oversized state clears all cached names, coordinates, selection, navigation, and optional status. Dedicated/batch processes install no Harmony hooks and remain inert.

Shared pins are only pins already present in the local saved-pin list and on already known map pixels. IncludeSharedPins=false suppresses both shared coverage and records whose vanilla owner ID does not identify the local player. Numeric owner IDs, pin coordinates, and names are never logged.

Authority, multiplayer, and server boundary

Runic Exploration is strictly a local-client display and map-navigation layer. It has no server authority, sends no multiplayer RPC, requests no ZDO ownership, and cannot ask a server or another player to reveal, confirm, move, remove, or create anything. Shared-map rows are limited to saved pins and explored coverage already replicated into this client's vanilla Minimap; they are not a live server directory. On a dedicated server/batch process the module is inert. Centering the map is the only requested outcome and remains Valheim's local UI operation—never a world or server mutation.

Bounds and refresh behavior

  • Pin-list hard ceiling: 10,000. A larger list is rejected before per-pin inspection.
  • Map texture hard ceiling: 4,096 x 4,096 with exact coverage-array length validation.
  • Raw third-party pin-name inspection: 256 UTF-16 characters; retained label: 64 characters.
  • Search query: 48 characters; displayed results: 5–24, with a hard ceiling of 24.
  • Index order: deterministic normalized name, pin type, quantized X/Z/Y, bounded raw-name hash, then source index. Search preserves this order.
  • Refresh: configurable 0.25–3 seconds (0.5 default). The reusable capture list is fingerprinted; index strings and GUI content rebuild only when bounded known evidence changes. A stable changed fingerprint waits for a 0.75-second quiet period; continuously changing evidence is coalesced to at most one rebuild every two seconds, so the 10,000-pin adversarial case cannot allocate a new index every 0.25-second sample. Unknown/unsaved pin counts, indices, and coordinates do not enter this retained fingerprint. Drawing uses the cached index/search/readout and does not enumerate map pins.

Repeated-change regression profiles over four seconds perform at most two builds: approximately 0.16 MB at 100 pins, 1.59 MB at 1,000 pins, and 15.91 MB total at 10,000 pins on the audited test runtime. A single 10,000-pin build remains about 7.96 MB/12.5 ms; the gate reduces sustained churn frequency rather than claiming an allocation-free immutable index.

Optional integration

Runic Portals and Runic Awareness are not project, assembly, package, or manifest dependencies. When enabled Runic Portals metadata is runtime-discovered through BepInEx, Exploration may state only that its directory remains available in portal context. It does not use a registry, capability, service, or protocol and deliberately does not query directory entries, counts, tags, networks, destinations, or private portal metadata. Missing or incompatible metadata simply removes that status line.

UI and controller behavior

The panel appears only while Valheim's large map is open. Search, category, and source filters are mouse/keyboard controls. Text focus and pointer input over the panel are isolated from the vanilla map; all other map input falls through. A controller continues to use Valheim's normal map controls and receives an additional configurable 1.0–1.5 readability scale for the read-only panel. This MVP does not add a controller cursor or custom gamepad binding. On a safe area too small for the bounded panel, the panel hides and the vanilla map remains usable.

Configuration

General.Enabled controls the module. Panels independently controls the browser, selected-pin navigation, and sailing readout. KnownMap.IncludeSharedPins controls local shared coverage/source rows. Performance.RefreshIntervalSeconds controls sampling. Display controls result count, UI scale, controller multiplier, and side. Diagnostics.VerboseLogging logs counts/config changes only.

DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro
DatHost — Valheim server hosting, first month for one euro