首頁 / 木斧的另一個用途:WorldEdit 世界編輯器

木斧的另一個用途:WorldEdit 世界編輯器

你,是不是厭倦了蓋個建築五個小時有四個小時在放方塊?你,是不是整天放方塊都乾脆開連點器?你,是不是想要一個朋友幫你放方塊…啊這個錯棚了,我的意思是如果你蓋建築的時候不想一直放方塊,那你或許該選擇使用 WorldEdit 了

WorldEdit是什麼?就像我們開小畫家或Ps畫圖不可能一直滑鼠左鍵解決一切,畫幾何圖形、特殊形狀什麼的還是該用工具幫你;WorldEdit就是麥塊界的畫圖工具,麥塊界的尺規作圖。使用這個工具之前,我們需要先懂幾件事:方塊ID與方塊屬性,算是高科技版的MC吧?

什麼是方塊ID?

打開創造模式,你會看到琳瑯滿目的方塊。對你而言眼睛就是一切,你可以很輕鬆用雙眼分辨這塊是什麼那塊是啥;但電腦沒有這種事情,電腦沒有眼睛,他不知道誰是誰哪個方塊是誰,於是Mojang就為每塊方塊定義一個名稱,這個名稱用來區別每塊方塊,也就是方塊ID。

打開麥塊Wiki,隨便找塊方塊你就會看到表格下面有一個”命名空間ID”,這就是傳說中的方塊ID,基本上就是該塊方塊的英文翻譯,例如泥土的命名空間ID是dirt,但其實這並不是泥土ID的完全體。在這之前,請你打開麥塊,按下F3+H顯示詳細資訊,然後打開創造模式游標滑到一塊方塊,就會看到該方塊的完整ID,例如泥土在畫面中顯示的是minecraft:dirt,只是…我就知道這方塊是麥塊內建的泥土了,為什麼要特地標上minecraft來說明這個方塊是麥塊的方塊呢?

請想一件事,如果你裝了個模組,可能裡面有各種泥土,那個作者也做了一個模組版的泥土,這時候我給你一個dirt,你知道我指哪個泥土嗎?是模組的泥土,還是原版的泥土?所以才需要在前面標上來源名稱,例如這模組叫MoreDirt?(我只是打比方先說清楚,如果重複我可不管ww),那或許模組的泥土就被叫做moredirt:dirt,然後你就可以把它跟原版的泥土分開了。這就是前面標上來源名稱(實際上他叫命名空間ID)的意義。

我有裝模組,反正這就是泥土的ID

minecraft:dirt

minecraft代表的是這個方塊的命名空間ID,說明這方塊是誰的;dirt則是方塊本身的命名ID,代表這方塊的名稱

什麼是方塊屬性?

剛才說過了ID,現在來解釋一下屬性。在一塊方塊裡面可能會有不少變化:樹葉含不含水?原木該朝向哪裡?半磚靠上還靠下?在遊戲裡面就是用屬性來表示的。屬性就是代表一個物件(方塊)的所有狀態,就像人有年齡、性別、智商等屬性一樣,方塊也會有含不含水、方向與對齊等差別。如果你拿出管理員專屬物品中的除錯棒(/give @s minecraft:debug_stick),就可以透過攻擊鍵選屬性(一個方塊不一定只有一個屬性),使用鍵來改變該屬性內容的方式修改方塊屬性(除錯棒只有Java版才有,基岩可能得旁邊站了)

這是除錯棒

安裝WorldEdit

學會基本常識就可以開始玩WorldEdit了,安裝插件的過程我想我不用多說。會開這個章節只是為了另外補充下WorldEdit與孿生兄弟FAWE(Fast Async World Edit)的差別。簡單而言FAWE就是高效能擴充版小木斧,它採用異步執行的方式來提高效能,在一次填充大量方塊時會對改善效能非常有幫助。放心,兩款都是開源免費的插件,其實另外還有一個同棚的付費插件Arceon(Arceon v0.4.5 [1.16-1.20.6] | Patreon),因為要錢我就不介紹了,反正FAWE也不會死…

WorldEdit CUI(Client GUI)

這是一款小模組,可以顯示WorldEdit選取的區塊。你可前往以下連結進行下載:

WorldEdit基本指令秒入門

選取區塊

預設使用木斧作為執行權杖,你可以使用左鍵選取第一個範圍,右鍵第二個,在遊戲聊天欄會出現”已選取第x個點 X…Y…Z…(之間總方塊數量)”的字樣,選取平面請直接選取對角線上兩端點即可,立體範圍則選取長方體兩對角線如圖

來源:【佧沘kirdy】『插件』WorldEdit世界編輯 詳細指令教學

