跳到正文
文件
本頁內容

什麼是關卡

關卡是磁碟上的一個普通資料夾:關卡檔案、後設資料和它用到的一切。用Json製作,以資料夾副本的形式交給別人,不需要安裝任何東西

資料夾裡有什麼

這個資料夾不是資料庫裡的一條記錄,也不是加密的歸檔包

主要檔案有兩個:

  • level.json:關卡本身,包括物體、關鍵幀、主題、資源
  • metadata.json:封面資訊,包括名稱、描述、作者、標籤、時長

關卡用到的所有東西都放在它們旁邊:曲目、圖片、字型。遊戲不附帶任何紋理。關卡里看到的一切,要麼是內建形狀,要麼是這個資料夾裡的檔案

封面資訊單獨放在一個檔案裡,這樣列出一千個關卡時不必開啟一千個關卡

完整的檔案列表:關卡資料夾與備份

Json還是Blob

檔案格式在建立關卡時選擇:

格式是什麼
Json純文本,任何編輯器都能開啟,可以手動修復
Blob二進位制檔案,載入快幾十倍,體積只有三分之一,無法直接閱讀
建議

製作時用Json,完成後再轉換為Blob。如果關卡打不開了,Json可以直接閱讀並手動修復。Blob幾乎無法修復:只要壞一個位元組,完整性校驗就不通過

如何把關卡交給別人

關卡靠複製傳遞。把資料夾打包、傳送、解壓、開啟。不需要安裝、註冊或匯入

在PC上總是可行。在手機上,取決於系統允許你訪問哪些位置

由此可知:

  • 關卡的備份就是資料夾的副本
  • 不要重新命名資料夾裡的檔案:資源是按名稱查詢的
  • 編輯器打不開的Json關卡,仍然可以直接閱讀。原始資料標籤頁只顯示已經開啟的關卡
注意

關卡在遊戲中開啟時,不要用文本編輯器修改level.json。從編輯器儲存會悄無聲息地覆蓋你的修改

格式是開放的

關卡資料模型放在一個獨立的倉庫中,採用MIT許可證:bullet-hero/sdk。所以不用遊戲也能讀取關卡,也可以為這個格式編寫自己的工具。格式中的缺陷同樣能從外部看到

關於格式的更多內容:SDK

接下來:第一個關卡:路線、關卡資料夾與備份