BelltowerFinder

版本 v1.0.0·更新於 2026-08-22

PEAK 霧沼(GLOOM)鐘塔光柱:自動定位霧沼段 5 座鐘塔並顯示黃色光柱,F10 開關,助你完成敲鐘人成就。

模組介紹 作者原文

BelltowerFinder(霧沼鐘塔光柱)— PEAK BepInEx 插件

在 Steam 遊戲 PEAK(巔峯) 的 霧沼(GLOOM) 段裏,用黃色光柱標出鐘塔位置,

幫你完成敲鐘人成就(同一次遠征敲響 5 座鐘塔)。

畫法、寫法與你的 ClownLuggageFinder 完全一致(OnRenderObject + GL.LINES 光束 +

頂端十字),編譯方式也一樣(.NET Framework csc.exe)。

文件

| 文件 | 說明 |

|---|---|

| BelltowerFinder.cs | 插件源碼(C# 5,可直接用 csc.exe 編譯) |

| build.cmd | 一鍵編譯 + 複製到 BepInEx\plugins(雙擊運行) |

| BelltowerFinder.csproj | 備選:dotnet SDK 編譯用(dotnet build -p:GameDir=...) |

| 安裝說明.md | 本說明 |

安裝

  • 用記事本打開 build.cmd,確認第一行 set GAME=D:\Steam\steamapps\common\PEAK

是你的遊戲路徑(你的 ClownLuggageFinder 裝的路徑就是)。

  • 雙擊 build.cmd,看到"完成!"即可(自動把 BelltowerFinder.dll

複製到 BepInEx\plugins\BelltowerFinder\)。

  • 啓動遊戲 → 進入每日遠征,到達霧沼段後:
  • F10 開關黃色光柱(F6 被其他 mod 佔用,已避開)
  • F11 手動重新掃描
  • Insert 開關左上角信息面板(顯示已找到幾座鐘塔 + 座標)
  • 按鍵都可在 BepInEx\config\com.dsh.belltowerfinder.cfg 裏改,不用重新編譯

工作原理

  • 用 MapHandler.segments[i].biome == Swamp 找到霧沼段(霧沼 = biome Swamp,官方譯名霧沼),

只掃描霧沼段容器下的物體(GloomOnly=true 時)。

  • 按名字匹配 bell / tower / belfry(配置 NameFilter 可改),把鄰近零件聚類成

同一座鐘塔,取最高點(就是鐘的位置)作爲光柱錨點。

  • 補充:霧沼段裏的 Peak.JesterBells(遊戲裏鐘塔上的鐘組件)也會被計入,

雙保險。

找不到鐘塔?按順序排查

  • 看左上角面板狀態:
  • "未進入地圖" → 先進每日遠征。
  • "未找到霧沼段" → 今天的每日地圖沒有霧沼,等刷新。
  • "沒掃到鐘塔" → 鐘塔預製體名字不含 bell/tower,繼續下面步驟。
  • 開 LogAll 看日誌:改配置 Debug > LogAllMatches = true,重啓遊戲進霧沼,

打開 BepInEx\LogOutput.log,搜 [BelltowerFinder][match] 看掃描命中了哪些物體名。

  • 用 StringScan 查預製體名字(你 peak-mod 裏已有工具):

StringScan.exe "D:\Steam\steamapps\common\PEAK\PEAK_Data\Managed\Assembly-CSharp.dll" bell

StringScan.exe "D:\Steam\steamapps\common\PEAK\PEAK_Data\Managed\Assembly-CSharp.dll" tower

把輸出的關鍵名字(如 Belltower / BellTower_01 之類)填進配置 Scan > NameFilter。

  • 如果鐘塔是純場景物件、代碼裏沒有任何名字線索:把掃描範圍擴大——

關掉 GloomOnly 全圖掃;或告訴我日誌內容,我幫你改檢測邏輯。

配置(BepInEx\config\com.dsh.belltowerfinder.cfg)

| 配置 | 默認值 | 說明 |

|---|---|---|

| General > ScanInterval | 2 | 掃描間隔(秒) |

| General > ToggleKey | F10 | 開關光柱(F6 被其他 mod 佔用) |

| General > RescanKey | F11 | 立即重掃 |

| General > PanelKey | Insert | 開關信息面板 |

| Visual > ShowBeacons | true | 是否畫光柱 |

| Visual > BeaconColorHex | #FFCC00FF | 光柱顏色(黃) |

| Visual > BeaconHeight | 150 | 光柱高度 |

| Scan > GloomOnly | true | 只掃霧沼段 |

| Scan > NameFilter | bell,tower,belfry | 名字匹配關鍵詞 |

| Scan > ClusterRadius | 50 | 同一座鐘塔歸類半徑 |

| Scan > IncludeJesterBells | true | 霧沼段 JesterBells 也算鍾 |

| Debug > LogAllMatches | false | 打印每次掃描的命中物體 |

常見問題

  • 編譯失敗:看 build.cmd 提示;通常是 GAME 路徑不對,或缺 BepInEx。
  • 光柱不顯示但面板正常:按 F10 確認開關,或檢查 Visual > ShowBeacons。
  • 按鍵與遊戲/其他 mod 衝突:F10 / F11 / Insert 已儘量避開常用鍵,但如果你

的 mod 還佔用它們,直接改 cfg 裏 General > ToggleKey 等三項

(例如 ToggleKey = F12 或 ToggleKey = P),保存後重啓遊戲即可,不用重新編譯。

  • 加載失敗:檢查 BepInEx\config\BepInEx.cfg 的 EnableAssemblyCache=false

(你 README 裏提過),緩存壞了刪 BepInEx\cache\chainloader_typeloader.dat。

免責聲明

僅用於輔助個人遊戲體驗與學習,請遵守 PEAK 的使用條款;是否使用由你自己決定並承擔相應風險。

安裝與使用 安裝:BepInEx 外掛

  1. 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
  2. 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
  3. 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
  4. 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。

帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。

前置依賴

下面這些內容需要先安裝,否則該模組不會生效:

BepInEx-BepInExPack_PEAK

檔案與校驗

檔案名稱
BelltowerFinder-1.0.0.zip
檔案大小
15.3 KiB