選取後移除選區輔助方塊

請記得,選取選區後即使你將選區的方塊刪除,也不會影響到選區喔~~

指令選擇區塊


//pos1 [x,y,z]
//pos2 [x,y,z]
//hpos1
//hpos2
//chunk
//selwand

由上而下解釋如下:

  • //pos1與//pos2:指定第一或第二選取點,相當於左右鍵的功用
  • //hpos1與//hpos2:指定玩家十字準心指向的方塊為第一或第二選取點
  • //chunk:選取當前所在區塊(16×16的大小由世界底層到最高點)
  • //selwand:指定手上物品新權杖

指令選擇區塊-擴充選區

//expand [x,y,z] [方向]
//expand vert
//contract [x,y,z] [方向]
//outset [格數]
//outset [格數] -h
//outset [格數] -v
//inset [格數] [-hv]
  • //expand:延伸選取區塊,方框內可選填xy或z三擇一,會往該方向延伸。不指定則照十字準心方向
  • //expand vert:將選取區塊由世界最低點延伸至最高點
  • //contract://expand的相反,可以縮小選取區,參數設定與expand相同因此不多作(絕對不是懶)解釋
  • //outset [格數]:整體擴大選區(xyz都擴大),後指定-h代表水平,-v則是垂直
  • //inset:與contract差不多

填充方塊

填充方塊是他最重要的功能,FAWE跟原版都有,可以一次填充矩形範圍的方塊,語法如下:

//set <方塊ID>[屬性]

你有沒有發現這個指令前面用了兩個斜槓而不是常見的一個斜槓?這是因為小木斧這東西指令真的爆幹多,所以要另外開範圍給他用,不然很容易跟人打架。

方塊ID就直接打ID就好,例如//set dirt可以設定選區全為泥土。如果需要設定參數(例如階梯),可以使用//set oak_stairs[facing=south]來設定選區為橡木階梯,並橡木階梯朝向南方(高的方向面向南方,也就是走樓梯時面向南方走。如果要設定多個屬性例如含水面朝南方的橡木階梯用//set oak_stairs[facing=south,waterlogged=true]來設定即可。其他你可以自己慢慢摸索,屬性表用除錯棒研究即可

快速整地

如果你想用最快的速度把地整好,只要使用//set air來把選區設為空氣即可!

尋找與取代

如果你想要取代特定方塊,例如把這塊選區裡的雜草清掉但其他方塊別清,可以用取代的方式,也就是把雜草取代為空氣,以下是基本語法

//replace <A方塊ID> <B方塊ID>

其中A方塊ID是被取代的方塊,B則是取代它的方塊。例如想清掉雜草可以用//replace tall_grass air來把芒草(高的那種)換成空氣,air是很重要的ID,代表空氣也就是啥都沒有,在整地時超方便。如果你的地板想要兩種木頭交錯,你可以先放一種,然後用小木斧把範圍選好輸入//replace oak_plank spruce_plank可以取代橡木材成杉木材!

復原與重做

做錯了怎辦?你可以使用像文書軟體常出現的復原與重做。復原用在回到上一步,重做則是回到下一步。指令如下

//undo
//redo

//undo是復原,redo則是重做,沒啥好講的我就不多說了

複製與貼上

想要複製貼上嗎?WorldEdit有提供複製貼上的指令可供使用,但記得該指令的用法有點特別,這邊說明一下,但先給指令:

//copy
//cut
//paste
//rotate

四個指令分別是複製、剪下、貼上與旋轉,請參考以下圖片說明(圓形是玩家,箭頭代表他面向的方向)

使用複製(或剪下)的指令時玩家站的位置為複製中心點,貼上時會依照當前站立的位置來貼上,例如圖中我面向要複製的區塊最左下角那塊後面一格,貼上時就要站在該區塊後面一格才能貼到正確的位置

旋轉則是以玩家複製時站立的位置為軸心,一般只能(也只會)作90度旋轉(90°、180°、270°、360°),如果作非九十度旋轉會失去正確比例喔~~

白色當然是玩家

圓柱系列(空心與實心)

//hcyl <方塊ID> <半徑> <高>
//cyl <方塊ID> <半徑> <高>

這兩個指令可以用來創造圓柱,hcyl用來創造空心圓柱體,cyl則創造實心圓柱。半徑以方塊計算,你可以用線上圓柱體計算器計算,連結在底下:

設定生態域

你可以使用指令更改你選區的生態域種類,雖然我不知道有什麼用,不過姑且一提嘛ww

//setbiome <生態域ID>

這個指令用以設定生態域,我懶得解釋www

地形自然化

