Jump to content
Toggle menu
  • 3 articles
  • 22 files
  • 3 users
  • 2.5K edits
Shroudforge
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 01:34, 7 November 2026 by Bonsaibauer (talk | contribs) (Importing a new version from external source)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Automatic beta game profiles



可選的測試版發現功能會將新的遊戲構建與已保存且受支持的版本進行比較。只有在所需證據齊備時,才會創建完整的測試版配置文件。匹配的正式遊戲配置文件優先使用。

遊戲更新前的準備

此模塊默認啟用,也可以關閉。明確保存為禁用的設置會繼續保持禁用。開關位於配置文件選擇器旁的 Settings → General → Game profile 中。

  1. 檢查是否已啟用 Dynamic game profile creation (Beta)。如有需要,請將其打開。
  2. 在匹配的正式配置文件仍可用時,完全重啟遊戲或專用伺服器。
  3. ShroudForge 會精確驗證當前可執行文件,並將其保存到緩存中作為比較基線。你無需下載歷史版本的可執行文件。
  4. 之後遊戲更新時,新遊戲進程會自動開始比較並使用已保存的基線。

客戶端和專用伺服器分別保存各自的基線。客戶端無法替換伺服器基線。如果模塊在更新後才首次啟用,且沒有保存匹配的基線,就無法重建先前版本。

遊戲啟動時會發生什麼

分析會在遊戲啟動期間運行。遊戲會等待分析結果,然後繼續啟動。此步驟不需要加載世界。

ShroudForge 會先查找與當前運行的精確可執行文件匹配的正式配置文件。如果存在,自動選擇會使用該配置文件。啟用發現功能後,它也會將受支持的可執行文件緩存起來,以供後續更新比較。

如果沒有匹配的正式配置文件,模塊會針對相同的目標進程和 KFC 格式檢查最新且合適的正式基線。先前緩存的可執行文件必須與該基線完全匹配。它會根據比較映像檢查代碼、引用、已註冊類型和必需的結構契約。目標地址必須從新映像中確定。

結果會保留先前配置文件的完整契約,包括其功能標誌。未解決或互相衝突的證據會阻止整個測試版配置文件發布。診斷信息會說明原因。繼續等待或進入世界都無法補足缺失的靜態證據。

存儲和選擇

正式配置文件和生成的配置文件共用已配置的配置文件目錄。默認路徑為:

內容 位置
客戶端配置文件 shroudforge/runtime/profiles/enshrouded/client/
伺服器配置文件 shroudforge/runtime/profiles/enshrouded/server/
已保存的比較映像和證據 shroudforge/cache/game-profile-discovery/

生成的配置文件以 beta_ 開頭。如果沒有可用的匹配正式配置文件,Automatic 選擇可以使用經過完整驗證的匹配測試版配置文件。配置文件選擇器會列出可用配置文件。以後添加的匹配正式配置文件優先使用。

更改開關或配置文件選擇後,必須完全重啟受影響的遊戲或伺服器。重新打開 Modloader 窗口不會重啟運行時。

區分發現、配置文件和運行中的世界

藍色的 Dynamic profile search in progress 通知表示正在搜索配置文件。Workflow and help 會打開本指南。如果搜索結束時沒有找到匹配配置文件,問題會以紅色顯示。橙色的 Experimental game profile active 通知表示當前實際選中的測試版配置文件。實際運行時錯誤仍會作為錯誤顯示。

可執行文件的結構檢查不需要加載世界。依賴世界的操作還需要相應的實時上下文、註冊信息和運行時安全檢查。生成配置文件並不能證明遊戲命令已執行或產生了可見效果。功能檢查也必須分別測試客戶端和伺服器。

如果未生成配置文件,請閱讀報告的原因和技術細節。缺少已保存的基線、不合適的源配置文件,或代碼和布局證據尚未解決,都需要補充相關輸入或進一步分析。匹配的正式配置文件或合適的 ShroudForge 更新可能提供支持。

詳細日誌記錄

Debug Console 會在主日誌的 game-profile-discovery 來源下顯示發現消息。若要查看每項比較和重定位字段,請將 Settings → General → Logging → Minimum level 設為 Diagnostic。Advanced 會顯示其他摘要。

紅色運行時橫幅和日誌條目 [compatibility-check] check=runtime 來自同一項運行時檢查。現有 UI 刷新會先記錄狀態變化,再將相同狀態發送給 Modloader。Debug Console 會對主日誌中的警告和錯誤行應用現有彈出設置。

失敗時,主日誌會給出當前 .v2.unresolved.json 或 .v2.error.json 報告的路徑。成功時,它會給出 .v2.proof.json 證據路徑,以及生成的 beta_.json 配置文件的完整保存路徑。報告保存在發現緩存中。

Linux 和 Proton

發現功能在原生運行時模塊中執行,不需要外部 PowerShell 或 Python 程序。此工作流尚未在 Proton 下進行實際測試。

有關運行時、模組 API 和解析器的說明,請參閱 遊戲引擎。