跳到正文

開發者

基於開源SDK構建工具、模組或服務,或者擴充套件遊戲本身的人

SDK以MIT許可證開源,最終以它的原始碼為準

先讀SDK,然後讀安裝

文件

  • 啟動引數可以直接開啟某個介面、關卡或一次遊玩,開關引數只改變遊戲的這一次啟動。引數寫在執行檔後面:快捷方式、終端或Steam的啟動選項中

  • SDK是以開源C#庫形式提供的Bullet Hero關卡格式。遊戲通過它讀寫關卡,你的程式也可以這樣做

  • SDK就是nuget.org上的BulletHero.SDK包,也可以從原始碼構建。在Unity中以git submodule接入,ConsoleSmoke示例用來確認你的關卡能被讀取

  • 關卡是一個資料夾:內容在level.json或level.blob中,後設資料在metadata.json或metadata.blob中,另有封面和媒體檔案。備份、記錄和玩家設定留在裝置上

  • .blob檔案以二進位制形式儲存與.json相同的資料:24位元組的檔案頭,後面是資料。它是與JSON地位相同的關卡格式,而不是快取

  • 關卡可匯出為資料夾、tar.gz或zip,並可選擇加密碼:AES-256加密的zip或OpenPGP。SDK根據收到檔案的開頭位元組判斷格式,而不是根據檔名

  • 版本有三種:gv對應遊戲,sv對應SDK,mg對應模型格式的代。SDK依據mg遷移舊檔案,並拒絕讀取代比當前構建更新的檔案

  • 校驗由你自己通過ValidationFacade呼叫,它沒有內建在儲存和載入中。問題分為Error、Warning和Advice,ValidateAndFix會修復能修復的部分

  • 服務用PublishProfile檔案描述自己接受哪些關卡:許可證、資源來源、必填欄位、大小限制。新增一個服務就是寫一個檔案,而不是修改分析器

  • 生成器是繼承SDK基類的一個類:BaseLevelGenerator、BaseContentGenerator或BaseModifier。表單、開銷估算和撤銷由宿主根據約定自行構建

  • SDK的問題請在bullet-hero/sdk倉庫的issues中報告,程式碼修改也以拉取請求的形式提交到那裡。貢獻者規則位於同一個倉庫中,就在程式碼旁邊