0b379c48cb
Implement //airapply
...
For #56 , but the docs aren't written yet so we'll wait on closing it
until I've written them.
2021-07-15 02:17:14 +01:00
0d1900d37c
Add airlike backend command, but it's nto tested or hooked up yet
2021-07-13 23:49:21 +01:00
aeea17524d
benchmark the new LRU cache implementation
2021-07-13 23:42:19 +01:00
81957070f9
Implement an LRU cache
2021-07-13 23:42:08 +01:00
e799a2ea61
Refactor Queue implementation into separate file
2021-07-13 22:02:34 +01:00
e85b91d074
//noise2d infrared: remove debug print
2021-07-13 00:56:26 +01:00
03038689e2
Add infrared noise
2021-07-13 00:54:52 +01:00
8891c47e98
wea.parse.map: fix crash if keywords isn't specified
2021-07-13 00:22:35 +01:00
0dee65ca1d
//noise2d: add red noise
2021-07-13 00:15:23 +01:00
7db2207aea
noise2d/make_2d: add todo
2021-07-12 02:46:47 +01:00
46c2a02ade
//noise2d: add white algorithm; fix nasty bug in apply_2d
2021-07-12 02:45:32 +01:00
a42e296f4e
Reference: Document //noise2d
2021-07-06 01:08:36 +01:00
40173b2647
Vector3: default to 0 for unspecified args
2021-07-04 23:30:29 +01:00
8a14d35c04
noise2d: add comment
2021-07-04 16:14:48 +01:00
30f7927af4
Delete failed test :-( :-( :-( :-( :-( :-( :-( :-( :-( :-( :-(
2021-07-04 16:13:55 +01:00
457f436a09
Failed implementation of xoshiro256++ becaause Lua doesn't have an integer type :-( :-( :-( :-( :-( :-( :-(
2021-07-04 16:13:32 +01:00
0b0595a1d3
Remove a whole bunch of stray debug print statements
2021-07-04 14:35:02 +01:00
0212950d87
wea.apply_heightmap_changes: fix loop
2021-07-04 14:30:22 +01:00
1d82013d86
//noise2d: add sin; sort out apply_mode as number
2021-07-04 13:21:13 +01:00
49bf0f19bc
Perlin: remove debug functions
2021-07-04 12:03:29 +01:00
b2eb76d280
//noise2d works!
...
...just.
Next up more engines and documentation
2021-07-03 22:53:16 +01:00
ad8d8eab6b
wea.format.map: use tostring on values to avoid crashes
2021-07-03 14:44:59 +01:00
ee2e5716eb
Implement more of the noise command backend
...
It's still not hooked up yet though, and there's no command parsing
logic either
2021-07-03 01:44:36 +01:00
cae75ec5a2
Add moar comments
2021-07-03 00:42:19 +01:00
VorTechnix
f709d12b75
Update table_tostring.lua
2021-06-30 22:11:34 -07:00
VorTechnix
484b7532eb
fixed table.tostring
2021-06-30 11:59:19 -07:00
1984c67295
Vector3, Face, Mesh: unconditionally return class
2021-06-28 01:00:38 +01:00
db7b20d485
Refactor table functions into subtable of wea
...
Also, you can return a value from dofile()!!!!
This changes everything.
2021-06-28 00:56:29 +01:00
624abc899b
node_distribution: add missing \n
2021-06-27 23:52:16 +01:00
810d3049ee
format.make_ascii_table: make filename match function name
2021-06-27 23:52:05 +01:00
VorTechnix
3467f9c5b6
fixed min and max
2021-06-26 21:39:16 -07:00
f32d8588e0
Add Mesh & Face classes for #59
...
Together, these classes provide a way to represent a mesh of faces
generated from the Minetest world. This way, the generation of a mesh
can be abstracted away from any potential output file writers, thereby
allowing for multiple different output file formats to be supported.
2021-06-26 22:03:55 +01:00
dbdf509d79
Add dofile for vector3
2021-06-26 19:48:32 +01:00
65c07d59ea
Vector3: add sort, is_contained, expand_region, mean, min, and max
2021-06-26 17:48:39 +01:00
91b77c981b
Vector3: add abs
2021-06-26 17:06:53 +01:00
88214aef57
Vector3: add min_component, max_component
2021-06-26 17:02:35 +01:00
0a3680aa7d
Vector3: add unit / normalise
2021-06-26 16:56:26 +01:00
c76a049286
Vector3: tweak
2021-06-26 16:47:22 +01:00
112bb96e99
Vector3: add equals, equality operator
2021-06-26 16:28:39 +01:00
cfa086ce46
Vector3: add dot product
2021-06-26 15:47:53 +01:00
dc5645cfeb
Vector3: add set_to
2021-06-26 15:43:42 +01:00
133cae587c
Vector3: add move_towards
2021-06-26 15:39:47 +01:00
773e6354ad
Vector3: add limit_to
2021-06-26 15:32:47 +01:00
6d0447a02f
Vector3: add clone
2021-06-26 15:23:16 +01:00
7549b0eaea
Vector3: add length, length_squared, sqrt
2021-06-26 15:15:32 +01:00
cde3c3360c
Vector3: add snap_to
2021-06-26 14:44:40 +01:00
8ae0d92e3d
Vector3/tests: flip assert orderings
2021-06-26 14:40:14 +01:00
57df2d045f
Vector3: add area
2021-06-26 14:26:40 +01:00
1e1112c34a
Vector3: Add round
2021-06-26 14:22:26 +01:00
06e19248c7
Vector3: add floor/ceil
2021-06-26 14:19:18 +01:00
9d197aefd2
Start implementing vector3.
...
Currently we have the 4 basic operations down, plus tostring.
2021-06-26 14:10:28 +01:00
90b456a687
Merge branch 'main' into vortechnix
2021-06-26 02:18:48 +01:00
afce954306
Test the rest of the sring polyfills
2021-06-26 02:17:49 +01:00
6a42aa6838
Set out the basics of automated tests for str_padend
2021-06-26 02:05:01 +01:00
VorTechnix
2d6bd676d6
Update --remove tocharset testing tags
...
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-06-25 17:25:09 -07:00
VorTechnix
a6a858046f
Update tochars.lua grammar
...
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-06-25 16:30:38 -07:00
VorTechnix
a40b65af3e
Update --remove old tochars syntax
...
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-06-25 16:29:47 -07:00
VorTechnix
92c7d0447a
Fixed indentation in torus
2021-06-25 11:53:23 -07:00
VorTechnix
efef201fde
//smake added
2021-06-22 09:33:49 -07:00
VorTechnix
7553163e11
split tochars to separate file
2021-06-03 10:02:17 -07:00
VorTechnix
622ea7a683
added worldeditadditions.tochars
2021-06-02 21:29:36 -07:00
VorTechnix
3c7cd38459
initialized worldeditadditions.tables
2021-06-02 19:27:23 -07:00
VorTechnix
3dff6fe66c
added PARSE header
2021-06-02 19:27:04 -07:00
VorTechnix
0026bcdab7
added sets.lua, reordered dofiles in /tables/init.luas
2021-06-02 19:18:49 -07:00
VorTechnix
38335e291f
Merge branch 'main' into vortechnix
2021-06-02 18:03:16 -07:00
VorTechnix
8bffeda5b5
Merge branch 'main' into vortechnix
2021-06-02 17:59:06 -07:00
1f44e240fb
utils/tables: refactor into separate files
...
..it was getting rather long, because Lua doesn't exactly come with
batteries included :-/
2021-06-03 01:57:46 +01:00
9cb746e86a
noise: add comment
2021-05-31 00:38:07 +01:00
VorTechnix
6e04b11e18
added vector.abs
2021-05-30 14:34:57 -07:00
VorTechnix
8884c938e0
Merge branch 'main' into vortechnix
2021-05-30 09:35:41 -07:00
0474f5a0ee
wea.table_filter: also pass i as the 2nd argument
2021-05-30 16:17:19 +01:00
8bc2e543da
polyfill str_starts: make less dense and mroe readable
2021-05-30 13:06:47 +01:00
9b53b73bc9
//erode river: Update docs,rename some parameters for consistency
2021-05-30 02:09:52 +01:00
74bde4e60c
//erode river: comment debug
...
...we might need them again in the future
2021-05-30 01:44:00 +01:00
ccf27c8629
Bugfix new //erode river implementation
...
next stop: docs!
2021-05-30 01:42:06 +01:00
dc7ccf49f3
wea.parse.map: support bools
2021-05-30 01:40:18 +01:00
0498125ca7
Bugfix table_map: avoid infinite loop
2021-05-30 00:12:13 +01:00
a5c6e82ef3
Bugfix table_map: return result
2021-05-30 00:11:13 +01:00
00a60eba17
//erode → river: Change only 1 height at a time for extra granularity
...
this also simplifies it a bit too
2021-05-30 00:04:01 +01:00
9ecdd01914
//erode: initial river algorithm implementation
2021-05-30 00:02:21 +01:00
17b8f8a555
erode/snowballs: correct comment
2021-05-29 23:20:34 +01:00
a8ddc7831a
wea.table_filter: add API function
...
Really, Lua should have this already. At this rate, I'll be implementing
the entire Javascript standard library... :P
2021-05-29 23:20:11 +01:00
b23f353b19
wea.min, wea.max: add API functions
2021-05-29 23:13:10 +01:00
c7c6a848dc
wea.table_unique(): Add API function
2021-05-29 22:49:50 +01:00
8eb9a8ed0f
wea.table_map(): Add api function
2021-05-29 22:49:35 +01:00
1e677c1f3f
wea.split: Standardise comment
2021-05-29 22:49:14 +01:00
98a04b12db
tokenise_commands: fix ordering
2021-05-29 00:57:42 +01:00
46eaf10884
tokenise_commands: improve comments
2021-05-29 00:54:30 +01:00
50da328c67
fixup
2021-05-29 00:44:17 +01:00
a937740275
Implement tokenise_commands utility function
...
This function is intended for use in //multi.
2021-05-29 00:43:09 +01:00
87b7254350
erode: add future comment
2021-05-22 02:36:56 +01:00
75a5f14f01
//erode snowballs: Fix assignment to global variable; slightly refactor changelog
...
Sincce we've got a number of bugfixes here and the changelog is getting
a bit longer, I've split bugfixes up.
2021-05-22 01:39:59 +01:00
VorTechnix
912ecf09c2
Merge branch 'main' into vortechnix
2021-05-21 09:21:17 -07:00
e3e5710217
Merge branch 'main' of github.com:sbrl/Minetest-WorldEditAdditions into main
2021-05-21 02:11:11 +01:00
97aa24bcd3
wea.parse.weighted_nodes: comment out debug
2021-05-21 02:11:03 +01:00
VorTechnix
639c2061ef
Bugfix/torus: fix hollow implementation; improve clarity
2021-05-18 15:22:52 +01:00
VorTechnix
0a44992676
reference: add hollow example to torus
2021-05-18 14:56:19 +01:00
VorTechnix
2b02f9ff2e
Fix typos in comments
2021-05-18 14:55:43 +01:00
VorTechnix
184ca1a328
recovery
2021-05-17 21:12:46 -07:00
VorTechnix
d4b457f85d
Merge branch 'main' into vortechnix
2021-05-17 20:45:28 -07:00
VorTechnix
cb841bfb80
Update torus.lua
2021-05-17 18:57:51 -07:00
VorTechnix
7defe829c3
Revert "Merge branch 'main' of https://github.com/sbrl/Minetest-WorldEditAdditions into main"
...
This reverts commit d9069b3cfa
, reversing
changes made to 35eeb918d0
.
2021-05-17 18:49:07 -07:00
VorTechnix
d7f328c65b
Revert "Update torus.lua"
...
This reverts commit 35eeb918d0
.
2021-05-17 18:47:34 -07:00
VorTechnix
ec1623b230
Merge branch 'main' into vortechnix
2021-05-17 17:40:36 -07:00
VorTechnix
5b893901dc
//torus update
2021-05-17 17:16:04 -07:00
VorTechnix
9bb9aeda5c
Update torus.lua
2021-05-17 11:18:09 -07:00
VorTechnix
63d284b35b
axes + safeguards
2021-05-17 10:41:52 -07:00
VorTechnix
d9069b3cfa
Merge branch 'main' of https://github.com/sbrl/Minetest-WorldEditAdditions into main
2021-05-17 09:14:55 -07:00
VorTechnix
35eeb918d0
Update torus.lua
2021-05-17 09:13:43 -07:00
57ff577694
torus: add comment
2021-05-15 02:18:41 +01:00
0100725a7b
torus: finish rework
2021-05-15 02:09:43 +01:00
3fbfc1fb15
torus: rework to add axes, but it's not finished yet
2021-05-15 02:00:40 +01:00
f9eb67b4cc
bonemeal: Try bonemealing everything that isn't an air block
...
fixes #49
2021-05-11 22:17:10 +01:00
81f3a87180
wea.parse.chance: add weight mode
2021-05-11 22:12:04 +01:00
040d7fbfde
wea.parse.chance: use not
2021-05-11 21:59:43 +01:00
4ec04c03b3
worldeditadditions.parse.chance: add API function
2021-05-11 21:55:44 +01:00
d6d11c6b1a
README: Update quick reference
2021-03-20 02:17:56 +00:00
7639bd2c2b
worldeditadditions.apply_heightmap_changes: properly comment it
...
It's a pretty complicated function, so it's probably a good idea to
document how it works.
2021-03-20 02:09:28 +00:00
1f273e4b13
comment worldeditadditions.eta
2021-03-20 01:56:14 +00:00
6af8bba987
selector_helps → axes
...
It makes sense to me at least that we should keep stuff to do with
parsing axes together.
2021-03-20 01:53:01 +00:00
8877e356f0
refactor: refactor utils/strings.lua into multiple files
2021-03-20 01:48:56 +00:00
VorTechnix
866748a5c3
dir function rename
2021-03-19 16:25:26 -07:00
VorTechnix
a027130917
Merge pull request #5 from sbrl/main
...
Updates + noise
2021-03-18 17:31:34 -07:00
VorTechnix
d4edeaeff7
renamed translation function
2021-03-18 09:37:53 -07:00
VorTechnix
00b9a1f517
srel stable?
2021-03-17 11:36:12 -07:00
a1911037d2
Fill out noise.make_2d, but it's untested
...
Next, we need to do the make_3d version, followed by the plumbing to
worldeditadditions.noise(), followed by the chat command
....there's a lot to do.
2021-03-16 21:39:12 +00:00
VorTechnix
20a879a7af
scentre and some sorting
2021-03-15 20:51:23 -07:00
683a742fe2
Merge pull request #44 from VorTechnix/master
...
//scloud and cloud wand refactor
2021-03-13 12:11:27 +00:00
VorTechnix
18347f93bf
wea.selection declared
2021-03-12 18:11:43 -08:00
VorTechnix
c39fc1c9e8
Removed unneeded local
2021-03-12 18:09:24 -08:00
VorTechnix
5ffa67b7ac
refactor func names, move punchnode function
2021-03-12 18:01:17 -08:00
d20764cffd
Add pure Lua perlin implementation, but it's untested.
2021-03-13 00:37:26 +00:00
VorTechnix
3df23e8086
scloud and cloud wand refactor
2021-03-12 15:47:10 -08:00
VorTechnix
a671f742e9
scol and srect refactor
2021-03-09 11:05:03 -08:00
587d430e48
vector.floor: add resilience
2021-03-09 18:45:04 +00:00
feb4d6a4bf
//overlay: Don't place nodes above water
...
Fixes #38
2021-03-02 00:09:46 +00:00
e8d97959b2
Add //spush, //spop, and //sstack
2021-03-01 22:23:36 +00:00
108c280843
Start laying out stuff for our noise experiment, but it isn't hooked up yet and isn't finished.
2021-03-01 21:26:33 +00:00
2acc6b3470
Merge pull request #34 from VorTechnix/master
...
Added //srect and //basename
2021-03-01 20:54:13 +00:00
VorTechnix
727ee41e72
Simplify srect function
2021-02-28 09:59:09 -08:00
VorTechnix
e82c8b1e81
error handling
...
Co-authored-by: Starbeamrainbowlabs <sbrl@starbeamrainbowlabs.com>
2021-02-28 07:25:31 -08:00
VorTechnix
cb1d54c665
Added getsign, fixed srect glitch
2021-02-25 20:22:39 -08:00
56380f149b
heightmap_size: refactor to use { x, z } instead of [0] / [1]
2021-02-26 02:20:53 +00:00
VorTechnix
b62e4f706d
added description
2021-02-24 19:42:24 -08:00
VorTechnix
191f1385b1
fixed modulo
2021-02-24 09:08:49 -08:00
VorTechnix
489d856176
Added srect and basename
...
Also moved saplingaliases and corrected the block text in forest.lua
2021-02-24 08:40:53 -08:00
78572e453e
Implement point cloud wand
2021-02-23 22:56:56 +00:00
f2aa87b396
terrain: pick the node to replace with from higher up in the column in question
...
....unless we hit the ignore node, in which case we default to air.
2021-02-23 01:31:24 +00:00
4ba59a6ec3
//conv, //erode: treat liquids as air
2021-02-23 00:20:57 +00:00
aef4fe4380
fillcaves: treat liquids as air
2021-02-23 00:19:24 +00:00
4368f74e30
Fix directionality in worldedit region update when scaling down
2021-02-18 02:33:26 +00:00
3f871e01f5
//scale: fix more bugs, and also update the worldedit region after scaling
2021-02-18 02:18:34 +00:00
a63923fec9
//scale: scaling up works! Can't say the same about scaling down though, but that will come in time.
2021-02-18 01:24:53 +00:00
ed3adde56a
//scale: fix some bugs, and rename direction → anchor internally
...
It's nice to have some consistency, and find&replace saves soooo much
time :P
2021-02-18 00:30:24 +00:00
17a67fc5f9
Merge branch 'master' of github.com:sbrl/Minetest-WorldEditAdditions
2021-02-17 23:46:11 +00:00
2a268d9ff8
Implement scale_up
...
Next up: testing!
2021-02-17 23:46:03 +00:00
756c1c12f2
scale_down: fix a number of runtime errors
...
Note that we still haven't tested it :P
2021-02-17 23:09:25 +00:00
bl-ue
1d3c2a0416
Fix typos
2021-02-09 19:53:30 -05:00
ad9e5a26b1
Start working on //scale, but it isn't finished yet.
2021-02-07 23:39:09 +00:00
03afd7e75c
//subdivide: comment out debug statements
...
....we're pretty sure what the issue is, and our server on elessar
doesn't even emit them
2021-02-07 03:13:02 +00:00
555058b4ac
//subdivide: tweak update message display
2021-02-07 03:12:09 +00:00
151afadf6c
//many: fix running commands that take no arguments
2021-02-07 02:59:19 +00:00
a360f06138
Fix eta calculations
2021-02-07 02:45:34 +00:00
9d76c5d98a
wea.eta: fix obscure edge case
2021-02-07 01:37:50 +00:00
888ee04f9d
//subdivide: fix a number of other issues
2021-02-07 01:28:07 +00:00
edb80d7478
//subdivide: fix debug logging
2021-02-07 01:07:21 +00:00
122ff381f1
//subdivide: debug logging
2021-02-07 01:02:03 +00:00
ebed73fc49
//subdivide: fix emerge_area to only emerge individual chunked areas
2021-02-05 23:44:33 +00:00
38e5c81d33
//subdivide: tally total times so far as we go
...
- Don't use wea.sum() on a table full of all the times we've recorded
so far
- Limit individual stats list lengths to 25 to avoid memory issues when
running with a large number of chunks
- Tally total times / metrics as we go to avoid memory issues
2021-02-03 03:04:33 +00:00
25e659321a
//subdivide: reimplement count_chunks
...
this does the maths properly, so we'e going from O(n³) to O(1) :D
//subdivide should get started *so much faster* now :D
2021-02-03 02:25:33 +00:00
85a715a0ea
wea.emerge_area: remove debug prints
2021-02-03 00:45:54 +00:00
a511d85e29
human_time: correctly handle non-number inputs
2021-02-03 00:44:42 +00:00
e8584c4ec6
hollow: fix undefined variable
2021-01-31 21:30:13 +00:00
0be205dae7
Start implementing //hollow, but it isn't finished yet
2021-01-31 18:03:07 +00:00
4b1cf074d5
//count: make numbers human-readable
...
Fixes #14
2021-01-31 17:43:08 +00:00
4b2f2b0001
Add //line
...
Fixes #25 .
2021-01-16 18:36:17 +00:00
d2f101e9dd
It works!
2020-10-10 22:22:53 +01:00
008519177c
//subdivide: Fix more issues, there are a few more to go
2020-10-10 21:57:19 +01:00
2ac6ea03a7
Fix some bugs, but the new //subdivide still doesn't work yet
2020-10-10 21:50:03 +01:00
aa234595a8
Refactor //subdivide to call minetest.emerge_blocks
...
....whether it actually works or not is another question entirely
though.....
2020-10-10 21:43:22 +01:00
ef165b9c58
Add ETA to //many, and tidy up message generation in //subdivide
2020-10-10 17:01:08 +01:00
fea89f2e3c
//maze, //maze3d: Allow non-number seeds
...
This uses a simple (non-crypto!) hash function to hash non-number
strings to a number. Existing seeds are *not* affected - they will still
work as before.
2020-09-28 01:31:15 +01:00
39103a046f
//maze: fix some areas of generated mazes not being explored
2020-09-28 01:30:15 +01:00
130524a7d0
Disable some debug prints, and update docs
2020-09-20 22:07:47 +01:00
a6f5fe5123
Finish initial //ellipsoidapply implementation
2020-09-20 21:19:29 +01:00
e0e64dc6b9
Start ellipseapply, but it isn't finished
2020-09-20 18:03:29 +01:00
13278570cb
Optimise //count
2020-09-20 17:53:55 +01:00
5967db2496
Update depends.txt
2020-09-20 13:29:16 +01:00
c6a1571e1f
Add support for ethereal
2020-09-20 13:28:54 +01:00
0ddf160e84
Fix minor string manipulation crash
2020-09-15 02:00:24 +01:00
d556a4e710
forest: save sapling removal back to disk
2020-09-14 13:43:05 +01:00
66a265bbce
Add soft dependencies to worldeditaditions & updaate docs
2020-09-14 02:12:05 +01:00
2a592a808c
Finish bugfixing //forest!
...
moretrees still doesn't work with it though, and I don't understand
why....
2020-09-14 01:19:15 +01:00
a6fc9712b4
Fix some crashes, but it's still not functioning as expected
2020-09-13 22:57:26 +01:00
0b285fa681
Start implementing //forest, but it isn't finished yet
2020-09-13 20:32:55 +01:00
44efb9bb38
Add .is_sapling() and new forest command.
...
It's not hooked up yet and we haven't implemented the chat command, so
it's obviously untested.
2020-09-13 15:43:49 +01:00
25f369c582
Implement //fillcaves for #23
2020-08-26 19:17:07 +01:00
b303f8758a
//erode snowballs: make tweaks & add new noconv param
2020-08-21 22:01:24 +01:00
07588e0940
erode/snowballs: Add comment
2020-08-21 21:00:45 +01:00
fd5804dd9c
//erode: Finish the initial round of bugfixing, but I'm on the fence about it.
...
Specifically, I'm unsure about whether I'm happy with the effects of the
algorithm.
Also, we convolve with a 3x3 gaussian kernel after erosion is complete -
and we have verified that the erosion is having an positive effect at
"roughening up" a terrain surface.
It seems like the initial blog post was correct: the algorithm does tend
to make steep surfaces steeper.
It also appears that it's more effective on larger areas, and 'gentler'
curves. THis might be because the surface normals are more conducive to
making the snowballs roll.
Finally, we need to decide whether we want to keep the precomputed
normals as we have now, or whether we want to dynamically compute them
at the some of request.
2020-08-21 20:59:50 +01:00