WorldEditAdditions Changelog
It's about time I started a changelog! This will serve from now on as the main changelog for WorldEditAdditions.
Note to self: See the bottom of this file for the release template text.
v1.15: The direction update (unreleased)
- Added the optional argument
allto//unmark - Added a (rather nuclear) fix (attempt 4) at finally exterminating all zombie region marker walls forever
- This is not a hotfix to avoid endless small releases fixing the bug, as it's clear it's much more difficult to fix on all systems than initially expected
- Added
//nodeapply, a generalisation of//airapplythat works with a defined list of nodes. Check outthe reference- it has some cool tricks to it! (thanks for suggesting, @kliv91 from the Discord server!) - Added
//ngroups, which lists the groups that a given node is a member of. Useful when paired with//nodeapply! - Added
//rotate+to rotate regions through arbitrary series of potentially non-axis-aligned rotations.Does not support slabs/stairs yet,but this is on the todo list! - Added
//speedto adjust your own movement speed- Also added an associatedmovement speed adjustment tool, which looks like this:

- Also added an associatedmovement speed adjustment tool, which looks like this:
- Added
//set+for setting nodes and param2/light levels quickly.- NOTE TO SELF: Setting light values doesn't appear to be working very well for some reason
- Added
//ndefto print a given node's definition table. This is for debugging and development purposes. - Added
//sgrowand//sshrinkcommands to enlarge and shrink selection regions and aliased them over WorldEdit equivalents (//expand,//outsetand//contract,//insetrespectively). - Added Unified Axis Syntax (UAS) parser. - Implementation by @VorTechnix
- See [UAS System reference] for details. (Note to self hook up hyperlink)
- Added
//uasparsecommand to show the vectors produced by a given UAS expression. - Implementation by @VorTechnix - Added new player notification system with coloured output - thanks, @VorTechnix!
- Please be patient as we switch all usages over to the new system.
- [internal] Added initial async command support. This means that WEA is now aware of when async commands like
//for,//subdivideetc actually complete- Macro support may be coming at some point in the future!
Bugfixes and changes
- When commands produce an error, the name of the command that produced the error is now also printed. Useful when using e.g.
//multietc. - Don't warn on failed registration of
//flora→//bonemealif thebonemealmod isn't installed (e.g. in MineClone2) - thanks @VorTechnix in #106 - Improve documentation of
//noise2d. If it still doesn't make sense, please let me know. It's a complicated command that needs reworking a bit to be easier to use. - Alias
//napplyto//nodeapply - Re-factored selection tools to all use WEA position system and UAS Parser if applicable. - Re-factor by @VorTechnix
//sshiftnow overrides//shiftfrom WorldEdit. - Re-factor by @VorTechnix
Deprecations
- Deprecated
//scol,//srectand//scube. Now that//srelis using UAS parser there is no need for them. - Deprecated by @VorTechnix - Deprecated
//sfactor. Now that//sgrowand//sshrinkexist it is no longer needed. - Deprecated by @VorTechnix
Lua API changes
- Add
core.pos.get12(player_name, sort=false)
v1.14.5: The multipoint update, hotfix 5 (1st August 2023)
- Fix a bug where creative players in survival couldn't punch out position markers
- Added
//listentities, which lists all currently loadedObjectRefs. This is intended for debugging mods - thanks to @Zughy in #103
v1.14.4: The multipoint update, hotfix 4 (31st July 2023)
- When any segment of the marker wall is punched, unmark the entire wall - thanks to @Zughy in #102
v1.14.3: The multipoint update, hotfix 3 (18th July 2023)
- Fix regions not remembering their state and being unresettable
v1.14.2: The multipoint update, hotfix 2 (15th July 2023)
- Fix crash in
//subdivide, again due to the new position system
v1.14.1: The multipoint update, hotfix 1 (12th July 2023)
- Fix issue #100, which caused a crash as
//pos1and//pos2allowed non-integer positions to be set
v1.14: The multipoint update (11th July 2023)
- Add
//dome+, which allows you to change the direction the dome is pointing in, and also create multiple domes at once - Add
//metaball, which renders 2 or moremetaballsin Minetest - Significant backend refactoring to tidy things up
- Add new multi-point selection wand
to select many points at once. - Implement custom region boxing UI, which replaces the WorldEdit region box when using WorldEditAdditions wands.
- Is backwards compatible with regular WorldEdit wands and tools, as WorldEditAdditions keeps the new positioning system in sync with WorldEdit's.
- The new multipoint wand required this as a prerequisite
- Add
//pos, for setting any numbered point (i.e. not just pos1 and pos2, but pos3 and beyond) - Add
//spline, for drawing curved lines with an arbitrary number of points(uses the new multi-point wand) - Add
//revolve, which makes multiple evenly-spaced rotated copies of the defined region(uses the new multi-point wand) //copy+,//move+:- Added support for integrated
airapplymode, which replaces nodes at the target only if they are air - appendairapply/aato the command to use - Respect node rotation (i.e. param2) when copying/moving
- Override
//moveand//copyby default
- Added support for integrated
Bugfixes and changes
- Migrate from
depends.txttomod.conf - Cloud wand: fix typo in item description.
- Commands that modify the terrain now ignore liquids
//sculpt:- Fix undefined
defaultbrush - Change defaults to
circle,height=1, andbrushsize=8. - Change argument ordering to put
heightafterbrushsizeinstead of the other way around
- Fix undefined
//hollow: Fix safe region bug- Make
//pos1,//1,//pos2,//2,//mark,//unmark, and//resetaware of the new WEA positioning system
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
//airapplyfor 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
//forfor executing commands while changing their arguments - Implemented by @VorTechnix. - Add
//sshift(selection shift) - WorldEdit cuboid manipulator replacements implemented by @VorTechnix. - Add
//noise2dfor perturbing terrain with multiple different noise functions - Add
//noiseapply2dfor running commands on columns where a noise value is over a threshold - Add
//ellipsoid2which creates an ellipsoid that fills the defined region - Add
//spiral2for 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
//sculptand//sculptlistfor sculpting terrain using a number of custom brushes. - Useluacheckto 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 byWorldPainter)//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 theQueuedata structure//spop: Fix wording in displayed message- Sapling alias compatibility:
- Correct alias of
default:saplingfromoaktoapple(since it produces apples) moretrees:apple_tree_sapling_ongenfromappletoapple_moretrees- Add
plum→plumtree:sapling - Add
holly⇒hollytree:sapling
- Correct alias of
//replacemix: Improve error handling to avoid crashes (thanks, Jonathon for reporting via Discord!)- Cloud wand: Improve chat message text
- Fix
bonemealmod detection to look for the globalbonemeal, not whether thebonemealmod name has been loaded //bonemeal: Fix argument parsing//walls: Prevent crash if no parameters are specified by defaulting todirtas 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 forbamboo→bambo:sproutinstead ofbamboo:sapling
v1.12: The selection tools update (26th June 2021)
- Add
//spush,//spop, and//sstack - Add
//srect(select rectangle),//scol(select column),//scube(select cube) - thanks, @VorTechnix! - Add
//scloud(select point cloud),//scentre(select centre node(s)),//srel(select relative) - thanks, @VorTechnix! - Add
//smake(selection make) - thanks, @VorTechnix! - Significantly refactored backend utility functions (more to come in future updates)
- Add new universal chance parsing
- Any
<chance>can now either be a 1-in-N number (e.g.4,10), or a percentage chance (e.g.50%,10%). - Caveat: Percentages are converted to a 1-in-N chance, but additionally that number is rounded down in some places
- Any
//torus,//hollowtorus: Add optional new axes//torus,//ellipsoid: Add optional hollow keyword - @VorTechnix//multi: Add curly brace syntax for nesting command calls (more information)//erode: Add newrivererosion algorithm for filling in potholes and removing pillars
Bugfixes
//bonemeal: Try bonemealing everything that isn't an air block (#49)//overlay: Don't place nodes above water//multi: Improve resilience by handling some edge cases//layers: Fix crash due to outdated debug code//erode/snowballs: Fix assignment to undeclared variable//floodfill: Fix error handling
v1.11: The big data update (25th January 2021)
- Add
//scale(currentlyexperimental)- Scale operations that scale up and down at the same time are split into 2 separate operations automatically (scaling up is always performed first)
//count: Make numbers human-readable- Tip: Use a monospace font for the chat window, and the columns will be aligned!
- Add
//hollowfor hollowing out areas (a step towards parity with Minecraft WorldEdit) //subdivide: Improve performance of initial chunk counting algorithm - it should get started on the jobmuchquicker now (especially on large regions)//subdivide: Fix a bug where the entire defined region was emerged all at once instead of in chunks//subdivide: Fix performance & memory usage issues- Fix passing arguments to the command being executed
- If you encounter any other issues with it over large areas (particularly 2000x150x2000 and larger), please let me know
- Bugfix: Fix obscure crash in calls to
human_size("unknown" will now be returned if passed junk) //manycan now be used with commands with no arguments.//conv,//erode,//fillcaves: Treat liquids as air- Add newcloud wand
//conv,//erode: Minor refactoring to improve code clarity
v1.10: The tidyup update (16th January 2021)
//maze: Fix some parts of generated mazes staying solid//maze,//maze3d: Allow non-number seeds (existing seeds aren't affected - they will still produce identical output)//many: Improve format of progress messages, add ETA//subdivide: Make asynchronous, and useminetest.emerge_area()to ensure areas are loaded before executing on a subdivision chunk- This will ensure that
//subdivideing enormous regions should now function as expected. Want to level an entire rainforest with//subdivideand//clearcut? Now you can! :D
- This will ensure that
- Add
//linefor drawing simple lines
v1.9: The Nature Update (20th September 2020)
- Add
//manyfor executing a command many times in a row - Addexperimental
//erodecommand - Add
//fillcavescommand - fills in all air nodes beneath non air-nodes - Add
//forestcommand for quickly generating forests, and//saplingaliasesto 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 nestedforloops
v1.8: The Quality of Life Update (17th July 2020)
- Update
//multito display human readable times (e.g.2.11minsinstead of126600ms) - Far wand: Notify player when setting pos1 and pos2
- Make timings more accurate (use
minetest.get_us_time()instead ofos.clock()) - Addexperimental
//subdividecommand - Attempt to fix a crash on startup due to a dependency issue (#21)
v1.7: The Terrain Update! (21st June 2020)
- Added
//layers(like WorldEdit for Minecraft's//naturalize) - Added
//convolve(advanced terrain smoothing inspired by image editors) - Added far wand (like the regular WorldEdit wand, but with a configurable range that can extend to 100s of blocks) [/list]
Release text template
The text below is used as a template when making releases.
INTRO
See below the changelog for instructions on how to update.
CHANGELOG HERE
Updating
Updating depends on how you installed WorldEditAdditions.
- UI in Minetest: There should be an update button for you to click in the mod menu
- ContentDB: Download the latest update fromhere
- Git:
cdto the WorldEditAdditions directory and rungit pull(Important:Recently, WorldEditAdditions changed the default branch frommastertomain. If you're updating from before then, you'll need to re-clone the mod or else do some git-fu)
After installing the update, don't forget to restart your client and / or server.