10.01.2020

如何設定WinKawaks的熱鍵 (HotKey)?

這一篇BLOG要記錄的是:在WinKawaks模擬器上,如何設定熱鍵 (HotKey)。首先載入乙款遊戲─這裡以「餓狼傳說 最終決戰2 - 新的來者 (Real Bout Fatal Fury 2: The NewComers)」來做範例。打開WinKawaks模擬器的按鍵相關設定:功能表列「遊戲 (G)」,下拉式選單「重設按鍵 .... (如下圖);因為有一些遊戲可以允許2位玩家以上同時進行,所以模擬器也有相對應的設計。在這裡我們選擇「重設玩家按鍵1 .... 」,也就是一般所謂的1P玩家。
從模擬器的示意圖來看,非常容易理解:,4個方向鍵,再加上ABCDEF,6顆按鈕鍵。當然,街機遊戲一定會有個投幣 (Coin),要投完錢之後才可以開始 (Start);而重置 (Reset)可以讓遊戲重新開始,Test Menu (測試選單)則是可以進入遊戲基板的BIOS對該遊戲進行一些更細節的軟體設定。以上的這些設定,都可以透過鍵盤 (Keybroad)或是搖桿 (Joystick)

而重設按鍵視窗下方的「Macros (巨集)」則無法從模擬器的GUI (Graphic User Interface,圖形化使用者介面)來做設定,必須從該遊戲的設定檔來做設定。

通常該遊戲的設定檔,會和該遊戲的ROM檔名稱相符。例如遊戲的ROM檔名為rbff2.zip,它的設定檔就會叫做rbff2.ini。它儲存在與WinKawaks模擬器同一個目錄下的ini資料夾,"ini"的意思是Initialization (初始化)

當我們打開設定檔之後,';'開頭的行數,代表該行為註解 (Comment),模擬器並不會執行到該行。而我們所要設定的區塊,是[Macros] (巨集)
[Macros]

; Macros for player 1
Macro1A=
Macro1B=
Macro1C=
Macro1D=
Macro1E=
Macro1F=
Macro1G=
Macro1H=
Macro1I=
Macro1J=
巨集的語法 (不區分大小寫):

1. U (Up)

2. D (Down)

3. F (Front) / L (Left)

4. B (Back) / R (Right)

其中左和右最早的設計是分別使用Front (前方)Back (後方),但這樣的設計對某些格鬥遊戲的2P玩家很難理解,因為方向是剛好相反的,所以後來才衍生成L (左方)R (右方),不管是1P或是2P玩家,都是指同樣的方向。
按鈕鍵的部份則是:A1 / B2 / C3 / D4 / E5 / F6

',',是指「進行到下一偵 (Frame)」;

'~',是指「停留20個偵」,約1秒鐘

'+',是指「同時執行」。

5. 左上UL / UB

6. 左下DL / DB

7. 右上UR / UF

8. 右下DR / DF

實例解說:快打旋風2:世界勇者 (Street Fighter II - The World Warrior)裡的俄羅斯摔角手─維克多 桑基爾夫 (Victor Zangief)的必殺技─原子爆擊:搖桿轉一圈 + 重拳 (HP, Heavy Punch)為例:
Macro1A=f,df,d,db,b,ub,u,uf,f3

Macro1B=F,DF,D,DB,B,UB,U,UF,F3

Macro1B=r,dr,d,dl,l,ul,u,ur,r3

Macro1D=R,DR,D,DL,L,UL,U,UR,R3
以上這4組指令完全可行!搖桿轉一圈可以解譯為: (R)右下 (DR) (D)左下 (DL) (L)左上 (UL) (U)右上 (UR) (R),最後再加上重拳 (3)

快打旋風2 加強版:超級格鬥 (Street Fighter II' TURBO - Hyper Fighting)裡的塔爾錫 (Dhalsim)必殺技─瑜珈念力:→↓↘ + 3顆拳一起按
Macro1E=R,D,DR,123+
最後的'+'符號即代表:輕拳 (LP, Light Punch)中拳 (MP, Middle Punch)重拳 (Heavy Punch)這3顆按鈕要同時執行

若是需要聚氣 / 集氣的招式呢?以威廉 F‧凱爾 (William F. Guile)為例:

音速斬擊:← (聚氣2秒鐘)→ + 重拳 (HP, Heavy Punch)
Macro1F=L~~,R3
黃金腳刀:↓ (聚氣2秒鐘)↑ + 重腳 (HK, Heavy Kick)
Macro1G=D~~,U6
像原子爆擊這種「搖桿轉1圈」的指令,不分1P或是2P玩家均可成立;但需要集氣的角色怎麼辦?是否需要換到2P的位置時,也要設定1組巨集?沒關係:
; Player 1 macros
Key1_MacroReverse=1
Key_Macro1A=262
Key_Macro1B=267
Key_Macro1C=0
Key_Macro1D=0
Key_Macro1E=0
Key_Macro1F=0
Key_Macro1G=0
Key_Macro1H=0
Key_Macro1I=0
Key_Macro1J=0
把"Key1_MacroReverse"設定為1即可!這種設計方式,是採用大部份的程式語言「非零 (0)即真 (1)」的觀念,模擬器偵測到該遊戲為格鬥遊戲,且此值的設定為1時,當玩家運行到2P的位置時,會自動地把巨集指令的左右互換!

到這裡玩家一定會有一個疑問:執行這些指令時,搖桿是否一定要置中 / 回正?不一定!玩家想玩的遊戲,除了設定完巨集之後,一定要先在遊戲中驗證一次,以原子爆擊為例,我在防禦中 (Back / Left)當敵人接近時,可以精準地使用出來;當我前進 (Front / Right)靠進敵人時,也可以使用出來。

每乙種巨集指令均可以成功嗎?未必!超級快打旋風2 X: 絕世高人 (Super Street Fighter II X - Grand Master Challenge)維克多 桑基爾夫 (Victor Zangief)的超必殺技─終級原子爆擊:搖桿轉2圈 + 重拳
Macro1H=R,DR,D,DL,L,UL,U,UR,R,DR,D,DL,L,UL,U,UR,R3
這條指令我就執行失敗!所以指令巨集設定完成之後,一定要回到遊戲中實驗一下,才知成功與否。

如果是像越南大戰 / 合金彈頭 / 鋼鐵蟲師 / Metal Slug這種射擊遊戲,我需要自動射擊 (Auto Fire)呢?
Macro1I=1,+
到這裡,我們的指令巨集設定檔也編輯的差不多了,最要要記得存檔,準備離開。

重新執行WinKawaks模擬器,功能表列「遊戲 (G)」,下拉式選單「重新從.ini載入設定值」,把你剛才所編輯的指令巨集,設定給你想要使用的熱鍵,最後再執行「現在儲存設定值到.ini」,即可大功告成!

沒有留言:

張貼留言