t9540513

地圖編輯器 HaCreator 全功能圖解:從認識按鈕到做出新地圖

發表於 4 小時前
t9540513 發表於 4 小時前 | 顯示全部樓層 |閱讀模式
image.png

【前言】
地圖編輯器的按鈕一大堆,說明檔又打不開,很多人打開後不知道從哪裡下手。
這篇把地圖編輯器的功能一個一個講清楚:每個按鈕做什麼、每種東西怎麼放、背景怎麼重複和移動、VR 和小地圖是什麼,最後從零做一張地圖放進遊戲。
文章很長,建議先看【觀念】和第一部分,其他用到再回來查。每一段都是實際操作截圖。

【觀念】
地圖要做兩份:遊戲一份、伺服器一份
  • 遊戲(客戶端)的 Map.wz:負責「畫出來」,背景、地板、怪物長什麼樣子。
  • 伺服器(端口)的 XML:負責「規則」,人站在哪、怪在哪重生、傳送門通到哪。

只改一邊,常見的結果是進地圖就斷線,或走得進去但怪物不出現。

001.jpg

一張地圖由這些東西組成
編輯器右邊的素材面板,就是照這個分的。先有個印象,後面每一種都會講到。

002.jpg

【準備】
  • 先備份:把遊戲資料夾的 Map.wz、String.wz 各複製一份放旁邊。改壞了直接蓋回去。
  • 想好新地圖的代碼:9 位數、沒被用過。本篇用 960000555。
  • 打開編輯器:選有整套 WZ 的遊戲資料夾,Encryption 用 Auto-Detect,按 Initialize。


003.jpg

【第一部分】認識編輯器
1. 主畫面
上面是功能區(View、Tools 兩個分頁),中間是地圖,右邊是素材面板。

004.jpg

最下面的狀態列會顯示滑鼠的座標(Cursor)和目前縮放倍率(Scale)。
縮放:按住 Ctrl 再滾滑鼠滾輪。

2. 主選單
左上角藍色按鈕打開。最容易搞錯的是 Save to WZ 和 Repack:Save to WZ 只是放進編輯器的記憶體,Repack 才真的寫成檔案。

005.jpg

3. 開地圖:Open、New、Clone

006.jpg

重要:想做一張「新代碼」的地圖,要用 New 開空白地圖。
用 Clone 或 Open 打開現有地圖,存檔時只能存回原本的代碼(等於改掉原地圖)。我實際用 Clone 複製一張地圖,存成新代碼就跳錯誤:

007.jpg

想參考現成地圖的做法:Clone 一張開著當參考(不存檔),另開 New 的空白地圖照著擺。
4. View 分頁

008.jpg

小技巧:地圖東西太多、一直點錯時,把不想動的類別改成「方塊(半勾)」,看得到但點不到。
5. Tools 分頁

009.jpg

6. 右鍵選單

010.jpg

7. 常用操作和快捷鍵

011.jpg

【第二部分】每一種東西怎麼放
8. 地板(Tile)
一組地板由這幾種零件組成:

012.jpg

  • 先在 View → Layers 點一個圖層(例如 0)。
  • 右邊 Tile 面板選一組地板樣式,點零件,到地圖上點一下放下,往旁邊接著點。
  • 用完在空白處按右鍵放下。


013.jpg

  • 用 enH0(上緣)鋪的地板會自動產生紅色的腳踏線,角色就站在這條線上。
  • 一個圖層只能用一組地板樣式。在同一層放另一組,編輯器會問要不要把整層換掉,想混用請換圖層。
  • 清單裡有一組 allInvisibleTile,是透明地板,可以做「看不見的路」。

9. 物件(Object)
房子、樹、招牌、繩子圖案這些裝飾都是物件。

014.jpg

物件只是圖案,不能站。要讓人站在房子屋頂上,屋頂那裡要另外有腳踏線(用地板,或 Common → Foothold 手畫)。

10. 背景(Background)
  • 右邊 Background 面板選一組背景,下面選 Static(或 Animate)。
  • 點要用的圖,放到地圖上。
  • 雙擊背景打開設定,選排列方式(Type)。


015.jpg

背景有 8 種排列方式,下表附上端口地圖資料裡實際用到的例子:

016.jpg

11. 讓背景動起來
背景會不會動,看 Type 有沒有 Moving。選了 Moving,Parallax 的 X(或 Y)就變成移動速度:

