Angband

如果我離開目前關卡,我會再次射擊獨特的怪物嗎?

  • June 27, 2014

在 L8(400 英尺以下)探索時,我遇到了一位著名巫師的蛇舌特工。在他的侮辱之間,我對他做得很好,直到在走廊裡追他時,我從一扇活板門掉到了下面的樓層。

顯然,我無法回到我所在的同一個地下城關卡。(當然,我可以回到相同的深度,但這是一張全新的地圖。)但是我會再次找到並殺死這條蠕蟲,還是在給定的遊戲中只生成一次像這樣的獨特角色,並且那麼就這樣了嗎?我真的不想讓他對我母親的輕視站出來,但我想知道我是否只是在浪費時間閒逛,或者我是否可以深入地牢。

查看 Angband 的來源,我們可以弄清楚這一點。所有行和文件都適用於 3.5.0 版。

有幾個檢查可以創建一個獨特的怪物。他們都試圖確保唯一性實際上是獨一無二的。每個獨特的max_num在遊戲啟動期間都設置為 1 (birth.c:389)

唯一性的一項檢查是在怪物放置期間 (monster/mon_make.c:924)。每當考慮創建新怪物時,都會發生這種情況:

if (rf_has(race->flags, RF_UNIQUE) && race->cur_num >= race->max_num)
    return (FALSE);

這段程式碼的效果是,如果 max_num 為 1(預設值),則遊戲中一次只能有一個唯一副本。

遊戲操縱 max_num 以防止獨特的怪物在被殺死後重生。(怪物/mon_make.c:1505)

m_ptr->race->max_num = 0;

一旦max_num為 0,任何將怪物放入遊戲的嘗試都將失敗。

除了遊戲在啟動時將此值設置為 1 並在唯一被殺死時設置為 0,此值在其他任何地方都不會被觸及。因此,如果你遇到一個獨特的並且不殺死它,它就有可能重生。顯然,您可能必須在獨特的可能產卵區域內生成許多關卡才能再次看到它。

最重要的是,在你殺死它之前,遊戲不會考慮獨特的失控。

引用自:https://gaming.stackexchange.com/questions/174079