孤膽槍手2地圖編輯器快速入門教程

本文介紹孤膽槍手2地圖編輯器的基本用法,供有意向設計孤膽槍手2新關卡的玩家參考。關于各類物品的編號及具體效果的制作流程,后續(xù)會開新文章或視頻說明。

一、基礎知識
孤膽槍手2(Alien Shooter 2)地圖編輯器(以下簡稱“編輯器”)是一個可以讓您編輯游戲地圖(關卡)的程序。
孤膽槍手2的所有地圖均位于游戲目錄下的Maps文件夾中,地圖文件的后綴為*.map。該文件夾中除包含地圖外,還包含一些*.men文件,這些文件存有游戲中存在的各種菜單(游戲欄、主菜單等)的信息,它們也可用地圖編輯器來編輯,該專欄僅針對地圖編輯作講解,暫不涉及此方面。
每個地圖都必須有一個相對應的腳本文件,其文件名與地圖相同但后綴為*.lgc。例如,地圖Level_01.map 對應的腳本文件為Level_01.lgc。腳本的語法與C語言基本相同,但包含一個特殊用法——iff,其作用與if語句相同,但該語句中所有內容只會被執(zhí)行一次,這在每一關開頭使用不同值初始化時非常有用。
組成一幅地圖的基本單位稱為“構件”或“對象”(英文為“Unit”、“Object”等)。每幅地圖都有一個尺寸,以長x寬的形式表示,如6000x4000。編輯器中,所有長度均以“像素”為單位。每個構件的位置以XYZ三軸坐標表示,下文若無特殊說明,構件的“位置”“坐標”指其XY軸坐標,“高度”指其Z軸坐標。
在編輯器中,您可以自定義地圖中每個構件所執(zhí)行的命令(編輯器中稱為stack),從而控制它們在游戲中的行為。更多詳情,請訪問http://sigma-team.ru/forum/ 或 http://as2mods.ru/forum/(注:以上網址均已失效)。
注:評論區(qū)會分享地圖編輯器的壓縮包,包含適用于孤膽槍手2和僵尸槍手2的兩個版本,前者適用于孤膽槍手2原版、重裝上陣、征兵,后者適用于孤膽槍手:重臨(孤膽槍手一代重制版)和僵尸槍手2,根據需要選擇適用的版本,下載后將壓縮包中所有文件解壓到游戲目錄,若有重名文件則覆蓋。
由于對地圖編輯器了解不透徹(特別是對其中的命令,可參考資料太少了),文中難免有錯誤或疏漏之處,懇請各位多加指正。
二、了解編輯器
若您的游戲版本為孤膽槍手2原版,請執(zhí)行MapEdit_as2.exe;若是孤膽槍手2重裝上陣或征兵,請執(zhí)行MapEdit_as2r.exe;若是孤膽槍手:重臨(孤膽槍手一代重制版)和僵尸槍手2,請運行MapEdit.exe。
運行后會彈出一個設置窗口,請務必取消勾選“Full Screen”,然后點擊“OK”進入編輯器主界面。
在學習如何使用編輯器的過程中,建議您先了解如何對現(xiàn)有地圖進行編輯,然后再從頭開始創(chuàng)建新的地圖。例如,您可以嘗試修改Stand Firm模式的地圖,其文件名為survivor_standfirm_01.map。

編輯器具有放置和修改(Tactic)兩種模式,它們之間的切換通過工具欄上的“OBJ”按鈕來完成。
放置模式下,在地圖區(qū)域內任一點按下鼠標左鍵,所要繪制的構件會放置在剛才的位置上。構件類型可通過工具欄上的按鈕來切換。
修改模式下可以對地圖上已有的構件進行編輯,例如修改其所在的位置、設置要觸發(fā)的事件等等。修改模式下光標會變成一個綠色向下箭頭,此時您可以選擇地圖中的任何構件。要同時選中多個構件,則點擊左鍵不放,在編輯器內拉框,這樣框中所有同一類型的構件都會被一次性選中?;蚴前醋trl鍵不放,連續(xù)點擊地圖中多個構件。同樣地,選擇構件的類型通過工具欄切換。
選中構件后按Enter鍵,會打開該構件的屬性窗口,從而對其所在位置、所處陣營(即Army的值)、觸發(fā)事件、掉落物品、外表顏色、尺寸大小等屬性進行設置。