017.jpg

我把弓箭手村開進預覽視窗,隔 3 秒各截一張,雲確實往左飄:

018.jpg

編輯畫面不會畫出重複和移動,要按 Tools → Preview 才看得到:

019.jpg

另外還有本身就會動的背景(Animate),以及畫在角色前面的前景背景:

020.jpg

12. 怪物、NPC(Life)
選 Mob 或 NPC → 點清單 → 點預覽圖拿起來 → 放到地板上方,它會自己落到腳踏線上。

021.jpg

怪物和 NPC 下面一定要有腳踏線:存檔時編輯器會幫它找腳下最近的腳踏線,找不到就會有問題。
看到黃色叉叉,代表這個 NPC 或怪物在 WZ 裡沒有圖,刪掉換一個:

022.jpg

Reactor(反應物):可以打、會掉東西的物體(例如箱子),一樣在 Life 面板選。
13. 傳送點(Portal)

023.jpg

一般傳送門雙擊後填三個欄位:

024.jpg

傳送門要「名字配名字」,兩邊地圖的門都要互相指到對方:

025.jpg

14. 手畫腳踏線、繩子、椅子、告示(Common)

026.jpg

手畫腳踏線:

027.jpg

繩子和梯子:

028.jpg

椅子:點 Chair,到腳踏線上點一下,就是一個可以坐的位置。
告示:

029.jpg

15. VR 和小地圖

030.jpg

沒加 VR 的地圖,伺服器會改用腳踏線的範圍當邊界。但玩家畫面可能看到地圖外面的空白,建議加。
存檔(Save to WZ)時編輯器會自動重新產生一次小地圖。

16. 地圖資訊(Edit map info)
在地圖分頁按右鍵 → Edit map info。

031.jpg

站上的端口就有一個真實例子:990002003~990002005(公會領地城門口)的名稱被放在 HaCreator 分類底下,
但端口會去 etc 找 9 開頭地圖的名稱,所以伺服器讀不到這幾張地圖的名字。做新地圖時記得改 Category。
Other Settings 分頁是各種開關和地圖限制:

032.jpg

Optional 和 Structured Optional 是進階玩法:

033.jpg

17. 地圖物理(Map Physics)

034.jpg

18. 設定(Settings)

035.jpg

【第三部分】做好的地圖怎麼放進遊戲

19. 收尾:小地圖、固定腳踏線
  • 地圖分頁右鍵 → Add Minimap,再按 Tools → Regenerate Minimap。
  • 全部擺好、確定不再移動地板,最後按 Tools → Finalize Footholds。


036.jpg

20. 存檔:Save to WZ → Repack
  • 主選單 → Save to WZ,填新代碼。代碼已經有地圖會出現紅字,Save 按不下去,不怕蓋掉別人的地圖。


037.jpg

  • 主選單 → 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,確認下面這幾個都在,少一個伺服器讀這張地圖就會出錯:

038.jpg

22. 進遊戲測試
  • 伺服器重新讀取(有重載功能就重載,沒有就重開伺服器),遊戲也完全重開。
  • GM 帳號輸入:!map 960000555
  • 確認:人出現在出生點、怪會走會重生、傳送門走得過去也走得回來、背景有在動。
  • 顯示「地圖沒有被定義」:伺服器還沒有這張地圖,回第 21 步檢查 XML 放的位置。


【斷線排查】進地圖就斷線
通常是「用到的東西,遊戲裡找不到」。照這張表一項一項對:

039.jpg

【後記】
重點整理:
  • 新代碼的地圖用 New 開,Clone/Open 的只能存回原代碼。
  • Save to WZ 只進記憶體,Repack 才寫檔;先備份。
  • 背景要動:Type 選 Moving,Parallax 的數字就是速度(負數往左);效果要按 Preview 看。
  • 怪物、NPC、椅子腳下都要有腳踏線;沒有地板的地方可以手畫(每個點雙擊)。
  • Category 照地圖代碼填(9 開頭填 etc),不然伺服器讀不到地圖名稱。
  • Map Physics 是全遊戲共用的,別亂改。
  • 客戶端 Map.wz(和 String.wz)、端口 XML 兩邊都要更新。

瀏覽 44 回復 0

您需要登錄後才可以回帖 登錄 | 註冊會員

返回頂部