Bukkit Spigot Japan Wikiは、Hello Minecraftを応援しています。

超まいくらひろば2017バナー

 

 

プラグイン解説:WorldEdit

提供: Bukkit Spigot Japan Wiki
移動: 案内検索
プラグイン名 WorldEdit
製作者 sk89q
配布場所 WorldEdit - Bukkit.org
前提プラグイン なし
解説記事対応バージョン 6.x系列
生成されるファイル WorldEdit > config.yml, sessions
ライセンス GPLv3
ソースコード https://github.com/sk89q/worldedit
関連サイト http://wiki.sk89q.com/wiki/WorldEdit
備考

WorldEditについて

通常、人の手では大変な時間のかかる大規模ブロック配置を簡単に行えるようになるプラグインです。
ただし、使い方によってはサーバーに非常に負荷がかかることになり得るため、用法用量を守り正しくお使い下さい。

WorldEditCUI(選択範囲を可視化するMOD)

WorldEdit本来の説明とは少し話は反れますが、補助MODであるため説明します。
WorldEditCUIとは、選択範囲を可視化するMODです。このMODを使用することで、どこを範囲としたのかがひと目でわかり、作業を楽にすることができます。
なお、サーバー側で何かする必要はありません。
導入は、次のようにすることで可能です。

  1. LiteLoaderをインストールします。
  2. WorldEditCUIの「download links」の中から適合するバージョンのものをダウンロードし、modsフォルダに入れます(拡張子は.litemodでなくてはなりません)。
    なお、動かなければmodsフォルダ下に<バージョン名>フォルダ(1.11.2という名前のフォルダなど)を作成し、そこへlitemodファイルを配置すると、動くことがあります。
  3. Minecraftを実行すると、導入完了です。ですので、サーバーに参加し、範囲選択の操作をすると、選択範囲が可視化され、表示されることが確認できます。

WorldEditの導入方法

サーバー構築を参考にサーバーを構築しておいて下さい。

  1. 配布ページからプラグインをダウンロードして下さい。
  2. jarファイルをサーバーのpluginsフォルダー内に配置します。
  3. サーバーを起動します。
  4. サーバーのコンソールに「pl」コマンドを実行させて一覧の中から、WorldEditが緑色であればサーバーを停止します。
  5. pluginsフォルダー内にWorldEditフォルダーが生成されたことを確認します。
  6. WorldEditフォルダー内にconfig.ymlとsessionsが生成されていれば導入完了です。

コマンド一覧

< >はコマンド入力に必須な引数を、[ ]はオプション(必須ではない)の引数を表します。
< - >: 前後の数字の範囲の中でいずれかを選択することを表しています。
< / >: 前後のどちらかを選択することを表しています。
true/false: 有効/無効にするかを選択するものです(true→有効,false→無効)。
string: 文字列、つまりテキスト、文章を書くことを表しています。
number: 数字を書くことを表しています。
(入力の際<>や[]は不要です)

