How does a monster notice your settlers, and what can you do about it? This page is read straight from the game's tables (DS_B.0.4.23) and the code dump; each number names the constant it comes from, and anything the data cannot confirm is flagged as such. Try the interactive 檢測範圍計算器 來填入一隻具體怪物。
檢測模型 實際發生的事
檢測是 基於視野且基於網格的。每個單位 - 你的開拓者和每個怪物一樣 - 都帶有一個 視野範圍 屬性,用來定義它當前能看到的地塊集合,牆壁會擋住視線。當怪物可見地塊中包含你的一個單位時,它開始察覺,經過短暫的察覺積累後才會投入攻擊。程式碼裡沒有單獨的聽覺或噪音感知。
怪物會經歷三種戰鬥狀態 (來自轉儲的
CombatState 列舉,每次單位移動時由 MoveApplier.RefreshUnitCombatState):
- 未察覺 - 閒置或巡邏;它還沒看到你。
- 察覺中 - 你的一個單位進入了它的視野;察覺正在積累。
- 戰鬥中 - 察覺已達到閾值;它鎖定並交戰。
喚醒 並非瞬間完成。當玩家單位留在怪物視野內時,怪物會積累 察覺 在 每遊戲內分鐘 1 點
(GAMESYSTEM_Combat_Basic_AwarenessOnMin,僅敵人)並在達到
5 (GAMESYSTEM_Combat_Basic_AwarenessToCombat)- 約
5 個遊戲內分鐘 的不間斷視野,1x 速度下實際時間僅約 4 秒。短暫穿過怪物視野,往往能在它投入之前離開;攻擊它則當然會立刻進入戰鬥。
自定義 AI 建立在 Behavior Designer 樹上,其距離/視野檢查(CheckEnemyDistance, CheckCombatTargetInRange)讀取同一套網格視野和仇恨資料 - 不是三維視野錐射線檢測。打斷視線時察覺是否衰減,資料裡沒有寫明(推斷會重置或下降,未經確認)。
視野範圍 發現半徑
視野範圍 is the core number. The game's own description:
"單位照亮周圍區域並發現敵人的視野範圍。" It does double duty - it reveals fog of war for your side and it is the radius a
monster uses to spot you. It is measured in 格 計量,並按視線追蹤,因此你和怪物之間的牆會擋住它(VisionDataHandler.IsPathVisible).
| 視野範圍 | 單位相關 | 示例 |
|---|---|---|
| 4 | 2 | 深淵格洛斯幼崽, 格洛斯幼崽 近視 |
| 5 | 7 | 火龍爪戰士, 刺蝟, 稻草人 |
| 8 | 97 | 深淵酸性昆蟲, 深淵酸性斯洛格爾, 深淵蜜蜂 標準 |
| 12 | 2 | 深淵阿爾法酸性斯洛格爾, 阿爾法酸性斯洛格爾 |
| 16 | 1 | 眼球 最遠視野 |
數值是下列表中為每個單位填寫的
UnitTable。大多數單位能看到 8 格;眼球能看到很長的 16,
while a 深淵格洛斯幼崽 is nearsighted at 4。玩家方單位預設為 7
(StatusValueTable);成長系統的回退基礎值是 5
(GAMESYSTEM_Unit_Growth_..._VisionRange).
仇恨與威脅 交戰,以及誰會被打到
一旦被發現,兩套獨立常量支配這場戰鬥:
- 仇恨範圍 = 8 格 (
GAMESYSTEM_Combat_Basic_AggroRange)- 怪物在此威脅半徑內交戰。因為它等於標準的 8 格視野,大多數怪物會在同一距離發現你並投入。 - 仇恨修正 = [1.3, 1]
(
GAMESYSTEM_Combat_Basic_AggroCorrection)- 按攻擊型別施加在單位產生的仇恨/威脅上的倍率: 近戰 x1.3, 遠端 x1。近戰攻擊者比遠端多拉約 30% 仇恨,因此前排會自然把怪物的注意力從你的施法者身上拉開。這影響的是 目標選擇,而不是你是否先被發現。
轉儲確認了常量和近戰/遠端劃分(開發者註釋:[0] melee, [1] ranged),但方法體被剝掉了,因此倍率如何運算是推斷的,不是逐行讀出來的。程式碼裡沒有發現拴繩或返回重新整理點計時器 - 怪物達到 未察覺 後就直接丟掉目標。
晝與夜 天黑後視野縮小
地下城按晝夜時鐘執行。白天是 06:00 到 20:00
(GAMESYSTEM_Campaign_DayTimes);該時段之外就是夜晚。
夜間視野降低 3 格 (GAMESYSTEM_Campaign_DayNightVisionDiffrence)。標準的 8 格怪物實際只能看到
5 at night - but the same penalty clips your own units' sight, so a night raid cuts
both ways. The 夜視儀 affecter adds +3 視野範圍,正好抵消攜帶者的夜間懲罰。
夜間懲罰是作用於怪物、玩家還是雙方,後設資料轉儲並不能完全確定 - 每個單位的
Status_VisionRange 類確實帶有一個 IsPlayer 標誌,這暗示兩側可以區別對待,但那只是推斷,不是已確認的規則。
潛行 乾淨的脫身口
潛行 is the one hard counter to detection. The in-game text: "保持未被發現且無法成為目標。如果你對敵人造成傷害,該效果會立即結束。"
It is a code flag (it adjusts no stat), so it is all-or-nothing: while active you cannot be seen or targeted, regardless of Vision Range or distance. The catch is spelled out in the description - it ends the instant you deal damage, so it is a repositioning and scouting tool, not a way to fight unseen. 資料中有定義,但目前沒有任何可獲得的物品、特質或技能授予它。
感知誤區 名稱與效果
很自然會以為 感知 屬性會拉遠單位能看多遠 - 名稱和描述("磨礪感官")都在暗示這一點。資料並不支援。
什麼會提高或降低檢測 摘要
以上內容收進一張表。"效果"是從怪物的角度看 - 它有多容易發現你。
| 因素 | 效果 | 資料所示 |
|---|---|---|
| 怪物的視野範圍 | 不定 | 每個單位都有自己的視野半徑 (UnitTable.VisionRange):從 4 (深淵格洛斯幼崽) up to 16 (眼球),大多數為 8。半徑越大 = 它從更遠處發現你。 |
| 視線(牆) | 降低 | 視野按格逐一追蹤,並被牆和障礙擋住 (VisionDataHandler.IsPathVisible)。在拐角處打斷視線,即使貼臉也能藏身。 |
| 夜晚 | 雙方 -3 | 從 20:00 到 06:00 視野下降 3 格 (DayNightVisionDiffrence)。這會縮短怪物的觸及距離,但也會裁掉你自己偵察單位的視野。 |
| 夜視儀 (affecter) | 恢復 +3 | 增加 +3 視野範圍 (夜視儀), exactly cancelling the night penalty. 來源:夜勤人。 |
| 潛行 (affecter) | 隱藏 | 潛行: "保持未被發現且無法成為目標。如果你對敵人造成傷害,該效果會立即結束。" A hard on/off flag. 資料中有定義,但目前沒有任何可獲得的物品、特質或技能授予它。 |
| 仇恨範圍 | 8 格 | 怪物在此威脅半徑內交戰 (GAMESYSTEM_Combat_Basic_AggroRange = 8)。它等於標準的 8 格視野,因此對大多數怪物來說,發現和交戰發生在同一距離。 |
| 攻擊型別(近戰 vs 遠端) | 目標選擇 | 仇恨/威脅按打法縮放:近戰 x1.3,遠端 x1 (AggroCorrection)。近戰多拉 30% 仇恨,因此它決定怪物盯上你哪名單位 - 這是坦克槓桿,不是初次發現。 |
| 感知 (Fortify / Weaken / Elixir) | 不明 | 儘管名稱如此,感知屬性管的是物理攻擊力與魔法攻擊力、暴擊機率和烹飪 - 其實裝 StatusValueTable 視野範圍係數是 0 且遊戲內提示沒有列出視野效果。因此 感知強化 / 感知削弱 (±30%) 和 +3 感知靈藥 不 是本版本已確認的檢測修正。 |
應對方式 實戰要點
- 拐角勝過距離。 視線是唯一始終生效的硬限制。牆在任何距離都能擋住你;開闊地不行,哪怕很遠。
- 去偵察極端單位。 A 眼球 (16-tile sight) will open on you from across a room, while you can slip within a few tiles of a 深淵格洛斯幼崽 (4-tile sight). Most things sit at 8.
- 夜襲是雙刃的。 The -3 vision at night lets you approach closer, but your own units are just as blind - bring 夜視儀 if it is available.
- 讓近戰拉住仇恨。 近戰比遠端多產生約 30% 威脅,因此一個前排肉體會把怪物從更脆的遠端和施法者身上拉開。
- 潛行用來重置,不是用來刷。 A 潛行 potion breaks contact cleanly, but the first hit you land drops it.