【專欄】方塊的戰爭:淺談格鬥遊戲的精髓



經「機核網」授權轉載,在此僅做簡繁轉換,並不修改內文用字。

原始文章連結:「方塊的戰爭:淺談格鬥遊戲的精髓」  / 作者 Xizonbu

為什麼這招式能打中你,為什麼逆向能有判定,為什麼我都跳了還能吃你的必殺,種種奧妙其實都能用一個「框」字來解釋。

不知道有多少朋友聽了之前我們錄製的「ACT之難」的專題節目,在節目中我們的嘉賓白夜曾經用了「框」的概念為大家介紹了角色碰撞與攻擊的判定是如何運作的,不少玩家也表示對此非常好奇。而今天我們也請到資深格鬥遊戲愛好者 Mashers 為大家好好講講格鬥遊戲發展以來的各種「框」,到底有多神秘。

「框」的奧秘

2D格鬥遊戲對於廣大玩家來說應該都不陌生。從開創系列的鼻祖街霸到紅遍國內大江南北的拳皇,都滿載著格鬥迷們的熱血和回憶。任何一名硬核格鬥玩家對於每屆的斗劇和EVO的執著,不亞於球迷們對於世界盃的追捧。
得益於近些年《街霸4》的宣傳與官方活動,北美的EVO也成為了每年一度的格鬥盛會

作為一名沉迷於2D格鬥遊戲的玩家,我對於遊戲背後運作的原理有著濃厚的興趣。所以希望藉著這此機會,為大家淺析一下格鬥遊戲的運作原理。
2D格鬥遊戲其實就是一堆方塊的碰撞。這聽起來可能會讓你想起俄羅斯方塊,但是為了讓大家有個直觀的感受,我們用下圖來做解釋:
圖1. 隆和Rose的判定框[1]




在這幅圖中,除了左邊在發升龍的Ryu,和右邊在出對空指令投的Rose外,我們還能看到一些疊在一起的帶顏色的框框。這些方框就是判定框。它們才是格鬥遊戲裡真正的「主角」。

重新認識「判定」

格鬥遊戲裡常見的判定框分為以下幾類:攻擊判定、受創判定、投技判定、碰撞判定、飛行道具判定,下面我們來分別介紹。
1、攻擊判定
作為格鬥遊戲裡最為重要的判定框,攻擊判定直接決定了你的拳腳是否打到了對方。
圖2. 紅色區域為攻擊判定框[2]


從上圖中我們可以看到,兩邊的春麗都在用不同的重拳攻擊對方,在攻擊發生時,會出現紅色的判定框圍繞在她們的拳頭旁。這個就是攻擊判定框。當這個方框與對方身體重合時,系統就會認為你打到了對方。
聰明的你一定會想到,這個框越大,在對戰中不就越佔便宜嗎?確實是這樣,攻擊判定框的大小直接影響到了一款格鬥遊戲的平衡度:
圖3. 如月影二(左)超大的判定框[3]


所以在對戰中,有時候你覺得對方明明沒碰到你,但還是中招了,那很有可能就是這些看不到的判定框在作怪。
2、受創判定
從名字應該很容易理解,這個判定框所畫出的範圍如果和攻擊判定框重疊,那麼你就被打中了:
圖4. Hugo站中拳收招時所出現的深藍色以及淺藍色受創判定[4]


上圖中出現了兩種受創判定框,深藍色的受創判定是人物在站立時就固有的,在每個姿勢中都會出現。但是淺藍色的判定是只有在招式發出的那幾幀才有,並且會在收招後消失。
胖胖的角色受創判定會比較大,所以他們成為了連段視頻中最受歡迎的沙袋。
3、投技判定
投技判定的原理和攻擊判定一樣,但是如何判斷投技是否命中會因遊戲而異。我們這裡用《街霸33》來舉例
圖5. Hugo SA1超殺發動瞬間的橙色及綠色判定框[5]


上圖中,Hugo近身超殺的瞬間會出現投技判定(橙色判定框)。如果橙色框與對面的綠色被投判定框重疊,則超殺成立。下圖是豪鬼瞬獄殺的判定(是的,瞬獄殺是個投技):圖6. 豪鬼瞬獄殺那「短小」的投技判定[6]


我們可以看到街霸33中的地面投技判定都集中在腳部。這是為了防止站在地面的角色把跳在空中的對手給抓下來。當然,某些為了對空所設計的投技除外:圖7. Hugo對空超殺的判定[8]