地圖編輯完成后,請點擊工具欄上的“保存”按鈕,或執(zhí)行“File->Save”(文件→保存)命令保存所做的修改。若您直接退出,編輯器將不會提示您保存,未保存的修改內容將隨之丟棄。
通過執(zhí)行“File->Open”(文件→打開)命令,或點擊工具欄的“打開”按鈕來打開一幅現(xiàn)有地圖。
三、地圖編輯器的具體使用方法
1. 基本使用
首先需要注意,“File->New”(文件→新建)及工具欄的“新建”按鈕用于修改地圖的尺寸等屬性,而非新建地圖。地圖屬性(Map Property)窗口中“Size”部分用來修改地圖尺寸,一般而言,尺寸越大,對計算機硬件的需求也越高。左側“Gamma”欄調整地圖的光照屬性,“Environment”欄用于設置地圖的下雨、下雪等效果。

若要將地圖已其他文件名保存,或存儲到其他目錄,請執(zhí)行“File->Save As”(文件→另存為)命令,或同時按Shift和F2鍵。戰(zhàn)役(Campaign)模式的地圖文件名通常為“Level_xx.map”,其中“xx”為關卡編號。
若要創(chuàng)建新地圖,請打開new.map文件,將其以不同文件名保存,再對其進行編輯。
地圖必須包含且只能包含一個玩家本體,其編號為009(注:孤膽槍手2系列玩家本體的編號為250)。其位置將作為本關的玩家初始位置。

工具欄各按鈕含義如下。

建造墻壁時需開啟“網格布放”模式,該模式通過按下鍵盤的“S”鍵開啟。
鋪設地板時,需同時打開“網格布放”和“窗格布放”模式。接下來,選擇“地形”(Terrain)類型構件,找到地板。要沿對角線繪制地板,請按住 Shift 鍵并按住鼠標左鍵向所需方向移動。

地圖每隔一段時間會自動保存到其所在的目錄,名稱為autosave.map。
游戲開始時,內置構件會創(chuàng)建一個Z軸坐標來創(chuàng)建墻壁和地板。
在編輯器中,為了將光標下的構件放置在地面上,建議保持“自動對齊高度”模式開啟。
若要編輯已有構件,請點擊工具欄中的切換模式按鈕,或按空格鍵,切換到修改模式。切換到合適的構件類型,以選定所要的構件。例如要選擇一堵墻,您必須先點擊工具欄上的“綠樹”按鈕(對應“Objects”類型),因為墻屬于“Objects”類。

要移動選定的構件,您需要按住 Shift 按鈕并按鍵盤上的箭頭鍵。
選中構件后按Enter鍵,將會進入該構件的屬性窗口,在其中您可以編輯該構件要觸發(fā)的事件。例如,要想讓寶箱打開后掉落物品,您需要在屬性窗口右側的列表里選擇一個構件。(注:實際是在右下方Name下拉列表中選擇一個物品,若要實現(xiàn)隨機掉落,可以多次在下拉列表里選擇不同物品。)

屬性窗口的左側可以編輯構件要執(zhí)行的命令,例如控制人物向某一點前進。

請不要直接在地圖中放置大量敵人,這樣會導致游戲運行緩慢。您可以使用一些特殊的構件(如“怪物生成器”,編號908,適合放在暗處;傳送機,編號1250;地洞,編號1380等等)輔以一些命令,從而達到類似的目的。同樣地,您可以先參考現(xiàn)有的地圖來了解它們的用法。