コマンド 引数 説明
//limit <limit> 全ての操作に対する変更可能なブロックの最大数を設定する。使用者のみ影響する。また、-1と指定すると制限は解除される。
履歴
//undo [ここの数値分巻き戻す、無い場合一つ戻る] [player] コマンドで行った変更を巻き戻す。
//redo [ここの数値分取り消す、無い場合一つ取り消す] [player] undoの巻き戻しを取り消す。
/clearhistory 変更の履歴を削除する。
範囲選択
//wand 範囲選択用のワンド(デフォルトだと木の斧)を取り出す。 ワンドは左クリックで1点目、右クリックで2点目を指定する。
/toggleeditwand ワンドの有効/無効を切り替える。
//sel [-d] <cuboid|extend|poly|ellipsoid|sphere|cyl|convex> 範囲選択に使用する形状を変更する。cuboid:直方体(デフォルト)、extend:直方体の拡張、poly:多面体、ellispoid:楕円形、sphere:球体、cyl:円柱、convex:多面体
//desel 現在選択している範囲を消去する。
//pos1 [x,y,z] 現在位置(プレイヤーの足の部分)を範囲選択の1点目に指定する。座標を入れた場合そこを1点目に指定する。
//pos2 [x,y,z] 現在位置(プレイヤーの足の部分)を範囲選択の2点目に指定する。座標を入れた場合そこを2点目に指定する。
//hpos1 視界内の選択ブロックを範囲選択の1点目に指定する。
//hpos2 視界内の選択ブロックを範囲選択の2点目に指定する。
//chunk [-sc] [x,z] 現在位置のチャンクを範囲に指定する。
//expand <距離> 選択範囲を現在プレイヤーが向いている方向へ拡大する。
//expand <距離> <方向 n,e,s,w,u,d> 選択範囲を指定方向へ拡大する。
//expand <前方の距離> <後方の距離> [方向 n,e,s,w,u,d] 選択範囲を指定方向とその後方へ拡大する。
//expand vert y軸方向の上限から下限まで選択範囲を拡大する。
//contract <距離> 選択範囲を現在プレイヤーが向いている方向へ縮小する。
//contract <距離> [方向 n,e,s,w,u,d] 選択範囲を指定方向へ縮小する。
//contract <距離> <後方の距離> [方向 n,e,s,w,u,d] 選択範囲を指定方向とその後方へ縮小する。
//outset [-hv] <距離> 選択範囲全体を外側に拡大する。
//inset [-hv] <距離> 選択範囲全体を内側に縮小する。
//shift <距離> [方向 n,e,s,w,u,d] 選択範囲を指定した方向へ移動する。方向の指定が無い場合は現在向いている方向へ移動する。
//size [-c] 選択範囲の情報を表示する。
//count [-d] <ブロックの種類> 選択範囲内の指定したブロックの数を計測する。
//distr [-cd] 選択範囲内のブロックの内訳を表示する。
範囲内操作
//set <ブロックの種類> 選択範囲を指定したブロックに置き換える。
//replace <ブロックの種類> 選択範囲内のブロックを、指定したブロックに置き換える。
//replace <元のブロックの種類> <変更後のブロックの種類> 選択範囲内の元のブロックを、指定したブロックに置き換える。
//overlay <ブロックの種類> 選択範囲内のブロックの上に、指定したブロックを一層積み重ねる。
//walls <ブロックの種類> 選択範囲内の側面に指定したブロックを設置する。壁の内側は変更されない。
//outline <ブロックの種類> 選択範囲の外側に指定したブロックを設置する。
//center <ブロックの種類> 選択範囲の中心部分にブロックを設置する。
//smooth [-n] [反復回数] 選択範囲内を滑らかにする。
//deform [-ro] <式> 選択範囲を指定した式で整形する。
//hollow [thickness] [block] 窪みをつける。
//regen 選択範囲を再生成する。
//move [-s] [数値] [方向 n,e,s,w,u,d] [残すブロックの種類] 選択範囲のブロックを指定方向に移動する。選択範囲は移動しない。
//stack [-sa] [数値] [方向 n,e,s,w,u,d] 選択範囲のブロックを指定回数積み重ねる。
//naturalize 選択範囲を自然な状態に整形する。
//line [-h] <ブロックの種類> [厚さ] 1点目と2点目を線で繋ぐ。
//curve [-h] <block> [thickness] 1点目と2点目以降に曲線を引く。convexのみ作動する。
//forest [木の種類] [密度] 指定範囲内に木を植える。
//flora [密度] 指定範囲内に植物を生やす。
クリップボード
//copy [-m] 選択範囲をクリップボードにコピーする。
//cut [-m] 選択範囲をクリップボードに切り取る。
//paste [-sao] [-a] 現在位置を起点として、クリップボードの内容を張り付けする。
//rotate <y-axis> [x-axis] [z-axis] クリップボードを時計回りに回転する。90度間隔のみ。
//flip [方向 n,e,s,w,u,d] クリップボードを指定方向に反転する。
//schematic or //schem save [<format>] <filename> クリップボードをファイルに保存する。
//schematic or //schem delete <filename> 保存したファイルを消去する。
//schematic or //schem load [<format>] <filename> 保存したファイルを読み込む。
//schematic or //schem list [-dn] [-p <page>] 保存したファイルの一覧を表示する。
//schematic or //schem formats 保存したファイルの図形式を表示する。
/clearclipboard クリップボードの内容を削除する。
生成
//generate [-hroc] <ブロックの種類> <式> 任意の式でブロックを生成する。
//generatebiome [-hroc] <ブロックの種類> <式> 任意の式でバイオームを生成する。
//hcyl <ブロックの種類> <東西方向の半径>[,<南北方向の半径>] [高さ] 空洞のある円柱を生成する。南北方向の半径の指定がある場合、楕円柱になる。
//cyl [-h] <ブロックの種類> <東西方向の半径>[,<南北方向の半径>] [高さ] 円柱を生成する。南北方向の半径の指定がある場合、楕円柱になる。
//sphere [-h] <ブロックの種類> <南北方向の半径>[,<上下方向の半径>,<東西方向の半径>] [現在位置を底面とする? true|false (default)] 楕円球体を生成する。南北方向の半径のみ指定の場合球体を生成する。
//hsphere <ブロックの種類> <南北方向の半径>[,<上下方向の半径>,<東西方向の半径>] [現在位置を底面とする? true|false (default)] 空洞のある楕円球体を生成する。南北方向の半径のみ指定の場合球体を生成する。
//pyramid [-h] <ブロックの種類> <大きさ> ピラミッド状にブロックを生成する。
//hpyramid <ブロックの種類> <大きさ> 空洞のあるピラミッド状にブロックを生成する。
/forestgen [大きさ] [木の種類] [密度] 森林を生成する。
/pumpkins [大きさ] カボチャ群を生成する。
便利系
/toggleplace 起点の現在位置と選択範囲の切り替え
//fill <ブロックの種類> <半径> [深さ] 穴を埋める。液体での利用を想定
//fillr <ブロックの種類> <半径> [深さ] 半球形で穴を埋める。液体での利用を想定
//drain <半径> 指定半径内の現在接触している液体を吸収する。
/fixwater <半径> 指定範囲内の現在接触している水流を修正する。
/fixlava <半径> 指定範囲内の現在接触している溶岩流を修正する。
/removeabove [大きさ] [高さ] 現在位置より上のブロックを指定高さ分削除する。
/removebelow [大きさ] [高さ] 現在位置より下のブロックを指定高さ分削除する。
/replacenear [-f] <大きさ> <元のブロックの種類> <変更後のブロックの種類> 元のブロックを新たに指定したブロックに置き換える。
/removenear <ブロックの種類> [大きさ] 指定ブロックを削除する。
/snow [半径] 指定範囲内に雪を積もらせる。水は凍結する。
/thaw [半径] 指定範囲内の雪を除雪する。氷は解ける。
/ex [半径] 指定半径内を消火する。
/butcher [-plangbtfr] [半径] 指定範囲内の敵対MOBを削除する。
/remove <type> <半径> 範囲内の指定したエンティティを消去する。
/green [-f] [半径] 指定半径内に草をはやす。
//calc <expression> Evaluate a mathematical expression.
チャンク
/chunkinfo 現在位置のチャンク情報を表示
/listchunks チャンク一覧を表示する。
/delchunks 現在位置のチャンクを削除する。
スーパーピッケル
// スーパーピッケルの有効・無効の切り替え。
/sp single 単ブロックモードに切り替える。(デフォルト)
/sp area <半径> 立方体モードに切り替える。
/sp recur <半径> 球体モードに切り替える。
ツール
/tool <repl|cycler|floodfill|brush|lrbuild|tree|deltree|farward|info|none> ツールの切り替え
/none ツール機能を削除する。
/info 情報ツール
/farwand 遠距離ブロック選択ツール
/lrbuild <左クリック時のブロックの種類> <右クリック時のブロックの種類> 遠距離ブロック配置ツール
/tree [type] 植林ツール [tree, regular, big, bigtree, redwood, sequoia, tallredwood, tallsequoia, birch, white, whitebark, pine, randredwood, randomredwood, anyredwood, rand, random]
/deltree 木の削除ツール
/repl <ブロックの種類> 置き換えツール
/cycler サイクラーツール 羊毛の色などを変更できる。
/flood <pattern> <range> 範囲置き換えツール
ブラシ
/brush sphere [-h] <ブロックの種類> [半径] 球形ブラシ
/brush cylinder [-h] <ブロックの種類> [半径] [高さ] 円柱ブラシ
/brush clipboard [-ap] クリップボードの内容をブラシにする。
/brush smooth [-n] [大きさ] [反復回数] 滑らかブラシ
/brush extinguish [radius] Switch to the fire extinguisher brush tool.
/brush gravity [-h] [移動させる数] 重力ブラシ。触れたブロックとその周囲を指定分下へ移動させる。
/brush butcher [-plangbtfr] [radius] butcherブラシ
/size <大きさ> ブラシツールのサイズを変更する。
/mat <ブロックの種類> ブラシツールのブロックを変更する。
/range <長さ> ブラシの長さを変更する。
/mask マスクを消去する。
/mask <ブロックの種類> マスクを指定する。ブラシツールに影響されるブロックを制限する。
//gmask <mask> Set the global mask.
移動
/unstuck ブロックの中から脱出する。
/ascend [階層] 上の階層にテレポートする。
/descend [階層] 下の階層にテレポートする。
/ceil [clearance] 天井にテレポートする。
/thru 壁の向こうにテレポートする。
/jumpto 視界内のブロックにジャンプする。
/up [-fg] [距離] 任意の距離を移動
スナップショット
//restore [snapshot] Restore a particular snapshot.
//snapshot use <snapshot> Use a particular snapshot.
//snapshot sel <index> Choose the snapshot based on the list id.
//snapshot list [num] List the 5 newest snapshots.
//snapshot before <date> Find the first snapshot before the given date.
//snapshot after <date> Find the first snapshot after the given date.
スクリプト
/cs <script> [args...] Executes a script.
/.s [args...] Re-executes last script with new arguments.
/<script>.js [args...] Executes a JS script.
General commands
/searchitem <検索ワード> ブロック名を検索する。
/worldedit WorldEditのコマンド一覧を表示する。
/worldedit help [command] Displays help documentation for the given command, or lists all commands if none are given (aliased to //help).
/worldedit reload WorldEditの設定ファイルを再読み込みする。
/worldedit version WorldEditのバージョンを表示する。
/worldedit tz Set your time zone. This is temporary.
//fast Toggles fastmode performance.
バイオーム
/biomelist [page] バイオーム一覧を表示する。
/biomeinfo [-pt] 選択範囲内のバイオーム情報を表示する。
//setbiome [-p] <biome type> Set the selected area to the specified biome type.

The -p flag changes the block (column) you are standing in.

config.ymlの初期設定

バージョン: 6.1.5'

#
# WorldEdit's configuration file
#
# About editing this file:
# - DO NOT USE TABS. You MUST use spaces or Bukkit will complain. If
#   you use an editor like Notepad++ (recommended for Windows users), you
#   must configure it to "replace tabs with spaces." In Notepad++, this can
#   be changed in Settings > Preferences > Language Menu.
# - Don't get rid of the indents. They are indented so some entries are
#   in categories (like "max-blocks-changed" is in the "limits"
#   category.
# - If you want to check the format of this file before putting it
#   into WorldEdit, paste it into http://yaml-online-parser.appspot.com/
#   and see if it gives "ERROR:".
# - Lines starting with # are commentsand so they are ignored.
#
 
limits:
    allow-extra-data-values: false
    max-blocks-changed:
        default: -1
        maximum: -1
    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: [6, 7, 14, 15, 16, 26, 27, 28, 29, 39, 31, 32, 33, 34, 36, 37, 38, 39, 40, 46, 50, 51, 56, 59, 69, 73, 74, 75, 76, 77, 81, 83]
 
use-inventory:
    enable: false
    allow-override: true
    creative-mode-overrides: false
 
logging:
    log-commands: false
    file: worldedit.log
 
super-pickaxe:
    drop-items: true
    many-drop-items: false
 
snapshots:
    directory:
 
navigation-wand:
    item: 345
    max-distance: 100
 
scripting:
    timeout: 3000
    dir: craftscripts
 
saving:
    dir: schematics
 
files:
    allow-symbolic-links: false
 
history:
    size: 15
    expiration: 10
 
wand-item: 271
shell-save-type:
no-double-slash: false
no-op-permissions: false
debug: false
show-help-on-first-use: true

(設定ファイル)の設定変更

  • YAML形式の記述方法についてはYAMLファイルを参照して下さい。

< - >: 前後の数字の範囲の中でいずれかを選択することを表しています。
< / >: 前後のどちらかを選択することを表しています。
<true/false>: その項目の機能を有効/無効にするかを選択するものです(true→有効,false→無効)。
string: 文字列、つまりテキスト、文章を書くことを表しています。
number: 数字を書くことを表しています。
(入力の際<>は不要です) 執筆中

チュートリアル

初めての方向けに基本的な機能を解説していきます。

範囲選択

この機能は様々な機能を使うために必要で、WorldEditを前提とするWorldGuardなどのプラグインでも使用します。
範囲選択をする際は、杖を使って行うことが一般的です。ですが、現在位置を使って選択することも可能です。

杖を使った範囲選択

今回は説明のため、このように白と黒の羊毛で説明していきます。

Tutorial pos .png

1. 杖(デフォルトでは木の斧)を持って、1点目を左クリックします。

Tutorialpos1.png

2. 杖を持って、2点目を右クリックします。1点目と同じ座標を指定することも可能です。

Tutorialpos2.png


これで1点目を起点、2点目を終点とした正方形が選択範囲となります。
範囲のイメージとしては、オレンジで囲った範囲です。

Tutorialpos image.png


平面だけではなく、立体的な指定も可能です。
ここでは例として上に伸ばし、紫の羊毛を1点目に指定しました。2点目はそのままです。

Tutorial pos up.png

この場合、選択範囲のイメージはこのようになります。

Tutorial up image.png

現在位置を使った範囲選択

  1. 指定したい座標に立ち、//pos1コマンドを打つと現在位置を1点目に指定します。
  2. 次の指定したい座標に立ち、//pos2と打つと現在位置を2点目に指定します。

これも同様に1点目を起点、2点目を終点とした囲いを選択範囲とします。
また、杖とコマンドの併用(例えば1点目を杖、2点目をコマンドで指定)も可能です。

選択範囲の操作

範囲選択をしたら、その範囲を操作(ブロック設置など)できます。ここでは、選択範囲の操作の方法を説明します。
ここでは一番基本の操作の、選択範囲にブロックを敷き詰める方法を、//setコマンドを用いて説明します。

先程の平面の範囲を指定した状態で//set 1(1の代わりにstoneも可能)とコマンドを打つと、 次のように選択範囲(オレンジの羊毛で示されている範囲)が全て石に置き換わります。

Tutorial set stone.png

できなかった場合は、範囲の選択ミス、コマンドのタイプミス等が考えられます。

次に、立体の方にも同様のことをしてみます。
すると、次のように立体の選択範囲が全て石に置き換わります。

Tutorial cube set.png

画像ではわかりませんが、内部まで全て石に置き換わっています。

コピー&ペースト

最後に、もう一つの重要な機能と言える『コピー』と『ペースト』について説明します。 説明のため、例としてこのようなものを用意しました

Tutorialcopy.png

コピーコマンドは通常ではプレイヤーが立っている座標を中心にコピーするので、何か目安となるものを用意すると良いでしょう
今回の場合はコピーコマンドをオレンジ、ペーストコマンドを紫の羊毛の上で使う目安にします。
範囲選択で白黒の四角全てを範囲指定して、オレンジの羊毛の上に立ち

Tutorial orange.png

コマンド//copyと打ちます、赤紫の文字で ~block(s) were copied と出れば成功です。

次にペースト側の目安にした紫の羊毛の上に立ち

Tutorial purple.png

コマンド//pasteと打ちます、すると

Tutorial paste.png: Tutorial paste end.png

同じ位置関係で同じ白黒の四角が紫の羊毛側にも生成されました、これがコピー&ペーストです。
範囲選択に加え癖が強い機能なので、最初は手こずると思いますがとても便利な機能なのでぜひ使いこなしてみてください。
これらの機能を中心に手作業では時間のかかる作業を効率よく進める事ができるのがWorldEditです。
これでチュートリアルは終了となります。

詳細解説

執筆中

リンク

執筆中