MapleStory Portal
每日簽到
‹ 返回 楓之谷綜合技術交流
…
t9540513
地圖編輯器 HaCreator 全功能圖解:從認識按鈕到做出新地圖
發表於
4 小時前
複製鏈接
t9540513
發表於
4 小時前
|
顯示全部樓層
|
閱讀模式
【前言】
地圖編輯器的按鈕一大堆,說明檔又打不開,很多人打開後不知道從哪裡下手。
這篇把地圖編輯器的功能一個一個講清楚:每個按鈕做什麼、每種東西怎麼放、背景怎麼重複和移動、VR 和小地圖是什麼,最後從零做一張地圖放進遊戲。
文章很長,建議先看【觀念】和第一部分,其他用到再回來查。每一段都是實際操作截圖。
【觀念】
地圖要做兩份:遊戲一份、伺服器一份
遊戲(客戶端)的 Map.wz:負責「畫出來」,背景、地板、怪物長什麼樣子。
伺服器(端口)的 XML:負責「規則」,人站在哪、怪在哪重生、傳送門通到哪。
只改一邊,常見的結果是進地圖就斷線,或走得進去但怪物不出現。
一張地圖由這些東西組成
編輯器右邊的素材面板,就是照這個分的。先有個印象,後面每一種都會講到。
【準備】
先備份:把遊戲資料夾的 Map.wz、String.wz 各複製一份放旁邊。改壞了直接蓋回去。
想好新地圖的代碼:9 位數、沒被用過。本篇用 960000555。
打開編輯器:選有整套 WZ 的遊戲資料夾,Encryption 用 Auto-Detect,按 Initialize。
【第一部分】認識編輯器
1. 主畫面
上面是功能區(View、Tools 兩個分頁),中間是地圖,右邊是素材面板。
最下面的狀態列會顯示滑鼠的座標(Cursor)和目前縮放倍率(Scale)。
縮放:按住 Ctrl 再滾滑鼠滾輪。
2. 主選單
左上角藍色按鈕打開。最容易搞錯的是 Save to WZ 和 Repack:Save to WZ 只是放進編輯器的記憶體,Repack 才真的寫成檔案。
3. 開地圖:Open、New、Clone
重要:想做一張「新代碼」的地圖,要用 New 開空白地圖。
用 Clone 或 Open 打開現有地圖,存檔時只能存回原本的代碼(等於改掉原地圖)。我實際用 Clone 複製一張地圖,存成新代碼就跳錯誤:
想參考現成地圖的做法:Clone 一張開著當參考(不存檔),另開 New 的空白地圖照著擺。
4. View 分頁
小技巧:地圖東西太多、一直點錯時,把不想動的類別改成「方塊(半勾)」,看得到但點不到。
5. Tools 分頁
6. 右鍵選單
7. 常用操作和快捷鍵
【第二部分】每一種東西怎麼放
8. 地板(Tile)
一組地板由這幾種零件組成:
先在 View → Layers 點一個圖層(例如 0)。
右邊 Tile 面板選一組地板樣式,點零件,到地圖上點一下放下,往旁邊接著點。
用完在空白處按右鍵放下。
用 enH0(上緣)鋪的地板會自動產生紅色的腳踏線,角色就站在這條線上。
一個圖層只能用一組地板樣式。在同一層放另一組,編輯器會問要不要把整層換掉,想混用請換圖層。
清單裡有一組 allInvisibleTile,是透明地板,可以做「看不見的路」。
9. 物件(Object)
房子、樹、招牌、繩子圖案這些裝飾都是物件。
物件只是圖案,不能站。要讓人站在房子屋頂上,屋頂那裡要另外有腳踏線(用地板,或 Common → Foothold 手畫)。
10. 背景(Background)
右邊 Background 面板選一組背景,下面選 Static(或 Animate)。
點要用的圖,放到地圖上。
雙擊背景打開設定,選排列方式(Type)。
背景有 8 種排列方式,下表附上端口地圖資料裡實際用到的例子:
11. 讓背景動起來
背景會不會動,看 Type 有沒有 Moving。選了 Moving,Parallax 的 X(或 Y)就變成移動速度:
我把弓箭手村開進預覽視窗,隔 3 秒各截一張,雲確實往左飄:
編輯畫面不會畫出重複和移動,要按 Tools → Preview 才看得到:
另外還有本身就會動的背景(Animate),以及畫在角色前面的前景背景:
12. 怪物、NPC(Life)
選 Mob 或 NPC → 點清單 → 點預覽圖拿起來 → 放到地板上方,它會自己落到腳踏線上。
怪物和 NPC 下面一定要有腳踏線:存檔時編輯器會幫它找腳下最近的腳踏線,找不到就會有問題。
看到黃色叉叉,代表這個 NPC 或怪物在 WZ 裡沒有圖,刪掉換一個:
Reactor(反應物):可以打、會掉東西的物體(例如箱子),一樣在 Life 面板選。
13. 傳送點(Portal)
一般傳送門雙擊後填三個欄位:
傳送門要「名字配名字」,兩邊地圖的門都要互相指到對方:
14. 手畫腳踏線、繩子、椅子、告示(Common)
手畫腳踏線:
繩子和梯子:
椅子:點 Chair,到腳踏線上點一下,就是一個可以坐的位置。
告示:
15. VR 和小地圖
沒加 VR 的地圖,伺服器會改用腳踏線的範圍當邊界。但玩家畫面可能看到地圖外面的空白,建議加。
存檔(Save to WZ)時編輯器會自動重新產生一次小地圖。
16. 地圖資訊(Edit map info)
在地圖分頁按右鍵 → Edit map info。
站上的端口就有一個真實例子:990002003~990002005(公會領地城門口)的名稱被放在 HaCreator 分類底下,
但端口會去 etc 找 9 開頭地圖的名稱,所以伺服器讀不到這幾張地圖的名字。做新地圖時記得改 Category。
Other Settings 分頁是各種開關和地圖限制:
Optional 和 Structured Optional 是進階玩法:
17. 地圖物理(Map Physics)
18. 設定(Settings)
【第三部分】做好的地圖怎麼放進遊戲
19. 收尾:小地圖、固定腳踏線
地圖分頁右鍵 → Add Minimap,再按 Tools → Regenerate Minimap。
全部擺好、確定不再移動地板,最後按 Tools → Finalize Footholds。
20. 存檔:Save to WZ → Repack
主選單 → Save to WZ,填新代碼。代碼已經有地圖會出現紅字,Save 按不下去,不怕蓋掉別人的地圖。
主選單 → Repack WZ Files,勾要寫的檔案(Map.wz;有改地圖名稱或告示的話,String.wz 也要勾),按下去才會真的寫成檔案。
依 HaCreator 原始碼,遊戲資料夾可以寫入時,會直接換掉遊戲資料夾的 WZ,舊檔改名成 Map.wz_BAK_日期 留著;不
能寫入時會寫到編輯器資料夾的 HaCreator\Output,要自己拿去換。
請以跳出的訊息為準,而且一定要先備份。
21. 匯出到端口
伺服器也要有這張地圖,不然走傳送門或用指令過去會出錯。
用 WZ 編輯器打開新的 Map.wz,找到 Map → Map9 → 960000555.img,按右鍵匯出 XML,選「伺服器端」。
放到端口 wz 資料夾的同樣位置:Map.wz → Map → Map9。
有改地圖名稱:String.wz 的 Map.img 也要匯出,蓋掉端口的 wz → String.wz → Map.img.xml。有放告示,ToolTipHelp.img 也一樣。
傳送門有改到別張地圖(例如弓箭手村的門),那張地圖也要重新匯出。
匯出後用記事本打開地圖 XML,確認下面這幾個都在,少一個伺服器讀這張地圖就會出錯:
22. 進遊戲測試
伺服器重新讀取(有重載功能就重載,沒有就重開伺服器),遊戲也完全重開。
GM 帳號輸入:!map 960000555
確認:人出現在出生點、怪會走會重生、傳送門走得過去也走得回來、背景有在動。
顯示「地圖沒有被定義」:伺服器還沒有這張地圖,回第 21 步檢查 XML 放的位置。
【斷線排查】進地圖就斷線
通常是「用到的東西,遊戲裡找不到」。照這張表一項一項對:
【後記】
重點整理:
新代碼的地圖用 New 開,Clone/Open 的只能存回原代碼。
Save to WZ 只進記憶體,Repack 才寫檔;先備份。
背景要動:Type 選 Moving,Parallax 的數字就是速度(負數往左);效果要按 Preview 看。
怪物、NPC、椅子腳下都要有腳踏線;沒有地板的地方可以手畫(每個點雙擊)。
Category 照地圖代碼填(9 開頭填 etc),不然伺服器讀不到地圖名稱。
Map Physics 是全遊戲共用的,別亂改。
客戶端 Map.wz(和 String.wz)、端口 XML 兩邊都要更新。
回復
使用道具
舉報
提升卡
置頂卡
沉默卡
喧囂卡
變色卡
千斤頂
顯身卡
瀏覽
44
回復
0
您需要登錄後才可以回帖
登錄
|
註冊會員
送出留言
返回頂部