要想在游戲中體驗您創(chuàng)建的地圖,需要在alienshooter.cfg文件中的"[game]"部分加入如下語句:
隨后運行alienshooter.exe主程序。
2. 按鍵定義
+,-:切換不同構件(僅放置模式);
Home,End:調整構件角度;
F:使用選定構件填充整個地圖(可用于快速鋪設地板,不建議如此操作);
S:開啟/關閉“網格布放”模式;
鼠標左鍵:放置構件(放置模式)/選擇一個構件(修改模式);
Ctrl+鼠標左鍵:移除鼠標位置已有的構件(放置模式)/選擇多個構件(修改模式);
按住鼠標右鍵并移動:調整要插入構件的角度(僅放置模式);
.(句號鍵):順時針調整要插入構件(放置模式)或選中構件(修改模式)的角度;
,(逗號鍵):逆時針調整要插入構件(放置模式)或選中構件(修改模式)的角度;
數字鍵:設置要插入構件的高度,以10為單位(例:若插入前按下了“7”鍵,則插入后該構件的高度為70)。僅放置模式有效;
F2:保存地圖;
F3:打開地圖;
Del:移除所選構件(僅修改模式);
[,](方括號鍵):調整要插入構件(放置模式)或選中構件(修改模式)的高度,直接使用方括號鍵會以1為單位進行調整,若同時使用Shift和方括號鍵,則會以90為單位進行調整;
鼠標滾輪:調整要插入構件(放置模式)或選中構件(修改模式)的高度;
C:定位到編輯器窗口中央;
Shift+C:定位到地圖中央;
Shift+O:將所有構件以矩形框?。?/p>
TAB:打開/關閉編輯器右下角的縮略圖;
Shift+方向鍵:移動所選構件;
Shift+鼠標滾輪:以90為單位,調整選中構件的高度;
Ctrl+Ins,Ctrl+C:復制所選構件;
Shift+Del,Ctrl+X:剪切所選構件;
Shift+Ins,Ctrl+V:粘貼構件至鼠標所在位置(需要剪切/復制了一個構件);
~:打開/關閉右側構件選擇面板;
在修改模式下:
R:為選定構件添加“ACT_RANDOM”命令,添加后選定該構件時,構件編號下方會出現(xiàn)跳動的“R”標識;
L:為選定構件添加“ANI_LAZY/ANI_CLASH”命令,添加后選定該構件時,構件編號下方會出現(xiàn)跳動的“L”標識;
Enter:進入選定構件的屬性窗口;
按住鼠標左鍵并拖動:選中一定矩形范圍內的所有同類型構件;
同時按住Shift鍵和鼠標左鍵并拖動:選中一定范圍內(任意形狀)的所有同類型構件;
Ctrl+鼠標左鍵:同時選擇多個構件;
Alt+鼠標左鍵:同時選擇多個構件(與前一條區(qū)別在于,再次點擊已選中構件時不會取消選擇該構件);
鼠標右鍵:為所選構件創(chuàng)建運動軌跡(或選定攻擊對象)。
四、命令列表
在編輯器中,每條命令都具有三個屬性值,各個屬性值的含義隨命令的變化而變化。部分命令僅使用第一個或前兩個屬性值,也有一些命令不使用任何屬性值。以下命令,未提及的屬性值均為0。




ACT_SCRIPT_VAR/ACT_WHILE_NOT_SCRIPT_VAR使用示例:
在地圖的某一構件(一般為編號922的腳本執(zhí)行器)中,設置如下命令:
當玩家進入以(2250, 3500)為中心、半徑150的區(qū)域內時,將會觸發(fā)自定義事件10-1。
在另一構件(如怪物、友軍等)中設置:
這意味著,事件10-1觸發(fā)后,該怪物或友軍將向指定位置(2550, 3150)移動。


五、關于編輯器出現(xiàn)界面不顯示問題的解決方法
這是編輯器設計時的一個bug,若您直接在系統(tǒng)任務欄中關閉了編輯器,下次打開時就會出現(xiàn)編輯器主界面無法出現(xiàn)的情況。該問題可通過修改注冊表來解決。
首先找到地圖編輯器的注冊表所在位置。若您的游戲為孤膽槍手2原版,用記事本打開游戲目錄下的“MapEdit_as2.cfg”文件;對于孤膽槍手2重裝上陣、征兵,請打開“MapEdit_as2r.cfg”文件;對于孤膽槍手:重臨和僵尸槍手2,請打開“MapEdit.cfg”文件。找到“[common]”部分的“RegPath”一項,記下后面的一串路徑(默認為“SOFTWARE\SigmaTeam\MapEdit”)。
打開注冊表編輯器,點擊左側“HKEY_CURRENT_USER”項,按照上一步記下的路徑一步步尋找,找到以后修改右側“WindowPositionX”和“WindowPositionY”兩項的值為較小的數值(基數選十進制),例如100。修改完成后重新打開編輯器,此問題即可解決。

參考資料
1. 孤膽槍手2地圖編輯器自帶說明文檔(manual.txt)
2. 百度“孤膽地圖編輯器”貼吧