跳至主要内容

如何建立自訂EternalTD地圖

為你的地圖建立level.yml檔案

按照以下簡單步驟建立關卡配置檔案來開始你的地圖:

  1. 首先建立一個新的文字文件,並給它起一個名字,例如 your_level_name.yml(將「your_level_name」替換為你實際的關卡/地圖名稱)。

  2. 在你喜歡的文字編輯器中開啟檔案。

  3. 讓我們從有趣的部分開始!使用此設定新增你的關卡名稱:

levelName: "&aMy Awesome Level"

隨意使用一些Minecraft顏色或其他文字修飾符來增添趣味。

  1. 現在,用一個很酷的描述給你的關卡一些特色:
levelDescription:
- "&aMy level is pretty cool."
- "&aHope you enjoy!"

你可以在描述中新增更多行,但保持簡潔是個好主意。

  1. 該設定波次了!指定你的關卡應該使用哪些EternalTD波次:
wavesConfigFile: my_waves.yml

只要記得使用你的波次檔案的實際名稱。每個關卡一個波次!

  1. 設定你的關卡將使用的世界(建築):
worldName: my_world_folder_name

使用EternalTD的 worlds 資料夾中找到的實際世界名稱。

  1. 最後但同樣重要的是,為你的關卡設定選擇完美的環境:
environment: NORMAL

你可以在NORMAL、NETHER或THE_END之間選擇。自己選吧。

你的關卡配置檔案已經設定好了!檔案的其餘部分將由我們在接下來的步驟中使用的EternalTD命令填寫,當我們映射建築時。

準備你的建築

在映射你的建築以用於EternalTD之前,必須按以下方式設定它:

  • 將它設定在虛空世界中。如果使用multiverse,你可以使用命令:
    /mvcreate yourworldnamehere NORMAL -g VoidGen:.
  • 在建築周圍設定一個緊密的世界邊界。
  • 在建築下方幾個方塊處建立一個屏障圓柱體,高度為一個方塊,半徑足夠大以到達世界邊界(建議200方塊半徑)。使用WorldEdit,你可以執行:
    //cyl barrier 200 1
  • 將出生點設定在建築中心的安全位置。
  • 套用以下規則:
    • /gamerule doWeatherCycle false
    • /gamerule doDaylightCycle false
    • /gamerule doMobSpawning false
    • /gamerule doFireTick false
    • /gamerule fireDamage false
    • /gamerule mobGriefing false
    • /gamerule disableRaids true
    • /gamerule announceAdvancements false
  • 地圖的遊戲區域需要在相同的Y層。當我們開始映射過程時,任何更高或更低的東西都會被忽略。

映射建築以用於EternalTD

要映射你的建築的遊戲區域以用於EternalTD,請按照以下步驟操作:

  1. 手動測量建築,確保只包括遊戲區域,其他什麼都不包括。在測量時記下座標。
    遊戲區域應包括地圖的起始(怪物生成)和結束部分。起始通常使用綠色方塊建造,結束使用紅色方塊。

  2. 首先測量建築的X、Y和Z軸。站在地圖遊戲區域X軸的一個角落,寫下報告的座標(你可以使用方塊座標)。移動到X軸的另一側並寫下該座標。

  3. 對於Y軸,站在遊戲區域上並寫下報告的座標。

  4. 重複與X軸相同的過程來測量Z軸。你可以看看這個範例圖像,幫助你理解我們在這裡試圖完成什麼: Mapping Example 注意我們只測量我們想要遊戲區域所在位置的座標,忽略其餘部分。如範例所示,請確保在測量遊戲區域時包括起始和結束。
    如果你正在測量的遊戲區域一端較寬而另一端較窄,你應該測量最寬的部分。

  5. 完成測量後,你應該有類似這樣的東西:

    X axis: -57, 56
    Y axis: 65
    Z axis: 34, -34
  6. 將這些數字從最高到最低重新排列,以獲得兩組完整的XYZ座標:

    56 65 34 (highest XYZ values)
    -57 65 -34 (lowest XYZ values)
  7. 使用以下命令選擇座標:

    /etd selectfloorcoordinate Xhigh Y Zhigh Xlow Y Zlow
    Example: /etd selectfloorcoordinate 56 65 34 -57 65 -34
  8. 座標現在已被選擇並儲存在記憶體中。如果你收到錯誤,那麼你的測量不正確或遊戲區域沒有正確建造。要檢查我們是否正確映射了遊戲區域,請執行以下命令:

    /etd register your_level_name.yml test

    將「your_level_name」替換為你正在嘗試建立的實際關卡/地圖名稱。如果一切都做對了,你應該看到屏障標記遊戲區域中的每一個方塊。

  9. 檢查遊戲區域並確保一切看起來正常,然後再次執行命令,但這次不要在末尾加上 test

    /etd register your_level_name.yml

    這現在將把遊戲區域儲存到你的關卡檔案中,你的關卡檔案現在應該可以使用了。

精簡世界資料夾

你的世界資料夾中有幾個檔案和資料夾可以丟棄,因為EternalTD不使用所有這些。這將減小你的世界的大小並使其更容易分發。

對於NORMAL環境:

要準備你的世界,請保留以下檔案和資料夾:

  1. region 資料夾

  2. data 資料夾中的 raids.dat(確保複製時它在 data 資料夾內)

  3. level.dat 檔案

你可以安全地刪除世界資料夾中的所有其他檔案和資料夾。這將為NORMAL環境正確設定你的世界。

對於NETHER和THE_END環境:

要準備你的世界,請保留以下檔案和資料夾:

  1. DIM-1 資料夾內的 region 資料夾(確保複製時它在 DIM-1 資料夾內)

  2. data 資料夾中的 raids.dat(確保複製時它在 data 資料夾內)

  3. level.dat 檔案

你可以安全地刪除世界資料夾中的所有其他檔案和資料夾。這將為NETHER和THE_END環境正確設定你的世界。