這個指令對於製作自然造景而言滿方便的,建造好之後選取區域並執行以下指令即可,不需額外設定~~

//naturize

他會對地形進行自然化,選取區最上方3個軸處草地與泥土填充之,之下則是石頭但不會生成礦物

腳下生成方塊

這是我自己發現的方法,你可以使用以下指令在腳底下產生一個透明玻璃,一般這指令不會用來建築,而是當一個點是空氣時可以換成方塊讓它可以被選擇:

/up 0

重點是這個指令只有一個斜槓喔請注意…


延伸學習可以看以下文章:【攻略】【小木斧】非新手向進階小木斧教學(巴哈好好用www)

配置插件

資料架構

我猜這應該是大家第一次遇到有配置資料夾下還有多個資料夾的插件,這邊就解釋一下資料夾架構:

worldedit
├─ assets
├─ schematics
├─ sessions
└─ config.yml
  • assets資料夾:基本上沒有什麼特別的也不會沒事去開,因此跳過ww
  • schematics資料夾:你可以用//schematics指令貼上藍圖(Schematics Command),藍圖檔案就是放這資料夾裡面
  • sessions資料夾:儲存憑證與連線資訊什麼的,不重要ww
  • config.yml:熟悉的名字,反正不是麥香…就是config啦

完整配置檔

是的,雖然沒啥好配置但我還是給一下說明:

limits:
    max-blocks-changed:
        default: -1
        maximum: -1
    vertical-height:
        default: 256
    max-polygonal-points:
        default: -1
        maximum: 20
    max-radius: -1
    max-super-pickaxe-size: 5
    max-brush-radius: 5
    butcher-radius:
        default: -1
        maximum: -1
    disallowed-blocks:
    - "minecraft:oak_sapling"
    - "minecraft:jungle_sapling"
    - "minecraft:dark_oak_sapling"
    - "minecraft:spruce_sapling"
    - "minecraft:birch_sapling"
    - "minecraft:acacia_sapling"
    - "minecraft:black_bed"
    - "minecraft:blue_bed"
    - "minecraft:brown_bed"
    - "minecraft:cyan_bed"
    - "minecraft:gray_bed"
    - "minecraft:green_bed"
    - "minecraft:light_blue_bed"
    - "minecraft:light_gray_bed"
    - "minecraft:lime_bed"
    - "minecraft:magenta_bed"
    - "minecraft:orange_bed"
    - "minecraft:pink_bed"
    - "minecraft:purple_bed"
    - "minecraft:red_bed"
    - "minecraft:white_bed"
    - "minecraft:yellow_bed"
    - "minecraft:powered_rail"
    - "minecraft:detector_rail"
    - "minecraft:grass"
    - "minecraft:dead_bush"
    - "minecraft:moving_piston"
    - "minecraft:piston_head"
    - "minecraft:sunflower"
    - "minecraft:rose_bush"
    - "minecraft:dandelion"
    - "minecraft:poppy"
    - "minecraft:brown_mushroom"
    - "minecraft:red_mushroom"
    - "minecraft:tnt"
    - "minecraft:torch"
    - "minecraft:fire"
    - "minecraft:redstone_wire"
    - "minecraft:wheat"
    - "minecraft:potatoes"
    - "minecraft:carrots"
    - "minecraft:melon_stem"
    - "minecraft:pumpkin_stem"
    - "minecraft:beetroots"
    - "minecraft:rail"
    - "minecraft:lever"
    - "minecraft:redstone_torch"
    - "minecraft:redstone_wall_torch"
    - "minecraft:repeater"
    - "minecraft:comparator"
    - "minecraft:stone_button"
    - "minecraft:birch_button"
    - "minecraft:acacia_button"
    - "minecraft:dark_oak_button"
    - "minecraft:jungle_button"
    - "minecraft:oak_button"
    - "minecraft:spruce_button"
    - "minecraft:cactus"
    - "minecraft:sugar_cane"
    - "minecraft:bedrock"

use-inventory:
    enable: false
    allow-override: true
    creative-mode-overrides: false

logging:
    log-commands: false
    file: worldedit.log
    format: "[%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS %4$s]: %5$s%6$s%n"

super-pickaxe:
    drop-items: true
    many-drop-items: false

snapshots:
    directory:

navigation-wand:
    item: minecraft:compass
    max-distance: 100

scripting:
    timeout: 3000
    dir: craftscripts

saving:
    dir: schematics

files:
    allow-symbolic-links: false

history:
    size: 15
    expiration: 10

calculation:
    timeout: 100

debugging:
    trace-unflushed-sessions: false

