From 6a4fdd131478f6c39e6be5c7cda51cc30796c599 Mon Sep 17 00:00:00 2001 From: Maddy Miller Date: Tue, 2 Sep 2025 18:28:23 +1000 Subject: [PATCH 1/5] Add some quick docs for the new masks in WorldEdit 7.4 --- source/usage/general/masks.rst | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/source/usage/general/masks.rst b/source/usage/general/masks.rst index d2c931a..79b3585 100644 --- a/source/usage/general/masks.rst +++ b/source/usage/general/masks.rst @@ -69,6 +69,12 @@ Solid Block Mask The mask ``#solid`` will match any blocks that are considered "solid". That is - blocks that restrict entities (such as players) from moving through them. +Full Cube Mask +---------------- + +The mask ``#fullcube`` will match any blocks that take up the entire block cube. + + Offset Mask ----------- @@ -80,6 +86,19 @@ Using ``>`` (overlay) or ``<`` (underlay) preceding another mask will match bloc //replace >##planks smooth_stone_slab +Adjacency Mask +-------------- + +Using `~` preceding another mask will match blocks that are adjacent to the other mask. + +.. note:: Adjacency for the case of this mask is defined as being directly next to or above/below. Diagonal blocks do not match. + +.. topic:: Example: Adjacency masks + + Surrounding all mob spawners with glowstone:: + + //replace ~spawner glowstone + Region Masks ------------ @@ -89,6 +108,11 @@ The first type of region mask is ``#region`` (aliases: ``#sel``, ``#selection``) The second type of region mask is ``#dregion`` (d for dynamic, also ``#dsel``, ``#dselection``) which will always stay updated with your current selection. +Clipboard Mask +-------------- + +The mask ``#clipboard`` will match any blocks that match the current clipboard. This can be paired with commands such as `//regen -c`` to match all blocks that are the same as natural generation. + Block Category Mask ------------------- From 7ade785cf43011ff1cff41b8350e1103ba29baa7 Mon Sep 17 00:00:00 2001 From: Maddy Miller Date: Tue, 2 Sep 2025 18:30:54 +1000 Subject: [PATCH 2/5] Update type applying pattern docs to indicate it can be used with other patterns --- source/usage/general/patterns.rst | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/usage/general/patterns.rst b/source/usage/general/patterns.rst index de26ed7..3ed83a8 100644 --- a/source/usage/general/patterns.rst +++ b/source/usage/general/patterns.rst @@ -115,7 +115,11 @@ This pattern, prefixed by ``^``, lets you set the type or states of a block with Doubling up all slabs:: - //replace ##slabs ^[type=double] + //replace ##slabs ^[type=double] + + Replacing all stairs with a random selection of stairs, while maintaining orientation, etc:: + + //replace ##stairs ^##stairs Block Category Pattern ---------------------- From 2ea9cac40fa2911c3150060cf9ce4f7bc6b95901 Mon Sep 17 00:00:00 2001 From: Maddy Miller Date: Tue, 2 Sep 2025 18:40:31 +1000 Subject: [PATCH 3/5] Update branding to 7.4 --- source/api/index.rst | 2 +- source/conf.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/source/api/index.rst b/source/api/index.rst index 530bb33..1401508 100644 --- a/source/api/index.rst +++ b/source/api/index.rst @@ -46,7 +46,7 @@ To get started with the API, read :doc:`concepts/index`. Some common API usages :doc:`examples/index`. When developing, take note of :doc:`internal-apis` to ensure you're using supported APIs. If you need the Javadocs, they are hosted at -``_. +``_. .. _Maven repository: https://maven.apache.org/repositories/layout.html .. _Maven: https://maven.apache.org/ diff --git a/source/conf.py b/source/conf.py index 2ef7327..f210b4f 100644 --- a/source/conf.py +++ b/source/conf.py @@ -66,9 +66,9 @@ # built documents. # # The short X.Y version. -version = '7.3' +version = '7.4' # The full version, including alpha/beta/rc tags. -release = '7.3' +release = '7.4' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. From 88eb2bb559c802b8d61271179225d4461ac33e3a Mon Sep 17 00:00:00 2001 From: Maddy Miller Date: Sun, 7 Sep 2025 16:38:51 +1000 Subject: [PATCH 4/5] Update generated docs files --- source/commands.rst | 184 +++++++++++++++++++++++------------------ source/permissions.rst | 5 +- 2 files changed, 105 insertions(+), 84 deletions(-) diff --git a/source/commands.rst b/source/commands.rst index 8b6ac24..8be0d0a 100644 --- a/source/commands.rst +++ b/source/commands.rst @@ -242,21 +242,6 @@ General Commands   ``[newState]``,"The new side effect state"   ``[-h]``,"Show the info box" -.. raw:: html - - - -.. topic:: ``//update`` - :class: command-topic - - .. csv-table:: - :widths: 8, 15 - - **Description**,"Apply side effects to your selection" - **Permissions**,"``worldedit.update``" - **Usage**,"``//update [sideEffectSet]``" -   ``[sideEffectSet]``,"The side effects" - .. raw:: html @@ -382,6 +367,23 @@ General Commands   ``[-p ]``,"Page of results to return"   ````,"Search query" +.. raw:: html + + + +.. topic:: ``//registry`` + :class: command-topic + + .. csv-table:: + :widths: 8, 15 + + **Description**,"Search through the given registry" + **Permissions**,"``worldedit.registry``" + **Usage**,"``//registry [-p ] [queryBits...]``" +   ````,"The registry to search through" +   ``[-p ]``,"Page of results to return" +   ``[queryBits...]``,"Search query" + Navigation Commands ~~~~~~~~~~~~~~~~~~~ @@ -745,10 +747,11 @@ Selection Commands **Description**,"Get the distribution of blocks in the selection" **Permissions**,"``worldedit.analysis.distr``" - **Usage**,"``//distr [-cd] [-p ]``" + **Usage**,"``//distr [-cd] [-p ] [-m ]``"   ``[-c]``,"Get the distribution of the clipboard instead"   ``[-d]``,"Separate blocks by state"   ``[-p ]``,"Gets page from a previous distribution." +   ``[-m ]``,"Only include blocks matching the given mask" .. raw:: html @@ -1034,9 +1037,10 @@ Region Commands **Description**,"Regenerates the contents of the selection" **Permissions**,"``worldedit.regen``" - **Usage**,"``//regen [-b] [seed]``" + **Usage**,"``//regen [-bc] [seed]``"   ``[seed]``,"The seed to regenerate with, otherwise uses world seed"   ``[-b]``,"Regenerate biomes as well" +   ``[-c]``,"Regenerate to the clipboard" .. raw:: html @@ -1054,11 +1058,12 @@ Region Commands to modify the variables x, y and z to point to a new block to fetch. For details, see https://ehub.to/we/expr" **Permissions**,"``worldedit.region.deform``" - **Usage**,"``//deform [-cor] ``" + **Usage**,"``//deform [-clor] ``"   ````,"The expression to use"   ``[-r]``,"Use the game's coordinate origin"   ``[-o]``,"Use the placement's coordinate origin"   ``[-c]``,"Use the selection's center as origin" +   ``[-l]``,"Fetch from the clipboard instead of the world" .. raw:: html @@ -1109,6 +1114,21 @@ Region Commands **Usage**,"``//flora [density]``"   ``[density]``,"The density of the forest" +.. raw:: html + + + +.. topic:: ``//update`` + :class: command-topic + + .. csv-table:: + :widths: 8, 15 + + **Description**,"Apply side effects to your selection" + **Permissions**,"``worldedit.update``" + **Usage**,"``//update [sideEffectSet]``" +   ``[sideEffectSet]``,"The side effects" + Generation Commands ~~~~~~~~~~~~~~~~~~~ @@ -1402,8 +1422,8 @@ Schematic and Clipboard Commands **Description**,"Load a schematic into your clipboard" **Permissions**,"``worldedit.clipboard.load``, ``worldedit.schematic.load``" - **Usage**,"``/schematic load [format]``" -   ````,"File name." + **Usage**,"``/schematic load [format]``" +   ````,"File name."   ``[format]``,"Format name." .. raw:: html @@ -1418,8 +1438,8 @@ Schematic and Clipboard Commands **Description**,"Delete a saved schematic" **Permissions**,"``worldedit.schematic.delete``" - **Usage**,"``/schematic delete ``" -   ````,"File name." + **Usage**,"``/schematic delete ``" +   ````,"File name." .. raw:: html @@ -1536,7 +1556,7 @@ Schematic and Clipboard Commands -.. topic:: ``//flip`` +.. topic:: ``//flip`` (or ``//mirror``) :class: command-topic .. csv-table:: @@ -1575,64 +1595,50 @@ Tool Commands :widths: 8, 15 **Description**,"Binds a tool to the item in your hand" - **Usage**,"``/tool ``" - -.. raw:: html - - - -.. topic:: ``/tool cycler`` - :class: command-topic - - .. csv-table:: - :widths: 8, 15 - - **Description**,"Block data cycler tool" - **Permissions**,"``worldedit.tool.data-cycler``" - **Usage**,"``/tool cycler``" + **Usage**,"``/tool ``" .. raw:: html - + -.. topic:: ``/tool navwand`` +.. topic:: ``/tool tree`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Navigation wand tool" - **Permissions**,"``worldedit.setwand``" - **Usage**,"``/tool navwand``" + **Description**,"Tree generator tool" + **Permissions**,"``worldedit.tool.tree``" + **Usage**,"``/tool tree [type]``" +   ``[type]``,"Type of tree to generate" .. raw:: html - + -.. topic:: ``/tool none`` (or ``/tool unbind``) +.. topic:: ``/tool info`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Unbind a bound tool from your current item" - **Usage**,"``/tool none``" + **Description**,"Block information tool" + **Permissions**,"``worldedit.tool.info``" + **Usage**,"``/tool info``" .. raw:: html - + -.. topic:: ``/tool floodfill`` (or ``/tool flood``) +.. topic:: ``/tool farwand`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Flood fill tool" - **Permissions**,"``worldedit.tool.flood-fill``" - **Usage**,"``/tool floodfill ``" -   ````,"The pattern to flood fill" -   ````,"The range to perform the fill" + **Description**,"Wand at a distance tool" + **Permissions**,"``worldedit.tool.farwand``" + **Usage**,"``/tool farwand``" .. raw:: html @@ -1650,31 +1656,31 @@ Tool Commands .. raw:: html - + -.. topic:: ``/tool farwand`` +.. topic:: ``/tool selwand`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Wand at a distance tool" - **Permissions**,"``worldedit.tool.farwand``" - **Usage**,"``/tool farwand``" + **Description**,"Selection wand tool" + **Permissions**,"``worldedit.setwand``" + **Usage**,"``/tool selwand``" .. raw:: html - + -.. topic:: ``/tool selwand`` +.. topic:: ``/tool cycler`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Selection wand tool" - **Permissions**,"``worldedit.setwand``" - **Usage**,"``/tool selwand``" + **Description**,"Block data cycler tool" + **Permissions**,"``worldedit.tool.data-cycler``" + **Usage**,"``/tool cycler``" .. raw:: html @@ -1709,48 +1715,62 @@ Tool Commands .. raw:: html - + -.. topic:: ``/tool tree`` +.. topic:: ``/tool lrbuild`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Tree generator tool" - **Permissions**,"``worldedit.tool.tree``" - **Usage**,"``/tool tree [type]``" -   ``[type]``,"Type of tree to generate" + **Description**,"Long-range building tool" + **Permissions**,"``worldedit.tool.lrbuild``" + **Usage**,"``/tool lrbuild ``" +   ````,"Pattern to set on left-click" +   ````,"Pattern to set on right-click" .. raw:: html - + -.. topic:: ``/tool lrbuild`` +.. topic:: ``/tool none`` (or ``/tool unbind``) :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Long-range building tool" - **Permissions**,"``worldedit.tool.lrbuild``" - **Usage**,"``/tool lrbuild ``" -   ````,"Pattern to set on left-click" -   ````,"Pattern to set on right-click" + **Description**,"Unbind a bound tool from your current item" + **Usage**,"``/tool none``" .. raw:: html - + -.. topic:: ``/tool info`` +.. topic:: ``/tool floodfill`` (or ``/tool flood``) :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Block information tool" - **Permissions**,"``worldedit.tool.info``" - **Usage**,"``/tool info``" + **Description**,"Flood fill tool" + **Permissions**,"``worldedit.tool.flood-fill``" + **Usage**,"``/tool floodfill ``" +   ````,"The pattern to flood fill" +   ````,"The range to perform the fill" + +.. raw:: html + + + +.. topic:: ``/tool navwand`` + :class: command-topic + + .. csv-table:: + :widths: 8, 15 + + **Description**,"Navigation wand tool" + **Permissions**,"``worldedit.setwand``" + **Usage**,"``/tool navwand``" .. raw:: html diff --git a/source/permissions.rst b/source/permissions.rst index febae49..1f3ebb6 100644 --- a/source/permissions.rst +++ b/source/permissions.rst @@ -30,7 +30,6 @@ See the :doc:`commands` page for an explanation of some of these commands. ``//timeout``,"``worldedit.timeout``" ``//fast``,"``worldedit.fast``" ``//perf``,"``worldedit.perf``" - ``//update``,"``worldedit.update``" ``//reorder``,"``worldedit.reorder``" ``//drawsel``,"``worldedit.drawsel``" ``//world``,"``worldedit.world``" @@ -39,6 +38,7 @@ See the :doc:`commands` page for an explanation of some of these commands. ``/toggleplace``,"" ``/placement``,"``worldedit.placement``" ``/searchitem``,"``worldedit.searchitem``" + ``//registry``,"``worldedit.registry``" ``/unstuck``,"``worldedit.navigation.unstuck``" ``/ascend``,"``worldedit.navigation.ascend``" ``/descend``,"``worldedit.navigation.descend``" @@ -83,6 +83,7 @@ See the :doc:`commands` page for an explanation of some of these commands. ``//hollow``,"``worldedit.region.hollow``" ``//forest``,"``worldedit.region.forest``" ``//flora``,"``worldedit.region.flora``" + ``//update``,"``worldedit.update``" ``//hcyl``,"``worldedit.generation.cylinder``" ``//cyl``,"``worldedit.generation.cylinder``" ``//cone``,"``worldedit.generation.cone``" @@ -224,4 +225,4 @@ Other Permissions ``worldedit.override.data-cycler``,"Allows cycling non-whitelisted blocks with the data cycler tool." ``worldedit.setnbt``,"Allows setting `extra data `_ on blocks (such as signs, chests, etc)." ``worldedit.report.pastebin``,"Allows uploading report files to pastebin automatically for the ``/worldedit report`` :doc:`command `." - ``worldedit.scripting.execute.``,"Allows using the CraftScript with the given filename." \ No newline at end of file + ``worldedit.scripting.execute.``,"Allows using the CraftScript with the given filename." From 4f3663b1ee17baebbf1a62ce5506f1dea3689539 Mon Sep 17 00:00:00 2001 From: Maddy Miller Date: Sat, 27 Dec 2025 13:46:14 +1000 Subject: [PATCH 5/5] Re-update autogenerated documentation to include `//revolve` command --- source/commands.rst | 155 +++++++++++++++++++++++------------------ source/permissions.rst | 1 + 2 files changed, 88 insertions(+), 68 deletions(-) diff --git a/source/commands.rst b/source/commands.rst index 8be0d0a..2a46f5f 100644 --- a/source/commands.rst +++ b/source/commands.rst @@ -1581,6 +1581,25 @@ Schematic and Clipboard Commands **Permissions**,"``worldedit.clipboard.clear``" **Usage**,"``/clearclipboard``" +.. raw:: html + + + +.. topic:: ``//revolve`` + :class: command-topic + + .. csv-table:: + :widths: 8, 15 + + **Description**,"Revolve the selection around a vertical axis" + **Permissions**,"``worldedit.revolve``" + **Usage**,"``//revolve [-ber] [-m ]``" +   ````,"The number of pastes" +   ``[-m ]``,"Set the source mask, non-matching blocks are not revolved" +   ``[-r]``,"Perform revolutions in reverse (counter-clockwise)" +   ``[-e]``,"Copy entities" +   ``[-b]``,"Copy biomes" + Tool Commands ~~~~~~~~~~~~~ @@ -1595,182 +1614,182 @@ Tool Commands :widths: 8, 15 **Description**,"Binds a tool to the item in your hand" - **Usage**,"``/tool ``" + **Usage**,"``/tool ``" .. raw:: html - + -.. topic:: ``/tool tree`` +.. topic:: ``/tool farwand`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Tree generator tool" - **Permissions**,"``worldedit.tool.tree``" - **Usage**,"``/tool tree [type]``" -   ``[type]``,"Type of tree to generate" + **Description**,"Wand at a distance tool" + **Permissions**,"``worldedit.tool.farwand``" + **Usage**,"``/tool farwand``" .. raw:: html - + -.. topic:: ``/tool info`` +.. topic:: ``/tool none`` (or ``/tool unbind``) :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Block information tool" - **Permissions**,"``worldedit.tool.info``" - **Usage**,"``/tool info``" + **Description**,"Unbind a bound tool from your current item" + **Usage**,"``/tool none``" .. raw:: html - + -.. topic:: ``/tool farwand`` +.. topic:: ``/tool floodfill`` (or ``/tool flood``) :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Wand at a distance tool" - **Permissions**,"``worldedit.tool.farwand``" - **Usage**,"``/tool farwand``" + **Description**,"Flood fill tool" + **Permissions**,"``worldedit.tool.flood-fill``" + **Usage**,"``/tool floodfill ``" +   ````,"The pattern to flood fill" +   ````,"The range to perform the fill" .. raw:: html - + -.. topic:: ``/tool deltree`` +.. topic:: ``/tool lrbuild`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Floating tree remover tool" - **Permissions**,"``worldedit.tool.deltree``" - **Usage**,"``/tool deltree``" + **Description**,"Long-range building tool" + **Permissions**,"``worldedit.tool.lrbuild``" + **Usage**,"``/tool lrbuild ``" +   ````,"Pattern to set on left-click" +   ````,"Pattern to set on right-click" .. raw:: html - + -.. topic:: ``/tool selwand`` +.. topic:: ``/tool repl`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Selection wand tool" - **Permissions**,"``worldedit.setwand``" - **Usage**,"``/tool selwand``" + **Description**,"Block replacer tool" + **Permissions**,"``worldedit.tool.replacer``" + **Usage**,"``/tool repl ``" +   ````,"The pattern of blocks to place" .. raw:: html - + -.. topic:: ``/tool cycler`` +.. topic:: ``/tool tree`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Block data cycler tool" - **Permissions**,"``worldedit.tool.data-cycler``" - **Usage**,"``/tool cycler``" + **Description**,"Tree generator tool" + **Permissions**,"``worldedit.tool.tree``" + **Usage**,"``/tool tree [type]``" +   ``[type]``,"Type of tree to generate" .. raw:: html - + -.. topic:: ``/tool stacker`` +.. topic:: ``/tool deltree`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Block stacker tool" - **Permissions**,"``worldedit.tool.stack``" - **Usage**,"``/tool stacker [range] [mask]``" -   ``[range]``,"The max range of the stack" -   ``[mask]``,"The mask to stack until" + **Description**,"Floating tree remover tool" + **Permissions**,"``worldedit.tool.deltree``" + **Usage**,"``/tool deltree``" .. raw:: html - + -.. topic:: ``/tool repl`` +.. topic:: ``/tool info`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Block replacer tool" - **Permissions**,"``worldedit.tool.replacer``" - **Usage**,"``/tool repl ``" -   ````,"The pattern of blocks to place" + **Description**,"Block information tool" + **Permissions**,"``worldedit.tool.info``" + **Usage**,"``/tool info``" .. raw:: html - + -.. topic:: ``/tool lrbuild`` +.. topic:: ``/tool selwand`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Long-range building tool" - **Permissions**,"``worldedit.tool.lrbuild``" - **Usage**,"``/tool lrbuild ``" -   ````,"Pattern to set on left-click" -   ````,"Pattern to set on right-click" + **Description**,"Selection wand tool" + **Permissions**,"``worldedit.setwand``" + **Usage**,"``/tool selwand``" .. raw:: html - + -.. topic:: ``/tool none`` (or ``/tool unbind``) +.. topic:: ``/tool stacker`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Unbind a bound tool from your current item" - **Usage**,"``/tool none``" + **Description**,"Block stacker tool" + **Permissions**,"``worldedit.tool.stack``" + **Usage**,"``/tool stacker [range] [mask]``" +   ``[range]``,"The max range of the stack" +   ``[mask]``,"The mask to stack until" .. raw:: html - + -.. topic:: ``/tool floodfill`` (or ``/tool flood``) +.. topic:: ``/tool navwand`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Flood fill tool" - **Permissions**,"``worldedit.tool.flood-fill``" - **Usage**,"``/tool floodfill ``" -   ````,"The pattern to flood fill" -   ````,"The range to perform the fill" + **Description**,"Navigation wand tool" + **Permissions**,"``worldedit.setwand``" + **Usage**,"``/tool navwand``" .. raw:: html - + -.. topic:: ``/tool navwand`` +.. topic:: ``/tool cycler`` :class: command-topic .. csv-table:: :widths: 8, 15 - **Description**,"Navigation wand tool" - **Permissions**,"``worldedit.setwand``" - **Usage**,"``/tool navwand``" + **Description**,"Block data cycler tool" + **Permissions**,"``worldedit.tool.data-cycler``" + **Usage**,"``/tool cycler``" .. raw:: html diff --git a/source/permissions.rst b/source/permissions.rst index 1f3ebb6..b90e66d 100644 --- a/source/permissions.rst +++ b/source/permissions.rst @@ -110,6 +110,7 @@ See the :doc:`commands` page for an explanation of some of these commands. ``//rotate``,"``worldedit.clipboard.rotate``" ``//flip``,"``worldedit.clipboard.flip``" ``/clearclipboard``,"``worldedit.clipboard.clear``" + ``//revolve``,"``worldedit.revolve``" ``/tool``,"" ``/tool cycler``,"``worldedit.tool.data-cycler``" ``/tool deltree``,"``worldedit.tool.deltree``"