You are viewing a potentially older version of this package. View all versions.
korCaptain-FindTomb-1.0.4 icon

FindTomb

Tracks your recent deaths and shows tiered-colored, numbered grave pins on the map plus a compass VFX pointing to your oldest unrecovered grave.

Date uploaded 3 days ago
Version 1.0.4
Download link korCaptain-FindTomb-1.0.4.zip
Downloads 72
Dependency string korCaptain-FindTomb-1.0.4

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2202 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.2202

README

FindTomb - Valheim Grave Finder Mod

한국어 설명 보기 | English Description


🇰🇷 한국어 (Korean)

개요

FindTomb는 발헤임에서 죽을 때마다 생기는 무덤(묘비)을 놓치지 않도록 도와주는 모드입니다. 최근 죽음 최대 5회까지 위치를 기억해서, 월드맵에 색깔별 순번 핀으로 표시하고 캐릭터 앞에 방향 안내 VFX를 띄워줍니다.


📦 필수 모드 (Dependencies)
모드 버전 필수 여부
BepInExPack_Valheim 5.4.2202+ 필수
ConfigurationManager 최신 권장 (GUI 설정용)

✨ 주요 특징

무덤 위치 추적

  • 최근 사망 최대 5회까지 무덤 위치를 자동 기억 (재접속해도 유지)
  • 아이템을 전량 회수하면 해당 무덤은 추적에서 자동으로 빠지고, 나머지 무덤들이 자동으로 순번이 승격됨
  • 이미 파괴된(정상 회수 완료된) 무덤이 실수로 계속 추적되는 걸 방지하는 자동 정리 기능 내장

월드맵 핀 표시

  • 사망 순서에 따라 무덤 핀 색상이 자동으로 바뀜: 빨강 → 분홍 → 주황 → 노랑 → 흰색
  • 핀 위에 사망 순번 숫자(1~5, 1 = 가장 먼저 죽은 무덤)가 함께 표시됨

방향 안내 VFX

  • 캐릭터 앞에서 가장 먼저 회수해야 할(가장 오래된) 무덤 방향을 가리키는 나침반형 VFX
  • 무덤이 멀면 길게 늘어지고, 가까워질수록 짧아져서 거리감을 직관적으로 알 수 있음
  • 해당 무덤을 전량 회수하면 자동으로 다음 무덤을 가리킴

단축키

  • Ctrl+X: 다음 죽음 전까지 방향 표시를 숨김
  • Ctrl+.: 방향 표시를 다음 무덤으로 수동 전환
  • 두 단축키 모두 F1 ConfigurationManager에서 원하는 키로 변경 가능하며, 설명(툴팁)은 게임 언어 설정(한국어/English)에 맞춰 자동으로 표시됨

⚙️ 설정 관리 (Configuration Management)

ConfigurationManager를 사용하면 게임 내에서 GUI로 모든 모드 설정을 편리하게 조정할 수 있습니다.

  1. Thunderstore에서 BepInEx.ConfigurationManager 설치
  2. 게임 내에서 F1 키를 눌러 Configuration Manager 열기
  3. 모드 목록에서 FindTomb 찾기
  4. 원하는 설정 조정 (변경사항 즉시 적용, 재시작 불필요)

Config 파일 위치

BepInEx/config/captain.FindTomb.cfg
카테고리 설정 설명
General Enabled 모드 전체 활성화/비활성화
General MaxTrackedGraves 추적할 최근 무덤 개수 (1~5)
General ShowMinimapPins 무덤 핀 색상/숫자 표시 여부
General ShowDirectionVFX 방향 안내 VFX 표시 여부
Controls CancelTrackingKey 방향 표시 숨기기 단축키 (기본 Ctrl+X)
Controls CycleNextGraveKey 다음 무덤으로 전환 단축키 (기본 Ctrl+.)

📥 설치 방법
  1. 권장: r2modman/Thunderstore Mod Manager에서 자동 설치
  2. 수동: BepInEx/plugins/FindTomb/ 폴더에 DLL 복사

English

Overview

FindTomb helps you never lose track of your graves in Valheim. It remembers the location of your last 5 deaths, marks them with color-coded numbered pins on the world map, and shows a compass VFX pointing you toward the one you should recover first.


📦 Required Mods (Dependencies)
Mod Version Required
BepInExPack_Valheim 5.4.2202+ Required
ConfigurationManager Latest Recommended (for GUI settings)

✨ Features

Grave Location Tracking

  • Automatically remembers up to your last 5 death locations (persists across reconnects)
  • Once a grave's items are fully recovered, it's automatically dropped from tracking and the remaining graves are re-ranked
  • Built-in self-healing: automatically stops tracking a grave if it's confirmed destroyed (already looted), so a stale entry never gets stuck pointing at nothing

