運輸路線
運輸路線讓玩家乘坐設定好的自訂 Boss,沿作者繪製的曲線移動。路線儲存在 plugins/EliteMobs/transport_routes/。坐騎使用 custombosses/ 中一般且已啟用的 YAML 定義;實體類型、模型、偽裝和技能均在該定義中設定。
一條路線只有一個固定起點和一個固定終點。如果想讓玩家透過飛行管理員或飛行傳送門在多個站點之間飛行,請改為建立飛行網路。飛行網路使用與本頁相同的坐騎和旅程規則。
在遊戲內建立路線
編輯命令僅供玩家使用,需要 elitemobs.transport.admin 權限。
- 站在出發點,執行
/em transport create guild_flight。 - 飛到後續各個途經點,分別執行
/em transport add。 - 檢查粒子預覽。淺色曲線會包含準備加入的下一個點。
- 面向希望乘客抵達時朝向的方向,執行
/em transport save。 - 檢查已儲存的坐騎與路線設定,再執行
/em transport start guild_flight試乘。
編輯器新建的路線參照內建自訂 Boss transport_cannon_seat.yml。如有需要,將 transportEntity 改為另一個已啟用的自訂 Boss 檔名。
| 命令 | 操作 |
|---|---|
/em transport create <id> | 從目前位置開始新草稿 |
/em transport edit <id> | 編輯已啟用的現有路線 |
/em transport add | 附加目前位置 |
/em transport move <number> | 將指定途經點移到目前位置,編號從 1 開始 |
/em transport remove | 移除最後一個途經點 |
/em transport undo | 復原上一次幾何編輯,最多保留 32 次編輯 |
/em transport status | 顯示目前草稿 |
/em transport ride | 不儲存,從第一個途經點開始直接試乘草稿 |
/em transport save | 儲存幾何形狀與抵達朝向 |
/em transport cancel | 捨棄草稿 |
/em transport list | 列出已載入路線 |
/em transport reload | 重新載入路線與飛行網路檔案;正在進行的飛行繼續使用原路線 |
/em transport start <id> | 開始一條已儲存的路線 |
/em transport stop | 取消自己的目前旅程 |
儲存時會先檢查路線能否依已儲存的路徑點和抵達朝向重新載入,再刪除草稿。如果檢查失敗,即使檔案已經寫入,草稿仍會保留,供修正或重試。草稿僅保存在記憶體中,中斷連線或關閉時會被清除。
路線 YAML
guild_flight.yml 範例:
isEnabled: true
name: Guild flight
world: my_dungeon
transportEntity: transport_cannon_seat.yml
speed: 12
acceleration: 8
countdownTicks: 60
arrivalYaw: 90
waypoints:
- "10,70,10"
- "20,85,20"
- "40,70,40"
路線 ID 長度為 1 至 64 個字元,只使用小寫字母、數字、底線或連字號。世界名稱必須對應玩家所在的原始地圖世界。在該地牢的副本中,原始世界名稱會解析為玩家目前的副本;不要寫死自動產生的副本名稱。
speed 和 acceleration 必須是有限正數。countdownTicks 不得為負數,預設為 60 tick。儲存幾何形狀時,編輯器會保留現有外觀與調整設定。
路線檔案支援 extends: other_route.yml,讓一條路線繼承另一個路線檔案的設定,只覆寫不同之處。isEnabled 不會被繼承。請參閱重複使用定義。
出發倒數期間請站著不動。改變位置會取消出發;只轉動視角不會取消。此規則僅適用於登乘前,不適用於飛行期間坐騎的移動。/em transport ride 會先把你移到草稿的第一個途經點,其倒數只有在你離開該處超過 2 格時才會取消。從飛行傳送門出發的飛行,則容許在傳送門範圍內移動。
舊路線欄位 carrier、customModel 和 flightAnimation 已不再接受。請在參照的自訂 Boss 定義中設定外觀與行為。
加入旅行 NPC
使用 TRANSPORT NPC 類型,並列出已載入的路線 ID,不帶 .yml:
interactionType: TRANSPORT
transportRoutes:
- guild_flight
將這些欄位加入有效的 NPC 定義。選單接受 1 至 54 個互不重複且可用的目的地,並在登乘前檢查玩家是否仍在 NPC 附近。若 NPC 要提供飛行網路的目的地,請參閱飛行管理員。
路線淨空與中斷
地圖作者負責確保路線暢通。坐騎沿指定曲線移動,不會尋路繞開障礙,也不會修正危險的幾何形狀。請使用預定坐騎預覽並試乘完整路線,為坐騎與乘客都留出足夠空間。
飛行使用原生的飛行 Mind。當伺服器版本沒有它,或坐騎無法生成(例如缺少 transportEntity 或該定義已停用)時,玩家會被直接傳送到終點,並失明 2 秒。坐騎生成失敗時,主控台在 EliteMobs 重新載入前,每條路線只會記錄一次,而擁有 elitemobs.transport.admin 的玩家會在聊天中看到原因。坐騎雖然生成但無法讓玩家就座時,旅程會顯示錯誤並停止。
潛行無法讓乘客在飛行途中下來。死亡、傳送、切換世界或副本,或坐騎被移除,都會結束旅行。中斷會移除坐騎,但不保證傳送回起點。飛行如果有 5 秒沒有進展,會讓乘客降落在終點。在副本實例之外飛行途中斷線的乘客,會在下次登入時被安置在終點;停止或重新載入伺服器時,仍在坐騎上的乘客也會被安置在終點。成功抵達後,乘客會位於終點並朝向 arrivalYaw。
坐騎的實體類型若是雞或鸚鵡,飛行時會掉落羽毛並拍動翅膀。