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
all
to//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//airapply
that 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
//speed
to adjust your own movement speed- 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
//ndef
to print a given node's definition table. This is for debugging and development purposes. - Added
//sgrow
and//sshrink
commands to enlarge and shrink selection regions and aliased them over WorldEdit equivalents (//expand
,//outset
and//contract
,//inset
respectively). - Added Unified Axis Syntax (UAS) parser. - Implementation by @VorTechnix
- See [UAS System reference] for details. (Note to self hook up hyperlink)
- Added
//uasparse
command to show the vectors produced by a given UAS expression. - Implementation by @VorTechnix
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.
//multi
etc. - Don't warn on failed registration of
//flora
→//bonemeal
if thebonemeal
mod 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
//napply
to//nodeapply
- Re-factored selection tools to all use WEA position system and UAS Parser if applicable. - Re-factor by @VorTechnix
//sshift
now overrides//shift
from WorldEdit. - Re-factor by @VorTechnix
Deprecations
- Deprecated
//scol
,//srect
and//scube
. Now that//srel
is using UAS parser there is no need for them. - Deprecated by @VorTechnix - Deprecated
//sfactor
. Now that//sgrow
and//sshrink
exist 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 loadedObjectRef
s. 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
//pos1
and//pos2
allowed 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
airapply
mode, which replaces nodes at the target only if they are air - appendairapply
/aa
to the command to use - Respect node rotation (i.e. param2) when copying/moving
- Override
//move
and//copy
by default
- Added support for integrated
Bugfixes and changes
- Migrate from
depends.txt
tomod.conf
- Cloud wand: fix typo in item description.
- Commands that modify the terrain now ignore liquids
//sculpt
:- Fix undefined
default
brush - Change defaults to
circle
,height=1
, andbrushsize=8
. - Change argument ordering to put
height
afterbrushsize
instead of the other way around
- Fix undefined
//hollow
: Fix safe region bug- Make
//pos1
,//1
,//pos2
,//2
,//mark
,//unmark
, and//reset
aware 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
//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. - 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 theQueue
data structure//spop
: Fix wording in displayed message- Sapling alias compatibility:
- Correct alias of
default:sapling
fromoak
toapple
(since it produces apples) moretrees:apple_tree_sapling_ongen
fromapple
toapple_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
bonemeal
mod detection to look for the globalbonemeal
, not whether thebonemeal
mod name has been loaded //bonemeal
: Fix argument parsing//walls
: Prevent crash if no parameters are specified by defaulting todirt
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 forbamboo
→bambo:sprout
instead 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 newriver
erosion 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
//hollow
for 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) //many
can 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
//subdivide
ing enormous regions should now function as expected. Want to level an entire rainforest with//subdivide
and//clearcut
? Now you can! :D
- This will ensure that
- Add
//line
for drawing simple lines
v1.9: The Nature Update (20th September 2020)
- Add
//many
for executing a command many times in a row - Addexperimental
//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 nestedfor
loops
v1.8: The Quality of Life Update (17th July 2020)
- Update
//multi
to display human readable times (e.g.2.11mins
instead of126600ms
) - Far wand: Notify player when setting pos1 and pos2
- Make timings more accurate (use
minetest.get_us_time()
instead ofos.clock()
) - Addexperimental
//subdivide
command - 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:
cd
to the WorldEditAdditions directory and rungit pull
(Important:Recently, WorldEditAdditions changed the default branch frommaster
tomain
. 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.