World Map Pins

  • Grave pins are color-coded by death order: Red → Pink → Orange → Yellow → White
  • Each pin shows a death-order number (1~5, 1 = your first death) above the icon

Direction Compass VFX

  • A compass-style VFX in front of your character points toward the oldest grave you haven't recovered yet (the one you should grab first)
  • The VFX stretches when the grave is far away and shrinks as you get closer, giving an intuitive sense of distance
  • Automatically switches to the next grave once the current target is fully looted

Keybinds

  • Ctrl+X: Hide the direction indicator until your next death
  • Ctrl+.: Manually point the indicator at the next grave
  • Both are rebindable in the F1 ConfigurationManager, with tooltips that automatically switch between Korean and English based on your Valheim language setting

⚙️ Configuration Management

ConfigurationManager provides a convenient in-game GUI for adjusting all mod settings.

  1. Install BepInEx.ConfigurationManager from Thunderstore
  2. Press F1 in-game to open the Configuration Manager
  3. Find FindTomb in the mod list
  4. Adjust any setting (changes apply immediately, no restart required)

Config File Location

BepInEx/config/captain.FindTomb.cfg
Category Setting Description
General Enabled Enable/disable the whole mod
General MaxTrackedGraves Number of recent graves to track (1-5)
General ShowMinimapPins Toggle grave pin colors/numbers
General ShowDirectionVFX Toggle the direction compass VFX
Controls CancelTrackingKey Hide the direction indicator (default Ctrl+X)
Controls CycleNextGraveKey Point at the next grave (default Ctrl+.)

📥 Installation
  1. Recommended: Install via r2modman/Thunderstore Mod Manager
  2. Manual: Extract to BepInEx/plugins/FindTomb/

📝 Credits / 크레딧

  • Developer / 개발자: KorCaptain
  • Framework / 프레임워크: BepInEx, Harmony

💬 Support / 지원


Enjoy your enhanced Valheim adventure! / 향상된 발헤임 모험을 즐기세요!

CHANGELOG

Changelog / 변경 로그

[1.0.5] - 2026-08-13

English

  • Fixed a NullReferenceException in TryGetWorldUID that could crash the periodic ReconcileTick (e.g. right after loading the mod, before a world finishes loading). ZNet.instance being non-null doesn't guarantee ZNet.m_world is set yet; ZNet.GetWorldUID() dereferences ZNet.m_world directly, so the null check now covers both.

한국어

  • TryGetWorldUID에서 발생하던 NullReferenceException 수정 — 주기적으로 실행되는 ReconcileTick이 크래시할 수 있었음(예: 모드 로드 직후, 월드 로딩이 끝나기 전). ZNet.instance가 null이 아니어도 ZNet.m_world는 아직 설정 안 된 시점이 있는데, ZNet.GetWorldUID()ZNet.m_world를 직접 참조하므로 이제 둘 다 null 체크에 포함시킴.