wand-item: minecraft:wooden_axe
shell-save-type:
no-op-permissions: false
debug: false
show-help-on-first-use: true
server-side-cui: true
command-block-support: false

對了,為了SEO好我把內容裡的註解刪掉了喔

限制相關

在最開始的limits裡面,有以下幾項:

類別/預設值功能
max-blocks-changed最多可更換的方塊數量
default整數(int)/ -1(不設限)預設,建議保持預設
maximum整數(int)/ -1(不設限)最多可更改的方塊,-1代表不設限
vertical-height最多可更改的選區高度
default整數(int)/ 256(地面到最上層)同上
max-polygonal-points最大多邊形點
default整數(int)/ -1(不設限)預設可使用的多面體點數量
maximum整數(int)/ 20可以使用的多面體點的最大數量
max-radius整數(int)/ 5最大圓半徑(包括hcyl與cyl)
max-brush-radius整數(int)/ 5最大筆刷半徑(brush相關指令)
disallowed-blocks清單 / 痾自己去上面複製…好長不能在模式中使用的區塊列表
主要是實體區塊,
它們需要計算方塊路徑與移動,如果產生數千個項目,
可能會嚴重延遲或使伺服器崩潰
詳細內容前往此網站:WorldEdit Configuration

權杖設定

wand-item: minecraft:wooden_axe

大概在147行處,設定到底要用甚麼東西作為權杖(選地工具),預設的就是木斧頭,也就是傳說中的小木斧~~

權限設定

節點說明建議擁有者
worldedit.reload重新載入插件的指令OP
worldedit.history.undo
worldedit.history.undo.self
//undo使用所需,有self代表只能復圓自己的變更建築師或OP
worldedit.history.redo
worldedit.history.redo.self
//redo使用所需,有self代表只能復圓自己的變更建築師或OP
worldedit.selection.pos
worldedit.selection.hpos
worldedit.selection.chunk
選區指令,
其中//pos、//pos1與//pos2都由worldedit.selection.pos管理,
//hpos、//hpos1、//hpos2為worldedit.selection.hpos管轄範圍。
而//chunk則為worldedit.selection.hpos管轄範圍

建築師或OP
worldedit.*使用所有小木斧工具與相關指令建築師或OP
詳細這邊翻:WorldEdit Permissions

因為小木斧大部分指令(至少今天講的基礎指令)都可以用worldedit.xxx或worldedit.xxx.xxx做控制,以及大部分伺服器都會直接給建築師完全存取的兩個因素,因此我不做多餘介紹喔~

指令表

列出常用的就好,其他我好懶喔ww

填充指令

因為剛剛沒說明那麼多,這邊就為各位整理一下了

指令說明範例
//set <方塊>設定方塊//set oak_plank
//set <方塊,方塊>設定方塊平均機率分布//set oak_plank spruce_plank
//set <A%方塊,B%方塊>設定方塊指定機率分布//set 70%oak_plank 30%spruce_plank
//set <^方塊>設定方塊而不改變方塊狀態,比較常用在//replace啦//set ^[waterlogged=false]
(代表去除選區方塊中的水)
//set <player_head|玩家ID>設置玩家頭顱 *指令使用方法跟上方差不多,基本上就是移除尖括號,其他你就照我中文說明的貼上去即可
//set <告示牌ID>|第一段|第二段  設置有文字的告示牌 *
//set #clipboard貼上剪貼版的內容 *
//set hand設定選取區為手上的方塊 *

取代指令

指令說明範例
//replace <方塊一> <方塊二>取代方塊…//replace oak_planks spruce_planks
//re <方塊一> <方塊二>因為取代方塊太長,re是縮寫功能一樣//re oak_planks spruce_planks
//set中有標星號代表這邊也可以用同樣方法(當然set要換成re或replace)

藍圖指令

剛剛沒有特別講,這邊就列表說明吧

指令說明
//schem save [檔案名稱]將剪貼簿內容存成藍圖(記得要先copy)
//schem load [檔名]加載藍圖
//schem delete [檔名]刪除藍圖

結語

希望這篇文章有幫助到你,最近發現我巴哈文章的流量好像越來越少我好想哭QAQ…所以如果大家有興趣的話可以分享給朋友看看,我希望文章可以幫到更多人^^

SamHacker
SamHacker

嗨,大家好!我是SamHacker,一名對程式設計充滿熱情的國二生。
從幾年前開始,我就深陷於程式設計的沼澤,不斷地越挖越深…..
在WordPress方面,我喜歡挑戰自己,創建出獨特且功能豐富的網站;
同時,無聊也會在那邊做Discord機器人。
順便扯一下,Minecraft好好玩

文章: 33

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *