原文鏈接:點擊跳轉
原文作者:稲垣宗彥 (Fami通)
發佈時間:2024年8月26日
翻譯:1zzard
本人能力有限,最終成品可能與原文存有區別。如對部分語句、段落等存有疑問,請查閱原文。不便之處,敬請理解。
日本最大的電腦娛樂開發者大會CEDEC2024 (Computer Entertainment Developers Conference 2024) 於2024年8月21日-23日舉行。我們將為大家帶來有關《街霸6》AI機制的分享:如何讓AI的運作邏輯滿足初學者到高級玩家的需求。來自卡普空CS第二開發部第一遊戲設計室的安原直宏為大家講解了《街霸6》AI設計的相關邏輯。
AI行為隨等級而有所變化
安原直宏負責《街霸6》的劇情模式和CFN (Capcom Fighters Network) 等功能的設計,使得玩家可以在劇情模式中挑戰AI對手。除了自我介紹以外,他還對格鬥遊戲的基本規則做了講解,例如將對手生命值降為零即為獲勝。隨後,分享進入了正題,分為以下三方面:
- 格鬥遊戲裡的AI
- AI類人行為的三個方面
- 關於長期運營
首先,這裡的AI是指由CPU(電腦)運行的角色行為邏輯,或者說是決定AI行為動作的邏輯和程序。安原直宏展示了AI角色的“行為規劃表”,用於展示不同級別的AI將會使用的行為。
AI共分為8個級別,數字越高,代表著AI越強。例如幾乎是純移動的1級AI,有時會進行跳躍的3級AI,以及BOSS般的6級AI。另一方面,橫向座標表示著AI會採取的行動,例如移動、打擊、防禦、跳躍,以及必殺技等,共分為8個維度。
在表格中,很明顯地可以看到,隨著級別越高,AI的行為選項會隨之增加,而且也會更準確。所示表格為“行為規劃表”,雖然做出了一些調整,但在實機版本中的AI幾乎還是按照預設規劃去執行相應的行為。
AI的兩種表現
AI在遊戲中扮演著兩個角色。一個是在單人動作遊戲中出現的角色,另一個則是在PvP中出現的虛擬對手,引導玩家進階。
前者用於讓玩家熟悉遊戲操作,展示角色性格與魅力。後者更多是扮演著讓玩家瞭解更多進階技巧和戰鬥策略的特殊角色。
在“PvP設計”中,本作的AI實現了協調,向玩家傳達了“何時可以或不可以反擊”,讓玩家理解每個角色之間的差異,瞭解遊戲有關“反擊”的基本邏輯。此外,當達到更高水平時,AI會展示更酷更進階的操作。在這種情況下,AI就像是“師父”一樣給玩家提供示範。
用卡牌遊戲的形式講解AI邏輯
進入會議主題“類人行為的三個方面”後,安原直宏用卡牌表示AI的每個動作。通過這種形式,可以容易直觀地瞭解《街霸6》AI的邏輯是如何構建的。
無論是AI還是玩家,根據現有的條件,可以採取的行動選項都是有限的。例如,如果對手起跳,你可以“防禦”或“對空”。安原直宏將每種情況下可採取的行動選項稱為“卡組”,將其描述為“戰術”。
換言之,“類人行為的三個方面”的主旨是指戰術、操作和執行。首先總結一下,AI等級越高,戰術模式就越多,可搭配組合的戰術就越多樣化,執行能力也隨之越高。
根據安原直宏的說法,AI操作的每個角色都有一張可決定其特點的“關鍵牌”。AI的主要任務是如何打出這些關鍵牌,即如何展示出每個角色的特點。AI級別越高,需要搭配使用的關鍵牌就越多,操作也就越複雜。
在最終使用卡牌的時候,“執行力”的判斷是首要的。例如有這麼個對局,隆對上桑吉爾夫。桑吉爾夫步步緊逼,使用一些普通技迫使隆進行防守。隆的防守硬直為桑吉爾夫創造了有利條件,原以為他會使用“螺旋打樁機”。但出人意料的是,桑吉爾夫後跳離開了。
出現這種情況是因為“螺旋打樁機”的指令需要用搖桿轉動一週。搖桿轉動一週後,“拳”按鍵輸入延遲了,這從旁邊的輸入指令就可以看出問題。AI角色在輸入指令時也會出現玩家易犯的常見失誤。
據安原直宏所述,AI會根據局面將所感受到的“壓力”轉化為一個係數,指令成功與否會受到等級浮動的影響。換句話說,等級越低的AI,越容易受壓力影響,執行力就會變低。
低等級的AI戰術匱乏,執行力低。中高級的,如6級AI,某種程度上戰術較少,但執行力有所提升。至於7級AI,戰術方面變得更老練,但執行力是不穩定的,你仍可以看到它在判斷和執行上出現失誤。《街霸6》的AI就是從這三方面表現出類人的行為邏輯。
另外,作為補充,安原直宏繼續講解了如何讓玩家覺得AI更像是人。根據AI等級,命中對手時,進攻優勢的不同會造就應對方式的差異。粗略地說,可以理解為“不知道有利”、“知道有利”,以及“知道領先了多少幀”。
例如攻擊揮空了,這種情況下不管是輕攻擊還是重攻擊,都是不利的。但是,當命中對手時,“攻擊強度”會影響到接下來的行動。如果清楚知道有利幀數,那麼就可以判斷下一步收益最大的行動。如果下一步行動也命中了,那麼就可以判斷該採取哪套戰術。
通過降低更新成本以應對長期運營
分享會議中的最後一個話題,即關於《街霸6》的長期運營。大部分長期運營的遊戲,都會在遊戲面世後通過版本升級來實現變更。但《街霸6》則在設計時便努力降低對版本更新的依賴。
減少對版本的依賴,以便在版本更新時出現的數據調整差異不會影響到AI的行為。AI在做出行動決策時所需要的信息,是對當前情況的數據進行讀取,而非具體的某個數值。
安原直宏表示,通過從戰略、戰術和執行力三個維度進行總結,並根據執行決策將其組合連接起來。結果便是這套邏輯可應對長期運營,同時反饋給廣大玩家。
以卡牌遊戲的方式表達勝利
安原直宏在問答環節中表示,每當《街霸6》AI發生變化時,其下一步操作也會隨之變化。AI邏輯採用了類似所謂狀態機的模型,但精妙之處在於,在這次分享中,安原直宏將其與卡牌遊戲進行類比,以非常圖像化的形式,直觀地向觀眾展示了其運行邏輯。
順帶一提,每張卡牌的左上角都有“行動成本”,底部則是可造成的“傷害”,甚至還有動作招式的指令。AI需要考慮“行動成本”(即發生幀數)並決定是否打出這張牌。卡組變得更復雜且多樣化。但對於熟悉遊戲的人而言,這是相當直觀的。
有意思的是,“壓力”被用作為一項係數,並通過局勢判斷和執行力的浮動,調整其強度,有助於讓AI更像人。例如前面提到的,桑吉爾夫指令失誤變成後跳。
雖然分享會議時間很短,但對於觀眾來說還是頗有意義和樂趣的。