Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
Information icon
此特性為Java版獨有。

本教學將介紹如何執行在伺服器端中包含的數據生成器。

本教學以Java版1.18為準,1.13~1.17版本的用法和輸出可能不同。

用途

數據生成器可以:

  • 輸出原版資源包的內容(方塊狀態、模型)。
  • 輸出原版數據包的內容(進度、戰利品表、配方、標籤、世界生成)。
  • 輸出分別列出所有方塊狀態、所有註冊項和完整命令樹的JSON檔案。
  • 實現NBT格式檔案(.nbt檔案)和String NBT格式檔案(.snbt檔案)的相互轉換。

開始

為了使用數據生成器,你需要下載對應遊戲版本的官方伺服器端。請確保你已經安裝了Java,Java版1.17要求Java16以上,而Java版1.18要求Java17以上。

在你儲存伺服器端.jar檔案的資料夾裡,打開bash或其他命令列窗口,然後執行如下命令:

java -DbundlerMainClass=net.minecraft.data.Main -jar server.jarJava版1.18及以後)

java -cp server.jar net.minecraft.data.MainJava版1.13 - Java版1.17.1

如果你的設定正確,命令列中將顯示選項和描述列表。選項列表及其作用如下:

選項 命令列內描述 作用
--all Include all generators 包含所有的生成器(--client--server--reports--dev)。
--client Include client generators 生成assets/minecraft資料夾,包含blockstatesmodels資料夾。
將SNBT檔案轉換為NBT檔案。
--dev Include development tools 將NBT檔案轉換為SNBT檔案。
--help Show the help menu 顯示幫助列表。
--input <String> Input folder 指定輸入資料夾。
--output <String> Output folder (default: generated) 指定輸出資料夾。預設為generated
--reports Include data reports 生成reports資料夾,包含worldgen資料夾和blockscommandsregistries三個JSON檔案。
--server Include server generators 生成data/minecraft資料夾,包含advancementsloot_tablesrecipestags四個資料夾。
將SNBT檔案轉換為NBT檔案。
--validate Validate inputs -

輸出內容

在上述命令列界面執行

java -DbundlerMainClass=net.minecraft.data.Main -jar server.jar --all

所有支援內容都會被輸出。

若只想要輸出部分內容,將其中的--all替換為對應的生成器選項(--client--server--reports)即可。

NBT檔案轉換為SNBT檔案

執行

java -DbundlerMainClass=net.minecraft.data.Main -jar server.jar --dev --input "directory"

其中directory是含有NBT檔案的目錄。此命令會將該目錄(包括其子目錄)下的所有的NBT檔案轉換為SNBT檔案輸出至generated目錄(可以透過--output選項變更目標資料夾),同時保留原目錄結構。

SNBT檔案轉換為NBT檔案

執行

java -DbundlerMainClass=net.minecraft.data.Main -jar server.jar --client --input "directory"

其中directory是含有SNBT檔案的目錄。此命令會將該目錄(包括其子目錄)下的所有的SNBT檔案轉換為NBT檔案輸出至generated目錄(可以透過--output選項變更目標資料夾),同時保留原目錄結構。

參見

Advertisement