我們可以看到Hugo自身的投與被投判定(橙色和綠色)的判定都增大了不少。
4、碰撞判定
碰撞判定是指遊戲人物自身在場景中所佔的面積。試想一下,當兩個角色面對面頂著走時,雙方是沒法穿過對方的。造成兩個人頂住的原因就是下圖中綠色的碰撞判定(判定框的顏色都是模擬器自己定義的,所以沒有某個顏色是固定的):
圖8. 豪鬼與春麗撞到一起


不要以為碰撞判定不重要,有時候碰撞判定的錯誤設定也會導致招式變的極不平衡。最著名的例子就是拳皇97里的八稚女:圖9. 八神背上高聳的淡藍色碰撞判定[7]


為什麼97里對戰時要禁用八稚女對空呢?為什麼一個貼著地板滑行的動作可以打到空中跳過來的對手呢?因為當對手跳過來時,會被八神高高的碰撞判定(淡藍色區域)給擋下來,然後落到他頭上的攻擊判定框上。所以為了修訂這招的BUG,98里做了如下調整:圖10. 經過修訂後的淡藍色碰撞判定[7]


當背上無形的「駝峰」被降低後,八神從此可以順滑的從對面下方穿過。
5、飛行道具判定
飛行道具就是指遊戲裡的各種波動。當一個波發出去後,它自身就具有了攻擊判定,這個就是飛行道具判定:
圖11. Remy的手刀和Urien的鏡子[2]
從上圖中我們可以看出,每個飛行道具都有一個粉色的框框,這個就是飛行道具的判定框。判定框本身的大小並不一定要符合視覺上的大小。比如Remy扔出的手刀,判定大小並不是一個扁平的長方形。Urien的鏡子也不像畫中那樣形成一個斜面,而是一個豎長條的判定。
註:圖11中各種白色的十字代表了各個物品以及人物的中心。

方塊的戰爭

形形色色的格鬥遊戲中存在著各種判定框,本文只總結了格鬥遊戲中最常見的判定框。通過圖解,我們瞭解了2D格鬥遊戲最基礎的構成。就像文章開頭所說的,在精美的像素畫背後,其實是各種「方塊的戰爭」。
直到今天,格鬥遊戲依舊沿用傳統而有效的判定框


有些朋友可能會問,為什麼非要把人物框到一個方塊裡,我們又不是在玩Minecraft 格鬥。為什麼不能有圓形,三角形甚至五角星形的判定框呢? 答案其實是可以的,但是開發者需要針對每種形狀做不同的碰撞處理計算。如果所有的框框都是長方形或者正方形,那麼碰撞計算就會容易很多。所以為了降低開發的複雜程度(也為了保證遊戲運行的幀率), 各種外形特異的人物和道具就都被框了起來。
今天Mashers的授課暫且先到這裡,如果關於格鬥遊戲您還有什麼感興趣的點,也歡迎經常來留言或者投稿,我們非常歡迎各種朋友的分享,另外大夥兒有空也可以去他的個人主站一逛,回頭見。

[2] Improved 3rd Strike hitboxes
[3]kof95 through kof2001 hitboxes
[4]Hugo / Strong hitboxes display...
[5]Hugo / Gigas Breaker hitboxes display...
[6]Gouki / Shun Goku Sastu hitboxes display...
[7]KOF97判定框查看方法及判定框顏色定義全解析!!!
[8]Hugo / Megaton Press (LK) hitboxes display...

6 意見:

  1. 茶猴子 提到...:

    好少有人在解釋這個東西 :D
    以前國中打格鬥遊戲
    都很難跟朋友解釋為什麼這個姿勢會被打到

  1. 匿名 提到...:

    請問ACT之難的節目或文章還能看到嗎?
    謝謝~

  1. Q~龍 提到...:

    茶猴子> 所以發現機核網有這樣的文章後,便立刻請益是否可授權轉載,以前台灣也有許多這類的專業文章,但多半都埋沒在 BBS 站裡了

  1. Q~龍 提到...:

    匿明> 應該可以?我找找看

  1. 匿名 提到...:

    謝謝您!

  1. 匿名 提到...:

    乍看以為是JOJO的黃金長方形

 
吹著魔笛的浮士德 © 2010 | Designed by Trucks, in collaboration with MW3, Broadway Tickets, and Distubed Tour