國戰編輯器

經典的SLG遊戲都離不開國戰的玩法,尤爲以三國類題材居多,我在幾年前有幸參與了一款經典的三國類SLG遊戲的開發,其中的國戰玩法至關典型。包含這幾點元素:前端

#1大地圖(整個中國版圖至關宏偉);
#2城池數量龐大城與城之間包含複雜的鏈接組成龐大的城市網絡;
#3路線的曲線各類各樣;
#4豐富的地形設計;
#5單個城池的信息複雜多樣;
 
那麼該如何將這麼多複雜的信息整合在一塊兒呢,畢竟光200多個的城池詳細信息要讓策劃錄入配置表就已是一件不可能完成的事情了,考慮到效率和人文關懷。我爲策劃同事們開發了一款國戰大底圖編輯器。這個編輯器如今能夠在個人網盤中下載(979s)。
 
我設計編輯器的主要功能仍是便於策劃和咱們程序開發,所以可視化所見所得是必須的,當咱們打開CountryMapEditor.exe的時候,界面是這樣的:
這個界面中的大地圖鋪面了整個場景,縮略圖窗口顯示出當前的視窗位置:位於整個大地圖的西北角,如此大的地圖素材,須要在打開遊戲或編輯器的時候對地圖進行分塊裁切,這部分工做在另外的工具中已經完成了,全部的地圖分塊保存着工具目錄的asset目錄下(這裏把大地圖切成了100塊相同尺寸的數據塊)待程序啓動根據當前視窗大小和位置與數據分塊中記錄的數據比較進而選擇加載適當的分塊數據。這點也一些地圖app相似。
地圖數據的加載與釋放一樣都很重要,這與性能息息相關。在視窗遠離某些分塊時候作適當的數據釋放,這點很重要。
 
接下來的這一步是編輯城池:

我在這裏已經編輯了一些城池,從上圖咱們能夠看到城池與城池之間的紅色貝塞爾曲線就是他們之間的道路,用兩個點能夠調整貝塞爾曲線的曲率,使得曲線與地面道路儘量貼合,這樣單條貝塞爾曲線的點集合M描述了城池A與城池B之間的路徑長度或者說是權重,記爲M{A,B} = Value;Value值就是點與點之間的長度和,這個Value很重要,它將在迪傑斯特拉算法中充當權重的角色,所以這個值不光前端須要,後端也須要這個值。在實際遊戲中某個城池會出現毀壞狀態,此時通過這個城池的全部道路將處於失效狀態。這個時候也能夠經過修改權重達到效果。
 
咱們編輯完成後能夠點擊Output按鈕這樣咱們就把數據保存了下來;咱們去找一下MapNode文件夾
如圖所示,文件夾內有兩個文件,其中xml文件簡單明瞭
 
將全部的關係都已經列舉了出來,這種配置文件信息後端很須要,另一個二進制文件是前端用的,裏面不止包含了xml中的信息還有一些其餘敏感數據信息。
 
到這裏這個國戰編輯器就算完成了,這部分的工做使得策劃能夠更安心的處理遊戲細節,而沒必要受困於生產工具。須要項目工程的能夠聯繫我。
相關文章
相關標籤/搜索