-----English version-----
Overview
Three items—a wooden axe, a wooden pickaxe, and a wooden sword—and three modes—fill, clone, and stack—allow you to use various building functions.
Basic usage involves switching between modes in the chat box, specifying the area with the axe and other necessary information in the chat box, executing with the pickaxe, and canceling with the sword if you need to cancel the excution.
Terminology
Below is a summary of the terms used in explaining this add-on.
Some of the terms may be technical and difficult, but you don't need to worry too much about them.
- "null": A value representing no value in a variable.
- "Rotational Transform": To rotate and move a plane or solid.
- "Mirror Transform": To mirror a plane or solid, as if reflected in a mirror.
- "Linear Transform": Although technically different, this is a general term for rotational and mirror transforms.
- "Fill": A function that fills a specified area with specified blocks.
-"clone": A function that copies and pastes structures that exist within a specified range to any position within a chunk that can read those structures.
-"stack": A function that copies and pastes structures that exist within a specified range on top of that structure a specified number of times.
-"Command": Messages interfering with this add-on
-"Execute Command": Sending a command in the chat box.
-"cmdFill": A function that reproduces the results of fill saved by the saveFill command by placing a special command block.
-"LT options": A collective term for the rotation option, which allows you to apply a rotation transformation to the structure being copied when executing clone, and the reflection option, which allows you to apply a mirror transformation.
-"clone options": A collective term for the masked option, which prevents blocks in the destination area from being overwritten with air blocks from the source area when executing clone, the move option, which fills the source area with air blocks simultaneously with pasting, and the LT option, which applies a linear transformation to the structure being copied.
- "Main Function": A general term for fill, clone, stack, and cmdFill.
-"Auxiliary Function": A function that can be executed using an item other than the Wooden Axe, Wooden Pickaxe, or Wooden Sword.
-"Item is linked to a main function/auxiliary function": An item that can execute a certain main function/auxiliary function when used.
-"Tool": An item that is linked to a function or auxiliary function. The tools that execute the main function are the Wooden Pickaxe and these cannot be changed.
-"Use Tool": Refers to right-clicking while holding an item in your right hand.
-"id": An auxiliary function for checking a block's ID.
-"tp": An auxiliary function for teleporting the player to a block in front of it or slightly behind it.
-"setblock": An auxiliary function for placing a block in a location surrounded by only air blocks, and for automatically and instantly replacing a destroyed block with a specified block.
-"idTool": A tool for executing id.
-"tpTool": A tool for executing tp.
-"setblockTool": A tool for executing setblock.
Names and meanings of variables displayed by the variables command.
This add-on has many variables whose values can be directly rewritten by the user using dedicated commands.
For such variables, there is a variables command that can display a list of pairs of variable names and their stored values.
-"mode": A variable that stores whether to use fill mode, clone mode, or stack mode.
-"begin" and "end": Variables that store the coordinates of the vertices of the specified range. begin and end are the diagonal endpoints of the range (i.e., the rectangular prism).
-"fmode": When mode is fill, this variable stores a value specifying which of the following modes will be used to fill: normal mode, which simply fills everything within the specified range with the specified block; incReplace mode, which fills only the parts of the range that contain the specified block; excReplace mode, which fills only the parts of the range that do not contain the specified block; or mix mode, which randomly fills the range with multiple blocks at a specified rate.
-"blockId": When mode is fill, this variable stores the IDs of the blocks to fill within the specified range. However, this is not referenced when fmode is mix.
-"includeBlockIds": When fmode is incReplace, this variable stores a list of the IDs of the blocks that will be replaced. As this variable stores multiple values, it is expressed in terms such as "add block IDs to includeBlockIds" or "exclude block IDs from includeBlockIds".
-"excludeBlockIds": When fmode is excReplace, this variable stores a list of the IDs of blocks that cannot be replaced. Since this is a variable that stores multiple values, you can use phrases such as "add block IDs to includeBlockIds" or "exclude block IDs from includeBlockIds".
- "mixRule"...variable that stores the list of blocks to fill and their proportions when fmode is set to mix.
- "cmdfmode"...variable that stores a copy of the fmode value when the saveFill command is executed.
- "cmdBlockId"...variable that stores a copy of the blockId value when the saveFill command is executed.
- "cmdIncludeBlockIds"...variable that stores a copy of the includeBlockIds value when the saveFill command is executed.
- "cmdExcludeBlockIds"...variable that stores a copy of the excludeBlockIds value when the saveFill command is executed.
- "cmdMixRule"...variable that stores a copy of the mixRule value when the saveFill command is executed.
-"LTtype"...When the LT option is specified, this variable stores a string specifying the type of linear transformation to apply to the copied structure. It can contain either the string "rotation" or the string "reflection."
-"rotation"...When the "rotation" option is specified, this variable stores a value specifying the degree to which the structure is rotated. It can contain the string "90," "180," "270," or null.
-"symAxis"...When the "reflection" option is specified, this variable stores a value specifying the symmetry of the structure. It can contain the string "x," "z," "origin," or null.
-"stackNum"...When the mode is set to "stack," this variable stores a value indicating how many times the source structure should be pasted on top.
Function Description
Specifying the Mode
As mentioned above, this add-on has three modes: fill, which fills a certain area with blocks; clone, which copies and pastes structures within a certain area; and stack.
The following explains how to switch between these three modes.
You can switch the mode by sending the message "mode <fill, clone, or stack>" in the chat box.
For example, to switch from another mode to clone mode, send the message "mode clone."
By the way, fill mode is the default setting.
Specifying a Range
The main functions provided by this addon are filling blocks within a certain range and copying and pasting structures within a certain range.
Therefore, to use any mode, you must specify the range beforehand.
When you destroy a block with a wooden axe, that point becomes the vertex of the range.
If the mode is fill and the fmode is normal or mix, a diamond block will be placed there as a marker.
Otherwise, the destroyed block will be immediately restored.
Specify the range by doing this twice.
The specified range is saved until it is overwritten or the add-on is reloaded, so you can use fill, clone, or stack on the same range multiple times without having to re-specify the range each time.
fill
Basically functions the same as the fill command.
There are four modes: normal, incReplace, excReplace, and mix. You can switch between fmodes by executing the fmode command. (Normal mode is the default.)
~Basic Usage~
- Switch fmode by sending the message fmode <normal or incReplace or excReplace or mix> in the chat box.
For example, to switch from another mode to incReplace, send the message fmode incReplace.
- Specify a blockId by sending the message bid <blockId> in the chat box.
For example, if you want to use an iron block, send the message bid iron_block.
By default, grass block is specified.
Also, the specified ID is saved until it is overwritten or the addon is reloaded, so you can fill the same block multiple times without having to re-specify the ID each time.
- Once the fmode, range, and blockId are specified, using a wooden pickaxe will execute the fill.
(Please check the "Terminologys" for the meaning of "use")
~Other Notes~
- In incReplace mode and excReplace mode, in addition to specifying the range and blockId, you must also add the block ID to includeBlockIds or excludeBlockIds.(For details, see "Meaning of variables").
You can add multiple types of blocks by sending the message ibid add <id> or ebid add <id> in the chat box.
For example, if you want to replace only grass blocks with another block, send the message ibid add grass_block.
Conversely, if you don't want to replace just the grass blocks, send the message ebid add grass_block.
Also, to revert a block that has already been added to includeBlockIds or excludeBlockIds to an unadded block, send the message ibid delete <Id> or ebid delete <id>.
- In mix mode, in addition to specifying the range and blockId, you must also specify a mixRule.
This can be done by sending the message mixSetting { <id1> : <ratio1> , <id2> : <ratio2> , <id3> : <ratio3>... } in the chat box.
For example, if you want to fill iron blocks, gold blocks, and diamond blocks with ratios of 0.2, 0.3, and 0.5 respectively, send the message mixSetting { "iron_block":0.2 , "gold_block":0.3 , "diamond_block" , 0.5 }.
Be sure to include double quotation marks ("") and make sure all ratios add up to 1.
- After executing fill one or more times, send the message saveFill in the chat box. The values of begin, end, blockId, fmode, etc. from the most recent fill execution will be copied to other dedicated variables. You can then achieve the same results by simply placing a command block named fill Command Block on an anvil.
However, since the information used when executing cmdFill is the area size, not the area itself, when you place this command block, the blocks will not be placed at the exact same coordinates as before, but will be placed relative to the command block's starting point.
It's probably much easier to understand by trying it out for yourself than by reading the instructions.
clone
Basically functions the same as the clone command.
You can specify the masked, move, and LT options.
~Basic Usage~
After specifying the source area, destroy any block with a wooden pickaxe. The coordinates of that block will be assigned to the starting point of the destination, and the clone command will be executed.
However, if you attempt to execute a clone command where the source and destination overlap, nothing will happen.
~Other Notes~
- Sending the message "cop masked true" in the chat box will add the masked option.
The meaning of each option is explained in "clone options" under "Terminology."
To remove this option, send the message "cop masked false."
By the way, the "true" and "false" are optional. If "masked" is true and you send the message "cop masked," masked will change to false, and if "masked" is false and you send the message "cop masked," masked will change to true.
- Sending the message "cop move true" will add the move option.
To remove this option, send the message "cop move false."
By the way, true and false are optional. If move is true and you send the message cop move, move will change to false, and if move is false and you send the message cop move, move will change to true.
- Sending the message cop LT rotation <rotation angle> in the chat box will add the rotation option.
<rotation angle> will be filled in with 90, 180, or 270, and the copied structure will be rotated by the angle corresponding to the specified value.
<rotation angle> can also be filled in with null, which will remove the rotation option.
- Sending the message cop LT reflection <axis of symmetry> in the chat box will add the reflection option.
<axis of symmetry> will be filled in with the string x, z, or origin. If x is entered, the copied structure will be flipped along the x-axis, if z is entered, it will be flipped along the z-axis, and if origin is entered, it will be flipped towards the origin (i.e. a combination of both x- and z-axis flips).
Note that <axis of symmetry> can be set to null, which will remove the reflection option.
stack
Specify the structure to copy and stackNum, and the process of placing a copy of that structure on top of the original structure will be repeated stackNum times.
For example, if you manually create only the first floor of a building, specify the entire first floor as the structure, and then execute stack with the number 19, you can instantly create a 20-story skyscraper.
- Send the message stackNum <number> in the chat box to specify the number of times to stack the structure.
For example, to specify 19, send the message stackNum 19.
The stackNum value is saved until it is overwritten or the add-on is reloaded, so you can use the same number multiple times without having to re-specify it each time.
- Once the range and stackNum have been specified, using a wooden pickaxe will execute stack.
Canceling Execution
Using the Wooden Sword after executing fill, clone, stack, or cmdFill will cancel the execution.
This means the block will return to its state before execution.
However, only the previous state is saved; it is not possible to revert to a state two or more times before.
Furthermore, reloading the add-on will discard the information recorded in the previous state.
Tools and Auxiliary Functions
In addition to the three main functions mentioned above, this add-on provides three auxiliary functions that may be useful when building.
There are three types of auxiliary functions: id, tp, and setblock.
Details are provided in the "Terminology" section.
Like main functions, these auxiliary functions are linked to specific items (the main function is linked to a wooden pickaxe), but auxiliary functions can be linked to any item the user likes.
~Linking Items to Auxiliary Functions~
You can link items to auxiliary functions using the bsTool command.
- Hold the item you want to link in your right hand and type "bsTool define <auxiliary function name>" to link the auxiliary function to the item.
For example, if you want to assign an ID to a Stick, hold the Stick in your right hand and type "bsTool define id".
- Type "bsTool reset" to reset all item-function bindings.
In other words, the default item becomes a tool.
- The binding status of items and auxiliary functions will be maintained even if the add-on is reloaded.
~idTool~
- When you destroy a block while holding the idTool in your right hand, the block's ID will be output to the chat box.
- The destroyed block will be restored immediately.
- The compass is assigned as the idTool by default.
~tpTool~
- Using the tpTool will teleport you to the nearest non-air block in front of you.
- Left-clicking while holding the tpTool in your right hand will teleport you slightly beyond the block in front of you.
- If there are no non-air blocks within 64 blocks in front of the player, you will teleport 64 blocks away.
- The arrow is assigned as the tpTool by default.
~setblockTool~
- Specify the setblockToolBlockId by sending the message "sbtbid <id>" to the chat box.
For example, to specify Iron Block, send the message "sbtbid iron_block."
By default, grass blocks are assigned.
- In Minecraft, blocks can normally only be placed adjacent to blocks other than air.
However, using the setblockTool allows you to place blocks even when there are only air blocks around.
When used, the block specified by the setblockToolBlockId will be placed directly in front of the player.
- Holding the setblockTool in your right hand and destroying a block will replace it with the block specified by the setblockToolBlockId.
tickingarea
Normally, chunks that are a certain distance away from the player are drawn but not loaded.
However, by using the tickingarea command, you can constantly load any location you like, regardless of how far away it is from the player.
When using this add-on, you may encounter an error message stating "The specified area does not exist within the simulation chunk."
In such cases, I recommend using tickingarea command.
By specifying both begin and end and typing "tickingarea add," chunks containing the rectangular area with the begin and end points as vertices will be constantly loaded.
You can also stop constant loading by typing "tickingarea remove."
cntBlocks
If you want to recreate a building created in Creative World in a Survival World, you need information about what blocks were used to build that building, and how much of each.
This command is useful in such cases.
If you enter "cntBlocks" after specifying both begin and end, it will list all the types and numbers of blocks that make up the rectangular region with begin and end as vertices.
Displaying Variable Information
Send the message "variables" in the chat box to display all information about user-specified variables, such as mode, begin, end, and blockId.
This feature is useful, for example, if you forget which block you added to includeBlockIds.
*To enable this add-on, experimental gameplay must be enabled in the game.
*When using this add-on, I recommend enabling content log history in the settings.
("Settings" → "Creator" → "Enable Content Log GUI")
There are two types of error messages that may appear while using the add-on. The first is a user-related issue, which the add-on's program displays in red text in the chat box. The second is a this add-on's program-related issue, which the Minecraft program displays in white text in the upper left corner of the screen (this message will not appear unless Content Log GUI is enabled).
If you see a white text error message, it indicates a bug in the add-on. Please reload the add-on by executing the /reload command, and then please copy and paste the error message and the conditions under which it occurs in the comments section of this article.
-----日本語版-----
概要
木の斧、木のツルハシ、木の剣の3つのアイテム及びfill、clone、stackの3つのモードを使って建築を補助する様々な機能を使う事が出来ます。
チャット欄で使用するモードを切り替え、斧で範囲を、チャット欄でその他必要な情報を指定し、ツルハシで実行し、剣で実行をキャンセルするというのが基本的な使い方です。
用語の定義
当アドオンの説明で用いる用語を以下にまとめます。
一部専門的で難しい用語も含まれていますが、そのような用語について深く気にする必要はありません。
・「fillする」...満たす事。
・「null」...変数の中に値が何も入っていない事を表す値。
・「回転変換」...平面や立体を回転移動させる事。
・「鏡映変換」...平面や立体を、鏡で映したかのように反転させる事。
・「線形変換」...厳密には異なるが、ここでは回転変換と鏡映変換の総称である。
・「fill」...指定された範囲内に指定されたブロックを満たす機能。
・「clone」...指定された範囲内に存在する構造物を、その構造物を読み込めるチャンク内での任意の位置にコピペする機能。
・「stack」...指定された範囲内に存在する構造物を、指定された回数だけその構造物の上にコピペしていく機能。
・「コマンド」...このアドオンに干渉するメッセージ
・「cmdFill」...saveFillコマンド(詳細は後述)により保存されたfillの実行結果を、特殊なコマンドブロックを設置する事によって再現的に実行する機能。
・「LTオプション」...cloneの実行時にコピーする構造物に回転変換を施す事が出来るrotationオプションと、鏡映変換を施す事が出来るreflectionオプションの総称。
・「cloneオプション」...cloneの実行時にコピー先領域にあるブロックをコピー元領域内の空気ブロックで上書きしてしまう事を防止するmaskedオプションと、ペーストと同時にコピー元領域を空気ブロックで満たすmoveオプションと、コピーする構造物に線形変換を施すLTオプションの総称。
・「メイン機能」...fill、clone、stackの総称
・「補助機能」...木の斧、木のツルハシ、木の剣以外のアイテムの使用により実行出来る機能
・「アイテムとメイン機能/補助機能が紐付けられている」...あるアイテムを使用した際にあるメイン機能/補助機能を実行出来る事
・「ツール」...メイン機能または補助機能と紐付いているアイテム。メイン機能を実行するツールは木のツルハシであり、これは変更不可。
・「ツールを使用する」...アイテムを右手に持った状態で右クリックする事を指す
・「id」...ブロックのIDを調べる補助機能
・「tp」...プレイヤーをブロックの手前あるいはブロックの少し奥までテレポートさせる補助機能
・「setblock」...周囲に空気ブロックしかない位置にブロックを設置する機能及び破壊したブロックを特定のブロックに即座に自動で置き換える補助機能
・「idTool」...idを実行するツール
・「tpTool」...tpを実行するツール
・「setblockTool」...setblockを実行するツール
variablesコマンドでその値が表示される変数の名称とその意味
当アドオンには、専用のコマンドを用いる事によってユーザーが直接値を書き換える事が出来る変数が数多く存在します。
そのような変数に対して、変数名と格納されている値をペアにし一覧にして表示する事が出来る、variablesコマンドというものが存在します。
・「mode」...fillモード、cloneモード、stackモードのどれを使うかを格納する変数。
・「begin」「end」...指定された範囲の頂点の座標を格納する変数。beginとendは範囲(つまり直方体)の対角線の端点。
・「fmode」...modeがfillの時に、単純に、指定された範囲内全てを指定されたブロックでfillするnormalモード、範囲内の指定されたブロックがある部分だけにfillをするincReplaceモード、範囲内の指定されたブロックがない部分だけにfillをするexcReplaceモード、複数のブロックを指定された割合で範囲内にランダムでfillするmixモードの中からどれを使ってfillするかを指定する値を格納する変数。
・「blockId」...modeがfillの時に、指定された範囲内にfillするブロックのIDを格納する変数。ただし、fmodeがmixの時は参照されない。
・「includeBlockIds」...fmodeがincReplaceの時に、置き換えられるブロックのIDの一覧を格納する変数。複数の値を格納する変数なので、「includeBlockIdsにブロックIDを追加する」あるいは「includeBlockIdsからブロックIDを除外する」などの言い回しをする。
・「excludeBlockIds」...fmodeがexcReplaceの時に、置き換えられないブロックのIDの一覧を格納する変数。複数の値を格納する変数なので、「includeBlockIdsにブロックIDを追加する」あるいは「includeBlockIdsからブロックIDを除外する」などの言い回しをする。
・「mixRule」...fmodeがmixの時に、fillするブロックの一覧とその割合を格納する変数。
・「cmdfmode」...saveFillコマンド実行時のfmodeの値をコピーを格納する変数。
・「cmdBlockId」...saveFillコマンド実行時のblockIdの値のコピーを格納する変数。
・「cmdIncludeBlockIds」...saveFillコマンド実行時のincludeBlockIdsの値のコピーを格納する変数。
・「cmdExcludeBlockIds」...saveFillコマンド実行時のexcludeBlockIdsの値のコピーを格納する変数。
・「cmdMixRule」...saveFillコマンド実行時のmixRuleの値のコピーを格納する変数。
・「LTtype」...LTオプションが指定されている際に、コピーする構造物に施す線形変換の種類を指定する文字列を格納する変数。rotationという文字列かreflectionという文字列のどちらか一方を格納する。
・「rotation」...rotationオプションが指定されている際に、構造物をどのくらい回転させるかを指定する値を格納する変数。90という文字列か、180という文字列か、270という文字列かnullを格納する。
・「symAxis」...reflectionオプションが指定されている際に、構造物を何を対称に反転させるかを指定する値を格納する変数。xという文字列かzという文字列かoriginという文字列かnullを格納する。
・「stackNum」...modeがstackの時に、コピー元の構造物を上に何回ペーストするかを表す値を格納する変数。
機能の解説
モードの指定
前述の通り、このアドオンにはある範囲内にブロックを満たす機能であるfill、ある範囲内の構造物のコピペを行うclone、stackの3つのモードが存在します。
それら3つのモードを切り替える方法を以下に示します。
チャット欄でmode <fill or clone or stack>というメッセージを送信すると、使用するモードを切り替えられます。
例えば、他のモードからcloneモードに切り替えたい場合はmode cloneというメッセージを送信します。
ちなみに、初期状態ではfillモードになっています。
範囲の指定
このアドオンが提供するメイン機能はある範囲内にブロックを満たす事及びある範囲内の構造物のコピペです。
従って、いずれのモードを使用するにも事前に範囲を指定しておく必要があります。
木の斧でブロックを破壊すると、そこが範囲の頂点になります。
この時、modeがfillでfmodeがnormalあるいはmixの時は、そこに目印としてダイヤモンドブロックが設置されます。
それ以外の場合は、破壊されたブロックが即座に復元されます。
計2回これを行う事によって範囲を指定します。
指定された範囲はそれが上書きされるかアドオンを再読み込みするまで保存されるので、何度も同じ範囲に対してfillやclone、stackを実行したい場合、その都度範囲を指定し直す必要はありません。
fill
基本的にはfillコマンドと同様の機能。
normalとincReplaceとexcReplaceとmixの4つのモードが存在し、fmodeコマンドを実行する事によってfmodeの切り替えが可能です。(初期状態ではnormalモードになっています。)
~基本的な使い方~
・チャット欄でfmode <normal or incReplace or excReplace or mix>というメッセージを送信し、fmodeを切り替えます。
例えば、他のモードからincReplaceに切り替えたい場合はfmode incReplaceというメッセージを送信します。
・チャット欄でbid <blockId>というメッセージを送信してblockIdを指定します。
例えば、鉄ブロックを使いたい場合はbid iron_blockというメッセージを送信します。
ちなみに、デフォルトでは草ブロックが指定されています。
また、指定されたIDはそれが上書きされるかアドオンを再読み込みするまで保存されるので、何度も同じブロックを使ってfillしたい場合、その都度IDを指定し直す必要はありません。
・fmode及び範囲及びblockIdの指定が完了した状態で木のツルハシを使用する( 「使用する」の意味については「用語の定義」を要確認 )とfillが実行されます。
~その他の説明事項~
・incReplaceモード及びexcReplaceモードでは、範囲とblockIdを指定する事に加えて、includeBlockIdsあるいはexcludeBlockIds( 詳細は「変数の意味」にて述べた通り )にブロックIDを追加する必要があります。
ブロックは複数種類追加する事ができ、チャット欄でibid add <id>あるいはebid add <id>というメッセージを送信する事でそれが出来ます。
例えば、草ブロックだけを他のブロックに置き換えたい場合はibid add grass_blockというメッセージを送信します。
逆に、草ブロックだけは置き換えたくないという場合はebid add grass_blockというメッセージを送信します。
また、既にincludeBlockIdsあるいはexcludeBlockIdsに追加されているブロックを追加されていないブロックに戻すためには、ibid delete <Id>あるいはebid delete <id>というメッセージを送信します。
・mixモードでは、範囲とblockIdを指定する事に加えて、mixRuleを指定する必要があります。
チャット欄でmixSetting { <id1> : <比率1> , <id2> : <比率2> , <id3> : <比率3>... }というメッセージを送信する事でそれが出来ます。
例えば、鉄ブロック、金ブロック、ダイヤモンドブロックをそれぞれ0.2、0.3、0.5の割合でfillしたい場合はmixSetting { "iron_block":0.2 , "gold_block":0.3 , "diamond_block" , 0.5 }というメッセージを送信します。
ダブルクォーテーション( "" )の記述及び全ての比率の合計値が1になっている事の確認を忘れないよう気をつけてください。
・fillを一回以上実行した後に、チャット欄でsaveFillというメッセージを送信すると、直近のfillが実行された際のbegin、end、blockId、fmode等の値が専用の他の変数にコピーされ、金床でfillコマンドブロックという名前の付けられたコマンドブロックを設置するだけで同様の実行結果を得られるようになります。
ただし、cmdFillの実行時に使用する情報は領域そのものではなく領域の広さなので、このコマンドブロックを設置した時、以前と全く同じ座標にブロックが配置されるのではなく、コマンドブロックを始点とするようにして相対的にブロックが配置されます。
おそらく、説明を読むよりも実際に試してみた方が圧倒的に分かりやすいと思います。
clone
基本的にはcloneコマンドと同様の機能。
オプションとしてmasked、move、LTを指定する事が出来ます。
各オプションの意味は「用語の定義」の中の「cloneオプション」で述べています。
~基本的な使い方~
コピー元の領域を指定した後に木のツルハシで任意のブロックを破壊すると、そのブロックが存在していた座標がコピー先の始点に割り当てられ、cloneが実行されます。
ただし、コピー元とコピー先が重なるようなcloneを実行しようとした場合は何も起きません。
~その他の説明事項~
・チャット欄でcop masked trueというメッセージを送信するとmaskedオプションが追加されます。
また、このオプションを削除したい場合はcop masked falseというメッセージを送信します。
ちなみに、trueやfalseは省略可能であり、maskedがtrueの時にcop maskedというメッセージを送信するとmaskedはfalseに切り替わり、maskedがfalseの時にcop maskedというメッセージを送信するとmaskedはtrueに切り替わります。
・cop move trueというメッセージを送信するとmoveオプションが追加されます。
また、このオプションを削除したい場合はcop move falseというメッセージを送信します。
ちなみに、trueやfalseは省略可能であり、moveがtrueの時にcop moveというメッセージを送信するとmoveはfalseに切り替わり、moveがfalseの時にcop moveというメッセージを送信するとmoveはtrueに切り替わります。
・チャット欄でcop LT rotation <回転角>というメッセージを送信するとrotationオプションが追加されます。
<回転角>には90か180か270が入り、指定された値に応じた角度だけコピーする構造物を回転させます。
尚、<回転角>にはnullを入れる事も可能であり、そうするとrotationオプションが削除されます。
・チャット欄でcop LT reflection <対称の軸>というメッセージを送信するとreflectionオプションが追加されます。
<対称の軸>にはxという文字列かzという文字列かoriginという文字列が入り、xが入った場合はコピーする構造物をx軸方向に反転させ、zが入った場合はz軸方向反転させ、originが入った場合は原点方向に反転(つまりx軸方向の反転とz軸方向の反転の双方を組み合わせた反転)させます。
尚、<対称の軸>にはnullを入れる事も可能であり、そうするとreflectionオプションが削除されます。
stack
コピーする構造物とstackNumを指定し、コピー元の構造物の上にその構造物のコピーを配置するという操作をstackNum回だけ繰り返します。
例えば、ビルの1階だけを手作業で作って1階全体を構造物として指定し、19という数を指定してstackを実行すれば、一瞬にして20階建ての高層ビルを生み出す事が出来ます。
・チャット欄でstackNum <number>というメッセージを送信して、構造物を上に積み重ねる回数を指定します。
例えば、19を指定したい場合はstackNum 19というメッセージを送信します。
stackNumはそれが上書きされるかアドオンを再読み込みするまで保存されるので、何度も同じ数をstackNumとして使いたい場合はその都度数を指定し直す必要はありません。
・範囲とstackNumの指定が完了した状態で木のツルハシを使用するとstackが実行されます。
実行キャンセル
fill、clone、stack、cmdFillの実行後に木の剣を使用すると、それらの実行をキャンセル出来ます。
つまり、ブロックが実行前の状態に戻ります。
ただし、保存されるのは1つ前の状態のみであり、2つ以上前の状態に戻す事は出来ません。
また、アドオンの再読み込みを行うと1つ前の状態を記録する情報も破棄されます。
ツールと補助機能
当アドオンは、前述の3つのメイン機能に加えて、その他建築の際に便利になると思われる3つの補助機能を提供しています。
補助機能の種類は、id、tp、setblockの3つがあります。
詳細は「用語の定義」で述べた通りです。
これらの補助機能は特定のアイテムと紐付けられているものであるという点はメイン機能と同様(メイン機能は木のツルハシと紐付いている)ですが、補助機能はユーザーの好きなアイテムと紐付ける事が可能です。
~アイテムと補助機能の紐付け~
bsToolというコマンドを使用する事により、アイテムと補助機能の紐付けに関する設定が可能です。
・紐付けたいアイテムを右手に持った状態で、「bsTool define <補助機能の名称>」と入力すれば、その補助機能とそのアイテムが紐付けられます。
例えば、idを棒に割り当てたい場合は、棒を右手に持った状態で「bsTool define id」と入力します。
・「bsTool reset」と入力すると、アイテムと機能の全ての紐付きを初期化します。
つまり、デフォルトのアイテムが自動的にツールとして割り当てられます。
・アイテムと補助機能の紐付き状況は、アドオンを再読み込みしても維持されます。
~idTool~
・idToolを右手に持った状態でブロックを破壊すると、そのブロックのIDがチャット欄に出力されます。
尚、破壊したブロックは即座に復元されます。
・デフォルトではコンパスがidToolとして割り当てられています。
~tpTool~
・tpToolを使用すると目線の先にある空気以外のブロックの手前までテレポートします。
・tpToolを右手に持った状態で左クリックすると目線の先にあるブロックの少し奥までテレポートします。
・プレイヤーの前の64ブロック以内の領域に空気以外のブロックが存在しない場合は64ブロック先までテレポートします。
・デフォルトでは矢がtpToolとして割り当てられています。
~setblockTool~
・チャット欄に「sbtbid <id>」というメッセージを送信する事によって、setblockToolBlockId( 詳細は「変数の意味」で述べた通り )を指定します。
例えば、鉄ブロックを指定したい場合はsbtbid iron_blockというメッセージを送信します。
ちなみに、デフォルトでは草ブロックが割り当てられています。
・マイクラでは、通常、空気以外のブロックに隣接させるようにしてブロックを設置する事しか出来ません。
しかし、setblockToolを使用すれば周囲に空気ブロックしかない状態でもブロックの設置が可能です。
使用すると、プレイヤーの目の前にsetblockToolBlockIdが指定するブロックが設置されます。
・setblockToolを右手に持ってブロックを破壊すると、そのブロックをsetblockToolBlockIdが指定するブロックに置き換えます。
tickingarea
通常、プレイヤーからある程度離れているチャンクは、描画はされますが読み込みは行われません。
しかし、tickingareaというコマンドを用いれば、プレイヤーからどんなに離れていても好きな場所を常に読み込ませ続ける事が出来ます。
当アドオンを使用していると、「指定されている範囲がシミュレーションチャンク内に存在しません」というエラーメッセージが出る事があるかもしれません。
そういった場合はtickingareaコマンドの利用を推奨します。
beginとendの両方を指定した状態で「tickingarea add」と入力すれば、beginとendを頂点とする直方体領域を含むチャンクが常時読み込みされるようになります。
また、「tickingarea remove」と入力すれば常時読み込みを終了出来ます。
cntBlocks
クリエイティブワールドで作成した建築物をサバイバルワールドで再現したい場合、その建築物を建てるにあたってなんのブロックをどのくらい使用したかという情報を得る必要があります。
これはそのような場合に役立つものです。
beginとendの両方を指定した状態で「cntBlocks」と入力すれば、beginとendを頂点とする直方体領域を構成するブロックの種類と数を全てリストアップします。
変数の情報の表示
チャット欄でvariablesというメッセージを送信すると、mode、begin、end、blockIdなどの、ユーザーが指定する各種変数の情報が全て画面に出力されます。
例えば、includeBlockIdsに追加したブロックを忘れてしまった時などにこの機能が役に立ちます。
※このアドオンを有効化するためには、ゲーム内で試験的なゲームプレイを有効にする必要があります。
※当アドオンを使用する際は、設定でコンテンツログの履歴を有効化しておく事を推奨します。
(「設定」→「クリエイター」→「コンテンツログGUIの有効化」)
アドオン使用中に表示される可能性のあるエラーメッセージは2種類あり、1つ目はユーザー側の問題で当アドオンのプログラムがチャット欄に赤文字で表示するエラーメッセージであり、2つ目は当アドオンのプログラム側の問題でマイクラ自体のプログラムが画面左上に表示する白文字のエラーメッセージ(コンテンツログGUIを有効化していないと表示されないメッセージ)です。
白文字のエラーメッセージが表示された場合、当アドオンにバグが存在するという事になりますので、/reloadというコマンドを実行しアドオンを再読み込みしていただいた後、当記事のコメント欄にてエラーメッセージのコピペとその発生条件をご報告していただけると助かります。