[1.0.4] - 2026-08-11

  • ✅fix1 : Replaced the death-order number badge's TextMeshProUGUI with legacy UnityEngine.UI.Text + a dedicated Font.CreateDynamicFontFromOSFont("Arial", ...) instance, following the pattern already proven in CaptainSkillTree's ActiveSkillHUD (GetHudFont()) and PotalMap's multi-round TMPro removal. 1.0.3's fix (borrowing a font asset from the vanilla map name-pin prefab) only patched the immediate crash; this project family has an established rule against TextMeshProUGUI for dynamically created UI text because Resources.GetBuiltinResource<Font>("Arial.ttf") is a global engine singleton shared across every mod loaded in the same BepInEx profile, and mixing it across canvases with different CanvasScaler modes corrupts the shared font texture atlas (documented in CaptainSkillTree/md/ACTIVE_SKILL_HUD_RULES.md Rule 1, and rediscovered the hard way in PotalMap's 7th round). The black outline previously done via TMP's outlineWidth is now a UnityEngine.UI.Outline component instead. Unity.TextMeshPro reference removed from the csproj entirely (confirmed unused elsewhere in the project).
  • ✅fix1 : 사망 순번 배지의 TextMeshProUGUI를 레거시 UnityEngine.UI.Text + 전용 Font.CreateDynamicFontFromOSFont("Arial", ...) 폰트로 교체. CaptainSkillTreeActiveSkillHUD(GetHudFont())와 PotalMap이 여러 라운드에 걸쳐 검증한 TMPro 퇴출 패턴을 그대로 따름. 1.0.3의 수정(바닐라 지도 이름표 프리팹에서 폰트를 빌려오는 방식)은 당장의 크래시만 막은 임시방편이었음 — 이 프로젝트군에는 동적 생성 UI 텍스트에 TextMeshProUGUI를 쓰지 않는다는 확립된 규칙이 있는데, Resources.GetBuiltinResource<Font>("Arial.ttf")가 같은 BepInEx 프로필에 로드된 모든 모드가 공유하는 전역 엔진 싱글턴이라서, 서로 다른 CanvasScaler 모드를 쓰는 캔버스끼리 이 폰트를 섞어 쓰면 공유 폰트 텍스처 아틀라스가 깨지기 때문(CaptainSkillTree/md/ACTIVE_SKILL_HUD_RULES.md Rule 1에 문서화되어 있고, PotalMap 7차 라운드에서 같은 문제로 실제 버그를 겪은 전례가 있음). 기존 TMP outlineWidth로 하던 검은 테두리는 UnityEngine.UI.Outline 컴포넌트로 대체. csproj에서 Unity.TextMeshPro 참조 완전 제거(프로젝트 내 다른 사용처 없음 확인).

[1.0.3] - 2026-08-11

  • ✅fix1 : Fixed a crash (ArgumentNullException in TMP_Text.CreateMaterialInstance) when the death-order number badge was created on a grave pin. The badge's TextMeshProUGUI was created via AddComponent with no font asset assigned; Unity TMP then tries to fall back to the "LiberationSans SDF" resource, which Valheim's build doesn't ship, so font/fontSharedMaterial stayed null and setting outlineWidth crashed while building the outline material. Now borrows a valid TMP_FontAsset from the vanilla map name-pin prefab (Minimap.instance.m_pinNamePrefab) instead of leaving it unassigned.
  • ✅fix1 : 무덤 핀에 사망 순번 배지를 만들 때 발생하던 크래시(TMP_Text.CreateMaterialInstanceArgumentNullException) 수정. 배지의 TextMeshProUGUIAddComponent로 생성하면서 폰트 에셋을 지정하지 않았는데, 유니티 TMP는 이때 기본값으로 "LiberationSans SDF" 리소스를 로드하려 시도한다. 발헤임 빌드에는 이 리소스가 없어 font/fontSharedMaterial이 계속 null로 남았고, outlineWidth 설정 시 아웃라인 머티리얼을 만들다 크래시가 났음. 이제 바닐라 지도 이름표 프리팹(Minimap.instance.m_pinNamePrefab)에서 유효한 TMP_FontAsset을 빌려와 할당하도록 수정.

[1.0.2] - 2026-08-11

  • ✅fix1 : The published v1.0.1 zip was missing FindTomb.dll entirely — it only contained CHANGELOG.md/README.md/manifest.json/icon.png, so anyone installing from Thunderstore got no working plugin at all (no errors, since BepInEx had no DLL to load). This is why the direction VFX and every other feature appeared broken after publishing, even though the code itself had no bugs. Repackaged the zip with the compiled DLL included.
  • ✅fix2 : Fixed the local auto-deploy Copy task, which had been silently failing since 2026-08-06 — it read from $(OutputPath)$(AssemblyName).dll, but SDK-style projects append a $(TargetFramework) subfolder to the actual build output, so the file never existed at that path. Switched to $(TargetPath), MSBuild's standard property for the actual output assembly path, so local builds reliably reach the test profile again.
  • ✅fix1 : 배포됐던 v1.0.1 zip에 FindTomb.dll이 통째로 빠져있었음 — CHANGELOG.md/README.md/manifest.json/icon.png 문서 파일만 들어있어서, Thunderstore로 설치한 사람은 실제 플러그인이 아예 로드되지 않는 상태였음(BepInEx가 로드할 DLL이 없으니 에러도 없음). 코드 자체엔 문제가 없었는데도 배포 후 방향 VFX를 비롯한 모든 기능이 안 되는 것처럼 보인 원인이 이것. DLL을 포함해 zip을 다시 만듦.
  • ✅fix2 : 2026-08-06부터 조용히 실패하던 로컬 자동 배포 Copy 태스크 수정 — $(OutputPath)$(AssemblyName).dll 경로를 읽었는데, SDK 스타일 프로젝트는 실제 빌드 산출물에 $(TargetFramework) 하위 폴더를 자동으로 붙이므로 해당 경로에 파일이 존재한 적이 없었음. MSBuild 표준 속성인 $(TargetPath)(항상 정확한 산출물 경로를 가리킴)로 교체해 로컬 빌드가 다시 테스트 프로필에 정상 반영되도록 함.

[1.0.1] - 2026-08-06

  • ✅fix1 : Fixed the direction VFX and minimap pin tier colors breaking after reconnecting (disconnect + rejoin) — reconnecting fully reloads the Unity scene, destroying and recreating ZNetScene/Minimap, but the mod's cached prefab/pin references were static and survived across the reload, pointing at now-destroyed objects. Added ResetPrefabCache()/ResetForNewSession(), called from the Player.SetLocalPlayer postfix (fires exactly once per connect), so every (re)connect re-resolves everything fresh.
  • ✅fix2 : Fixed a stale/ghost grave record permanently stuck in save data (already looted and destroyed in-world, but never removed from tracking, leaving a VFX pointing at nothing forever). The pin-reconcile fallback now checks ZDOMan.GetZDO() after a timeout to distinguish "really destroyed" from "just not loaded nearby yet", and auto-removes tracking for graves confirmed gone.
  • ✅feat1 : Changed the direction VFX target from "most recent grave" to "oldest grave" (the one you'd want to recover first), auto-advancing to the next-oldest once the current target is fully looted. VFX length now scales with distance (stretches when far, shrinks as you approach) instead of a fixed size.
  • ✅feat2 : Added a death-order number badge (1~5, 1 = first death) above each grave's minimap pin, matching the same numbering the direction VFX uses.
  • ✅feat3 : Added Ctrl+X (hide the direction indicator until your next death) and Ctrl+. (manually point at the next grave) keybinds, configurable via ConfigEntry<KeyboardShortcut>. Config tooltips are localized to Korean/English based on Valheim's own language setting (PlayerPrefs.GetString("language")), so ConfigurationManager (F1) shows the right language automatically. (An earlier on-screen X/arrow button HUD was tried and removed — Unity always renders Screen Space Overlay canvases like the inventory screen above World Space ones and steals their clicks, so a feet-anchored world-space button could never actually be clicked; keybinds replaced it entirely.)
  • ✅fix1 : 재접속(디스커넥트 후 재접속) 시 방향 VFX와 미니맵 핀 티어 색상이 깨지던 문제 수정 — 재접속은 유니티 씬을 통째로 다시 로드해서 ZNetScene/Minimap이 파괴·재생성되는데, 모드가 들고 있던 프리팹/핀 참조가 static 캐시라 재로드 후에도 살아남아 이미 파괴된 오브젝트를 계속 가리키고 있던 것이 원인. ResetPrefabCache()/ResetForNewSession()을 추가해 (재)접속마다 정확히 1회 호출되는 Player.SetLocalPlayer postfix에서 모든 캐시를 초기화하도록 함.
  • ✅fix2 : 세이브 데이터에 영구적으로 낀 유령 무덤 레코드(이미 회수·파괴됐지만 추적에서 안 빠져서 VFX가 계속 허공을 가리키던 문제) 수정. 핀 재연결 로직이 타임아웃 후 ZDOMan.GetZDO()로 "진짜 파괴된 것"과 "아직 구역 미로드라 못 찾는 것"을 구분해서, 진짜 없는 무덤은 추적을 자동 해제하도록 함.
  • ✅feat1 : 방향 VFX가 가리키는 대상을 "최신 무덤"에서 "가장 오래된 무덤"(먼저 회수해야 할 무덤)으로 변경, 전량 회수하면 자동으로 다음 오래된 무덤을 가리킴. VFX 길이도 고정 크기 대신 거리에 비례하도록 변경(멀면 늘어나고 가까워지면 줄어듦).
  • ✅feat2 : 미니맵 무덤 핀 위에 사망 순번 숫자(1~5, 1=최초 사망) 배지를 추가, 방향 VFX와 동일한 순번 기준 사용.
  • ✅feat3 : Ctrl+X(다음 죽음 전까지 방향 표시 숨기기)/Ctrl+.(다음 무덤 수동 지정) 단축키 추가, ConfigEntry<KeyboardShortcut>으로 config에서 변경 가능. Config 설명(툴팁)은 발헤임 게임 설정 언어(PlayerPrefs.GetString("language"))에 따라 한국어/영어로 자동 전환되어 F1 ConfigurationManager에서 알맞은 언어로 표시됨. (초기에 화면에 X/화살표 버튼 UI를 시도했다가 제거함 — 유니티는 인벤토리 창 같은 Screen Space Overlay 캔버스를 World Space 캔버스보다 항상 위에 그리고 클릭도 먼저 가로채서, 발밑에 붙인 월드스페이스 버튼은 애초에 클릭이 불가능한 구조였음. 단축키로 완전히 대체함.)

[1.0.0] - 2026-08-05

  • Initial Release: Track grave locations for up to 5 recent deaths

  • World map pin tier color display (Red → Pink → Orange → Yellow → White)

  • Automatically clear the corresponding grave slot and promote the remainder when all items are retrieved

  • Character-centric latest grave direction guide VFX

  • 최초 릴리스: 최근 사망 5회까지 무덤 위치 추적

  • 월드맵 핀 티어 색상 표시 (빨강→분홍→주황→노랑→흰색)

  • 아이템 전량 회수 시 해당 무덤 슬롯 자동 정리 및 나머지 승격

  • 캐릭터 중심 최신 무덤 방향 안내 VFX