Eventually, worldedit *will* become an optional dependency. The rationale for this is that WorldEditAdditions is outgrowing the core WorldEdit API, and we want to add new features such as toggling safe_region on and off with a chat command and other such goodies. Merging the 2 mods is not something that has been discussed (due mainly because I'm far too nervous to even ask the question in the first place), but the 2 codebases are fundamentally different (and for good reason, as WorldEditAdditions splits code over many different files to improve maintainability and scalability) so this would be a significant undertaking. At no point however will WorldEditAdditions become incompatible with WorldEdit itself. The 2 mods should happily co-exist with one another (so long as you keep them both updated of course). |
||
---|---|---|
.docs | ||
.github/workflows | ||
.tests | ||
worldeditadditions | ||
worldeditadditions_commands | ||
worldeditadditions_core | ||
worldeditadditions_farwand | ||
.gitignore | ||
.luacheckrc | ||
build.sh | ||
CHANGELOG.md | ||
Chat-Command-Reference.md | ||
CONTRIBUTING.md | ||
CONTRIBUTORS.tsv | ||
Cookbook.md | ||
FUNDING.yml | ||
LICENSE | ||
modpack.conf | ||
modpack.txt | ||
README.md | ||
screenshot.png | ||
screenshot2.png | ||
test_count_chunks.lua | ||
tests.sh | ||
worldeditadditions-64.png | ||
worldeditadditions.png |
Minetest-WorldEditAdditions
Extra tools and commands to extend WorldEdit for Minetest
If you can dream of it, it probably belongs here!
Important News: The master
branch has been renamed to main
, to follow the new standard across the Git ecosystem. If you've installed WorldEditAadditions through git, you will need to re-clone the repository.
(Do you have a cool build that you used WorldEditAdditions to build? Get in touch and I'll feature your screenshot here!)
Table of Contents
- Quick Command Reference (including links to detailed explanations)
- Using the Far Wand
- Using the Cloud Wand
- Detailed Chat Command Explanations
- Chat Command Cookbook
- Troubleshooting
- Contributing
- WorldEditAdditions around the web
- Licence
Quick Command Reference
The detailed explanations have moved! Check them out here, or click the links below.
Geometry
//ellipsoid <rx> <ry> <rz> <node_name> [h[ollow]]
//ellipsoid2 <node_name> [h[ollow]]
//hollowellipsoid <rx> <ry> <rz> <node_name>
//torus <major_radius> <minor_radius> <node_name> [<axes=xy> [h[ollow]]]
//hollowtorus <major_radius> <minor_radius> <node_name> [<axes=xy>]
//walls <replace_node>
//line [<replace_node> [<radius>]]
//hollow [<wall_thickness>]
//maze <replace_node> [<path_length> [<path_width> [<seed>]]]
//maze3d <replace_node> [<path_length> [<path_width> [<path_depth> [<seed>]]]]
//spiral2 [<circle|square>] [<replace_node=dirt> [<interval=3> [<acceleration=0>] ] ]
Misc
//copy+ <axis:x|y|z|-x|-y|-z|?|front|back|left|right|up|down> <count> [<axis> <count> [...]]
//replacemix <target_node> [<chance>] <replace_node_a> [<chance_a>] [<replace_node_b> [<chance_b>]] [<replace_node_N> [<chance_N>]] ....
//floodfill [<replace_node> [<radius>]]
//scale <axis> <scale_factor> | <factor_x> [<factor_y> <factor_z> [<anchor_x> <anchor_y> <anchor_z>]]
experimental
Terrain
//overlay <node_name_a> [<chance_a>] <node_name_b> [<chance_b>] [<node_name_N> [<chance_N>]] ...
//layers [<max_slope|min_slope..max_slope>] [<node_name_1> [<layer_count_1>]] [<node_name_2> [<layer_count_2>]] ...
//fillcaves [<node_name>]
//convolve <kernel> [<width>[,<height>]] [<sigma>]
//erode [<snowballs|river> [<key_1> [<value_1>]] [<key_2> [<value_2>]] ...]
experimental//noise2d [<key_1> [<value_1>]] [<key_2> [<value_2>]] ...]
Flora
//bonemeal [<strength> [<chance> [<node_name> [<node_name> ...]]]]
//forest [<density>] <sapling_a> [<chance_a>] <sapling_b> [<chance_b>] [<sapling_N> [<chance_N>]] ...
(new in v1.9)//saplingaliases [aliases|all_saplings]
(new in v1.9)
Statistics
Selection
//scol [<axis1> ] <length>
//srect [<axis1> [<axis2>]] <length>
//scube [<axis1> [<axis2> [<axis3>]]] <length>
//scloud <0-6|stop|reset>
//scentre
//srel <axis1> <length1> [<axis2> <length2> [<axis3> <length3>]]
//smake <operation:odd|even|equal> <mode:grow|shrink|average> [<target=xz> [<base>]]
//sstack
//spush
//spop
Measure
Meta
//multi <command_a> <command_b> ....
//many <times> <command>
(new in v1.9)//subdivide <size_x> <size_y> <size_z> <cmd_name> <args>
//ellipsoidapply <command_name> <args>
(new in v1.9)//airapply <command_name> <args>
(new in v1.9)//noiseapply2d <threshold> <scale> <command_name> <args>
(new in v1.13)
Extras
Tools
- WorldEditAdditions Far Wand
- WorldEditAdditions Cloud Wand
//farwand skip_liquid (true|false) | maxdist <number>
Installation
You can install WorldEditAadditions in multiple ways:
Through ContentDB
WorldEditAdditions is on ContentDB here: https://content.minetest.net/packages/Starbeamrainbowlabs/worldeditadditions/.
Through the latest release
You can get a copy of WorldEditAdditions by downloading the source code for the latest release, but this is not recommended because it takes additional effort to update to the latest version.
Through Git
You can also clone this git repository. Note that the main
branch is not considered to be stable at all times - though it shouldn't crash. It is recommended that you checkout a release to ensure stability. Do that like so:
# First, clone the repository
git clone https://github.com/sbrl/Minetest-WorldEditAdditions.git WorldEditAdditions
cd WorldEditAdditions
# Then, checkout the latest release on Linux:
git checkout "$(git describe --tags --abbrev=0)";
Windows users, you'll need to check the releases page and find the name of the latest release, then do this instead of the git checkout
above:
git checkout TAG_NAME_HERE
Troubleshooting
If you're experiencing issues with this mod, try checking this FAQ before opening an issue.
I get an error saying that worldedit isn't installed
WorldEditAdditions requires that the worldedit
mod is installed as a dependency. Install it and then try launching Minetest (or the minetest-server
) again.
I get an error saying that worldedit.register_command()
is not a function
This is probably because your version of worldedit
is too old. Try updating it. Specifically the worldedit.register_command()
function was only added to worldedit
in December 2019.
I get a crash on startup saying attempt to call field 'alias_command' (a nil value)
Please update to v1.8+. There was a bug in earlier versions that caused a race condition that sometimes resulted in this crash.
Why don't the moretrees trees work with //forest
?
As far as I can tell, the saplings provided by the moretrees
mod don't properly interact with bonemeal from the bonemeal mod, which WorldEditAdditions uses to grow trees. As far as I can tell WorldEditAdditions has everything in place needed to support them, but until applying bonemeal to moretrees
saplings results in a tree rather than waiting for one to grow over time, WorldEditAdditions will always fail to place trees provided by the moretrees
mod, unfortunately.
Contributing
Contributions are welcome! Please state in your pull request(s) that you release your contribution under the Mozilla Public License 2.0.
Please also make sure that the logic for every new command has it's own file. For example, the logic for //floodfill
goes in worldeditadditions/floodfill.lua
, the logic for //overlay
goes in worldeditadditions/overlay.lua
, etc. More contributing help can be found in the contributing guide.
I, Starbeamrainbowlabs (@sbrl), have the ultimate final say.
WorldEditAdditions around the web
Are you using WorldEditAdditions for a project? Open an issue and I'll add your project to the below list!
- (None that I'm aware of yet! Open an issue or get in touch and I'll link to your project (-:)
License
This mod is licensed under the Mozilla Public License 2.0, a copy of which (along with a helpful summary as to what you can and can't do with it) can be found in the LICENSE
file in this repository.
All textures however are licenced under CC-BY-SA 4.0 (Creative Commons Attribution Share-Alike International 4.0).
If you'd like to do something that the license prohibits, please get in touch as it's possible we can negotiate something.
If WorldEditAdditions has helped you out in a project, please consider adding a little sign in a corner of your project saying so :-)