Dark-Souls

有沒有可能同時殺死奧恩斯坦和斯莫?

  • January 9, 2013

我知道當你殺死一個人時,另一個人會吸收他並恢復所有健康並獲得一些新能力。這導致了快速關註一個而“忽略”另一個的策略。

我的問題是,如果你花時間平等地削弱它們,那麼使用某種aoe(比如大火術)是否有可能同時殺死它們?

如果有可能會發生什麼?

可能不是,原因是由於程序的性質,通常一切都是按順序執行的。

假設遊戲執行緒如下所示:

run () {
  while (game_is_running) {
     if smough_is_defeated then //this is special logic only used in this boss battle
       ornstein absorbs smough
     else if ornstein_is_defeated
       smough absorbs ornstein 

     do everything else
     game_logic //moving, collision detection, applying impulses
     render //that is, if they choose to render in the logic process
     let process sleep for 10 miliseconds 
  } 
}

這意味著即使他們死在同一個邏輯循環中,一個仍然會在另一個之前進行檢查,這意味著另一個將沒有機會執行該檢查,因為它將從邏輯中刪除環形。

自然,他們可以有另一種設置,他們可以為每個實體(玩家、敵人)設置一個程序,每個實體(玩家、敵人)執行自己的邏輯,並使用一個主程序作為競爭條件檢查的中間基礎(可能不是因為它是不喜歡它提高性能,而且它他媽的很複雜!他們為特殊情況做這種事情,即使如此,如果他們正在實施適當的競爭條件檢查,Ornstein 應該無法吸收 Smough,而 Smough 正在同時檢查狀態奧恩斯坦)

那場boss戰中的音樂是整個遊戲中最好的(imo)。

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