[mod] WorldEditAdditions [1.13] [worldeditaddtions]

Post Reply
Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

[mod] WorldEditAdditions [1.13] [worldeditaddtions]

by Starbeamrainbowlabs » Post

Hey there! I thought I'd make a proper post about my worldeditadditions mod, since it seems to be quite popular (4K downloads? Wow, thanks everyone!)

At first it was just a quick simple mod that contains a few extra worldedit commands, but it seems to have grown quite a bit since then :P

Note that I consider this mod stable, and production-ready (so if you find any bugs, please report them). Despite this, new commands will be added in future releases (ideas and especially pull requests welcome!).

Website: https://worldeditadditions.mooncarrot.space/ (new June 2021! Has more screenshots, information, tutorials, and a full and searchable[i/] reference!)
Extra tools and commands to extend WorldEdit for Minetest

If you can dream of it, it probably belongs here!


► News



IMPORTANT: The master branch of the git repository has been renamed to main, to follow the new standard across the Git ecosystem. If you've installed WorldEditAadditions through git before 2021-04-01, you will need to re-clone the repository.

v1.13: The transformational update (2nd January 2022)

  • Add //sfactor (selection factor) - Selection Tools by @VorTechnix are finished for now.
  • Add //mface (measure facing), //midpos (measure middle position), //msize (measure size), //mtrig (measure trigonometry) - Measuring Tools implemented by @VorTechnix.
  • Add //airapply for applying commands only to air nodes in the defined region
  • Add //wcorner (wireframe corners), //wbox (wireframe box), //wcompass (wireframe compass) - Wireframes implemented by @VorTechnix.
  • Add //for for executing commands while changing their arguments - Implemented by @VorTechnix.
  • Add //sshift (selection shift) - WorldEdit cuboid manipulator replacements implemented by @VorTechnix.
  • Add //noise2d for perturbing terrain with multiple different noise functions
  • Add //noiseapply2d for running commands on columns where a noise value is over a threshold
  • Add //ellipsoid2 which creates an ellipsoid that fills the defined region
  • Add //spiral2 for creating both square and circular spirals
  • Add //copy+ for copying a defined region across multiple axes at once
  • Add //move+ for moving a defined region across multiple axes at once
  • Add //sculpt and //sculptlist for sculpting terrain using a number of custom brushes.
  • Use luacheck to find and fix a large number of bugs and other issues (code quality from now on will be significantly improved)
  • Multiple commands: Allow using quotes ("thing", 'thing') to quote values when splitting
  • //layers: Add optional slope constraint (inspired by WorldPainter)
  • //bonemeal: Add optional node list constraint
  • //walls: Add optional thickness argument
  • //sstack: Add human-readable approx volumes of regions in the selection stack
  • Bugfixes:
    • //floodfill: Fix crash caused by internal refactoring of the Queue data structure
    • //spop: Fix wording in displayed message
    • Sapling alias compatibility:
    • Correct alias of default:sapling from oak to apple (since it produces apples)
    • moretrees:appletreesaplingongen from apple to applemoretrees
    • Add plumplumtree:sapling
    • Add hollyhollytree:sapling
    • //replacemix: Improve error handling to avoid crashes (thanks, Jonathon for reporting via Discord!)
    • Cloud wand: Improve chat message text
    • Fix bonemeal mod detection to look for the global bonemeal, not whether the bonemeal mod name has been loaded
    • //bonemeal: Fix argument parsing
    • //walls: Prevent crash if no parameters are specified by defaulting to dirt as the replace_node
    • //maze, //maze3d:
    • Fix generated maze not reaching the very edge of the defined region
    • Fix crash if no arguments are specified
    • Fix automatic seed when generating many mazes in the same second (e.g. with //for, //many)
    • //convolve: Fix those super tall pillars appearing randomly
    • cloud wand: improve feedback messages sent to players
    • //forest: Update sapling aliases for bamboobambo:sprout instead of bamboo:sapling



History:
+ Spoiler


See the full changelog here

► Summary


Summary of commands implemented so far:

  • //floodfill [<replace_node> [<radius>]]
  • //overlay <node_name_a> [<chance_a>] <node_name_b> [<chance_b>] [<node_name_N> [<chance_N>]] ...
  • //ellipsoid <rx> <ry> <rz> <node_name>
  • //hollowellipsoid <rx> <ry> <rz> <node_name>
  • //torus <major_radius> <minor_radius> <node_name>
  • //hollowtorus <major_radius> <minor_radius> <node_name>
  • //line [<replace_node> [<radius>]]
  • //maze <replace_node> [<seed>]`
  • //maze3d <replace_node> [<seed>]`
  • //bonemeal [<strength> [<chance>]]
  • //walls <replace_node>
  • //replacemix <target_node> [<chance>] <replace_node_a> [<chance_a>] [<replace_node_b> [<chance_b>]] [<replace_node_N> [<chance_N>]] ....
  • //count
  • //convolve <kernel> [<width>[,<height>]] [<sigma>]
  • //layers [<node_name_1> [<layer_count_1>]] [<node_name_2> [<layer_count_2>]] ...
  • Far wand (also //farwand skip_liquid (true|false) | maxdist <number>)
  • //multi <command_a> <command_b> .....
  • //subdivide <size_x> <size_y> <size_z> <cmd_name> <args>
  • //erode [<snowballs|...> [<key_1> [<value_1>]] [<key_2> [<value_2>]] ...]
  • //fillcaves [<node_name>]
  • //many <times> <command>
  • //forest [<density>] <sapling_a> [<chance_a>] <sapling_b> [<chance_b>] [<sapling_N> [<chance_N>]] ...
  • //saplingaliases [aliases|all_saplings]
  • //erode [<snowballs|...> [<key_1> [<value_1>]] [<key_2> [<value_2>]] ...] experimental
  • //ellipsoidapply <command_name> <args>
  • //hollow [<wall_thickness>]
  • //scale <axis> <scale_factor> | <factor_x> [<factor_y> <factor_z> [<anchor_x> <anchor_y> <anchor_z>]] experimental
  • //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


Check the README for an updated list, as well as comprehensive explanations and usage examples: https://github.com/sbrl/Minetest-WorldE ... f-contents

Also check out the chat command cookbook for useful commands other users have discovered. Got a useful command (set) that isn't on the list? Get in touch! I'll add it and give you credit for discovering it.

► Screenshots


Here are a few screenshots showing some of the commands in action:

Image

Above: A torus upon which //overlay has been used. Also a hollow ellipsoid that has been //floodfilled.

Here are some more screenshots:
+ Spoiler

► Download


I strongly recommend using git to clone the repository to install this mod. If you can't, then I've provided an always up-to-date download link too :-)

Note that if I don't reply to your message on here, I'll be much more responsive if you open an issue against the repository.

Please also review on Content DB!

Image Repository | Clone | ContentDB | Download (Previous versions) | Issue Tracker | Image

Mod dependencies: worldedit (the WorldEdit API is used by pretty much every command in this mod)

Optional mod dependencies:
  • bonemeal: Enables the //bonemeal command
  • cool_trees, ethereal: Aliases for referencing provided saplings for use in //forest
Last edited by Starbeamrainbowlabs on Mon Jan 03, 2022 13:12, edited 25 times in total.

User avatar
pampogokiraly
Member
Posts: 293
Joined: Wed Jan 08, 2020 22:21
In-game: i_love_mesecon

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by pampogokiraly » Post

This looks cool! But as always i have some ideas to improve it:
  • Extend the move command with an optional [block_name] so worldedit only moves those blocks
    Example: //move y 17 default:dirt_with_grass
  • I would love to see the same thing with the stack command.
    Example: //stack z -4 default:dirt, akosdecor:full_tree
I also had some more ideas but i actualy forget them XD
I'll edit this comment if i get them back!
All praise the Bacon God! The one and only god in MineTest

Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by Starbeamrainbowlabs » Post

pampogokiraly wrote:
Fri May 01, 2020 14:23
This looks cool! But as always i have some ideas to improve it:
  • Extend the move command with an optional [block_name] so worldedit only moves those blocks
    Example: //move y 17 default:dirt_with_grass
  • I would love to see the same thing with the stack command.
    Example: //stack z -4 default:dirt, akosdecor:full_tree
I also had some more ideas but i actualy forget them XD
I'll edit this comment if i get them back!
Hey there, @pampogokiraly! Those are great suggestions. They would have to be new commands though, since unless I make a PR against WorldEdit itself, I can't edit the existing commands as far as I'm aware.

Certainly do-able though. Could you open an issue in the GitHub repository please though? I'm probably going to forget otherwise (a pull request would also be awesome :D)

User avatar
Miniontoby
Member
Posts: 582
Joined: Fri Mar 01, 2019 19:25
GitHub: Miniontoby
IRC: Miniontoby
In-game: Miniontoby
Location: The Netherlands

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by Miniontoby » Post

This is cool.

I want also the //replacenear and //walls cmd to be added
Working on mtctl ---- Check my mod "Doorbell" -- Stay safe

Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by Starbeamrainbowlabs » Post

Miniontoby wrote:
Sat May 02, 2020 17:34
This is cool.

I want also the //replacenear and //walls cmd to be added
Thanks, @Miniontoby! Could you open an issue about those commands please? Here's the link: https://github.com/sbrl/Minetest-WorldE ... issues/new. 1 issue per command with details about how they would work would be great if possible.

I'm liable to forget about it without a tracking issue on GitHub.

Thanks again!

User avatar
pampogokiraly
Member
Posts: 293
Joined: Wed Jan 08, 2020 22:21
In-game: i_love_mesecon

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by pampogokiraly » Post

Starbeamrainbowlabs wrote:GitHub repository please though?
Can someone make an issue for me? I don't have a GitHub account and i don't want to create one....
All praise the Bacon God! The one and only god in MineTest

Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by Starbeamrainbowlabs » Post

pampogokiraly wrote:
Mon May 11, 2020 14:58
Starbeamrainbowlabs wrote:GitHub repository please though?
Can someone make an issue for me? I don't have a GitHub account and i don't want to create one....
I always try to give people a chance at first to create their own issues, because they can explain it better than I can.

Thinking about it though, it would have to be a completely new command. The reason for this is that in order to extend the original WorldEdit commands, I'd have to either open an issue or a pull request against WorldEdit itself. Which do you think is the better option, @pampogokiraly?
  • Open an issue again WorldEdit itself to ask the feature to me considered (not my mod)
  • Implement a new command that's a copy of the existing one that has the new functionality
Personally, I'd prefer to take this up with WorldEdit itself. This way we don't duplicate code and effort, but I'm interested to hear your opinion on the issue.

User avatar
GreenXenith
Member
Posts: 1347
Joined: Wed Oct 28, 2015 01:26
GitHub: GreenXenith
IRC: GreenXenith
In-game: GreenXenith
Location: The singularity
Contact:

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by GreenXenith » Post

Starbeamrainbowlabs wrote:
Fri May 01, 2020 23:18
They would have to be new commands though, since unless I make a PR against WorldEdit itself, I can't edit the existing commands as far as I'm aware.
minetest.override_chatcommand(name, redefinition)
Y▹uTube | Mods | Patre●n | Twitter | Minetest Discord | GreenXenith#3232

Hey, you. You're finally awake.
You were trying to view their profile, right? Found the rest of their signature, same as us, and that guest over there.

Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by Starbeamrainbowlabs » Post

GreenXenith wrote:
Tue May 12, 2020 02:58
minetest.override_chatcommand(name, redefinition)
Ah, I wasn't aware of that one - thanks!

I'm still a bit uncomfortable with overriding a WorldEdit command - I still think that an update to //move and //stack (and maybe even //stack2 as well?) would be much more effectively implemented via a pull request against WorldEdit.

To this end, I think the first step here is to open an issue against WorldEdit to ask for their opinion about it. If they agree, then we can look at implementation.

My goal with WorldEditAdditions isn't to replace WorldEdit, but to compliment it. To that effect, I'd rather like to avoid duplicating as much effort as possible.

Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

Re: [mod] WorldEditAdditions [1.3.1] [worldeditaddtions]

by Starbeamrainbowlabs » Post

Miniontoby wrote:
Sat May 02, 2020 17:34
This is cool.

I want also the //replacenear and //walls cmd to be added
Hey there! I don't know if this will generate a notification for you, but I thought you'd like to know that I've implemented both of the commands you asked for - well as far as I understood what you're asking for. //walls was implemented between v1.3 and v1.6 I think. I interpreted //replacenear to be something more like //ellipsoidapply, though I think I might have misinterpreted.

Either way, for anyone else reading, v1.9 is now out!

This one has a number of new juicy commands in it that are sure to spice up your builds. I'm also currently on the lookout for cool screenshots of builds made with WorldEditAdditions to feature in this forum thread :D

Here's the changelog:
  • Add //many for executing a command many times in a row
  • Add experimental //erode command
  • Add //fillcaves command - fills in all air nodes beneath non air-nodes
  • Add //forest command for quickly generating forests, and //saplingaliases to compliment it
  • Add //ellipsoidapply: Like //cubeapply, but clips the result to an ellipsoid that is the size of the defined region.
  • Fix some minor bugs and edge cases
  • //subdivide: Print status update when completing the last chunk
  • //count: Optimise by removing nested for loops
See the GitHub release for more info, and the download links in the main post in this forum thread for download links.

lonestar
Member
Posts: 54
Joined: Mon Jul 17, 2017 03:25
Location: Texas,USA

Re: [mod] WorldEditAdditions [1.9] [worldeditaddtions]

by lonestar » Post

I'm getting this error:

Code: Select all

2020-09-23 19:23:25: ERROR[Main]: ModError: Failed to load and run script from /home/lonestar/minetest/stable/minetest/bin/../mods/Minetest-WorldEditAdditions/worldeditadditions_commands/init.lua:
2020-09-23 19:23:25: ERROR[Main]: ...s/worldeditadditions_commands/commands/floodfill.lua:6: attempt to call field 'register_command' (a nil value)
2020-09-23 19:23:25: ERROR[Main]: stack traceback:
2020-09-23 19:23:25: ERROR[Main]: 	...s/worldeditadditions_commands/commands/floodfill.lua:6: in main chunk
2020-09-23 19:23:25: ERROR[Main]: 	[C]: in function 'dofile'
2020-09-23 19:23:25: ERROR[Main]: 	...ldEditAdditions/worldeditadditions_commands/init.lua:22: in main chunk
2020-09-23 19:23:25: ERROR[Main]: Check debug.txt for details.
2020-09-23 19:23:25: ACTION[Main]: Server: Shutting down
NM, re-downloaded WorldEdit, even though I just updated it and all works.

Starbeamrainbowlabs
Member
Posts: 65
Joined: Sat May 26, 2018 11:25
GitHub: sbrl
Location: Nowhere, Everywhere, and Somewhere inbetween
Contact:

Re: [mod] WorldEditAdditions [1.9] [worldeditaddtions]

by Starbeamrainbowlabs » Post

lonestar wrote:
Thu Sep 24, 2020 00:29
I'm getting this error:

Code: Select all

2020-09-23 19:23:25: ERROR[Main]: ModError: Failed to load and run script from /home/lonestar/minetest/stable/minetest/bin/../mods/Minetest-WorldEditAdditions/worldeditadditions_commands/init.lua:
2020-09-23 19:23:25: ERROR[Main]: ...s/worldeditadditions_commands/commands/floodfill.lua:6: attempt to call field 'register_command' (a nil value)
2020-09-23 19:23:25: ERROR[Main]: stack traceback:
2020-09-23 19:23:25: ERROR[Main]: 	...s/worldeditadditions_commands/commands/floodfill.lua:6: in main chunk
2020-09-23 19:23:25: ERROR[Main]: 	[C]: in function 'dofile'
2020-09-23 19:23:25: ERROR[Main]: 	...ldEditAdditions/worldeditadditions_commands/init.lua:22: in main chunk
2020-09-23 19:23:25: ERROR[Main]: Check debug.txt for details.
2020-09-23 19:23:25: ACTION[Main]: Server: Shutting down
NM, re-downloaded WorldEdit, even though I just updated it and all works.
Yeah, that error is caused by an outdated version of WorldEdit.

hacknorris
Member
Posts: 65
Joined: Mon Mar 28, 2022 21:34
GitHub: hacknorris-aka-penguin
IRC: hacknorris
In-game: hacknorris

Re: [mod] WorldEditAdditions [1.13] [worldeditaddtions]

by hacknorris » Post

just a question - how can i make maze 3 cubes heigh ? like i make a bottom-left corner, upper-right corner in 2d and pass 3 nodes as height? im not into any ai/randomness i just want a maze... for another player so he doesnt see all maze (for this 3 nodes high lol)

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 10 guests