Commit graph

197 commits

Author SHA1 Message Date
Starbeamrainbowlabs 0dee65ca1d
//noise2d: add red noise 2021-07-13 00:15:23 +01:00
Starbeamrainbowlabs 7db2207aea
noise2d/make_2d: add todo 2021-07-12 02:46:47 +01:00
Starbeamrainbowlabs 46c2a02ade
//noise2d: add white algorithm; fix nasty bug in apply_2d 2021-07-12 02:45:32 +01:00
Starbeamrainbowlabs a42e296f4e
Reference: Document //noise2d 2021-07-06 01:08:36 +01:00
Starbeamrainbowlabs 8a14d35c04
noise2d: add comment 2021-07-04 16:14:48 +01:00
Starbeamrainbowlabs 0b0595a1d3
Remove a whole bunch of stray debug print statements 2021-07-04 14:35:02 +01:00
Starbeamrainbowlabs 1d82013d86
//noise2d: add sin; sort out apply_mode as number 2021-07-04 13:21:13 +01:00
Starbeamrainbowlabs 49bf0f19bc
Perlin: remove debug functions 2021-07-04 12:03:29 +01:00
Starbeamrainbowlabs b2eb76d280
//noise2d works!
...just.

Next up more engines and documentation
2021-07-03 22:53:16 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs 9cb746e86a
noise: add comment 2021-05-31 00:38:07 +01:00
Starbeamrainbowlabs 9b53b73bc9
//erode river: Update docs,rename some parameters for consistency 2021-05-30 02:09:52 +01:00
Starbeamrainbowlabs 74bde4e60c
//erode river: comment debug
...we might need them again in the future
2021-05-30 01:44:00 +01:00
Starbeamrainbowlabs ccf27c8629
Bugfix new //erode river implementation
next stop: docs!
2021-05-30 01:42:06 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 9ecdd01914
//erode: initial river algorithm implementation 2021-05-30 00:02:21 +01:00
Starbeamrainbowlabs 17b8f8a555
erode/snowballs: correct comment 2021-05-29 23:20:34 +01:00
Starbeamrainbowlabs 87b7254350
erode: add future comment 2021-05-22 02:36:56 +01:00
Starbeamrainbowlabs 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 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 63d284b35b axes + safeguards 2021-05-17 10:41:52 -07:00
Starbeamrainbowlabs 57ff577694
torus: add comment 2021-05-15 02:18:41 +01:00
Starbeamrainbowlabs 0100725a7b
torus: finish rework 2021-05-15 02:09:43 +01:00
Starbeamrainbowlabs 3fbfc1fb15
torus: rework to add axes, but it's not finished yet 2021-05-15 02:00:40 +01:00
Starbeamrainbowlabs f9eb67b4cc
bonemeal: Try bonemealing everything that isn't an air block
fixes #49
2021-05-11 22:17:10 +01:00
Starbeamrainbowlabs 8877e356f0
refactor: refactor utils/strings.lua into multiple files 2021-03-20 01:48:56 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs feb4d6a4bf
//overlay: Don't place nodes above water
Fixes #38
2021-03-02 00:09:46 +00:00
Starbeamrainbowlabs e8d97959b2
Add //spush, //spop, and //sstack 2021-03-01 22:23:36 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 56380f149b
heightmap_size: refactor to use { x, z } instead of [0] / [1] 2021-02-26 02:20:53 +00:00
Starbeamrainbowlabs aef4fe4380
fillcaves: treat liquids as air 2021-02-23 00:19:24 +00:00
Starbeamrainbowlabs 4368f74e30
Fix directionality in worldedit region update when scaling down 2021-02-18 02:33:26 +00:00
Starbeamrainbowlabs 3f871e01f5
//scale: fix more bugs, and also update the worldedit region after scaling 2021-02-18 02:18:34 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs 2a268d9ff8
Implement scale_up
Next up: testing!
2021-02-17 23:46:03 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs ad9e5a26b1
Start working on //scale, but it isn't finished yet. 2021-02-07 23:39:09 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 555058b4ac
//subdivide: tweak update message display 2021-02-07 03:12:09 +00:00
Starbeamrainbowlabs a360f06138
Fix eta calculations 2021-02-07 02:45:34 +00:00
Starbeamrainbowlabs 888ee04f9d
//subdivide: fix a number of other issues 2021-02-07 01:28:07 +00:00
Starbeamrainbowlabs edb80d7478
//subdivide: fix debug logging 2021-02-07 01:07:21 +00:00
Starbeamrainbowlabs 122ff381f1
//subdivide: debug logging 2021-02-07 01:02:03 +00:00
Starbeamrainbowlabs ebed73fc49
//subdivide: fix emerge_area to only emerge individual chunked areas 2021-02-05 23:44:33 +00:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 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
Starbeamrainbowlabs e8584c4ec6
hollow: fix undefined variable 2021-01-31 21:30:13 +00:00
Starbeamrainbowlabs 0be205dae7
Start implementing //hollow, but it isn't finished yet 2021-01-31 18:03:07 +00:00
Starbeamrainbowlabs 4b1cf074d5
//count: make numbers human-readable
Fixes #14
2021-01-31 17:43:08 +00:00
Starbeamrainbowlabs 4b2f2b0001
Add //line
Fixes #25.
2021-01-16 18:36:17 +00:00
Starbeamrainbowlabs d2f101e9dd
It works! 2020-10-10 22:22:53 +01:00
Starbeamrainbowlabs 008519177c
//subdivide: Fix more issues, there are a few more to go 2020-10-10 21:57:19 +01:00
Starbeamrainbowlabs 2ac6ea03a7
Fix some bugs, but the new //subdivide still doesn't work yet 2020-10-10 21:50:03 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 39103a046f
//maze: fix some areas of generated mazes not being explored 2020-09-28 01:30:15 +01:00
Starbeamrainbowlabs 130524a7d0
Disable some debug prints, and update docs 2020-09-20 22:07:47 +01:00
Starbeamrainbowlabs a6f5fe5123
Finish initial //ellipsoidapply implementation 2020-09-20 21:19:29 +01:00
Starbeamrainbowlabs e0e64dc6b9
Start ellipseapply, but it isn't finished 2020-09-20 18:03:29 +01:00
Starbeamrainbowlabs 13278570cb
Optimise //count 2020-09-20 17:53:55 +01:00
Starbeamrainbowlabs c6a1571e1f
Add support for ethereal 2020-09-20 13:28:54 +01:00
Starbeamrainbowlabs d556a4e710
forest: save sapling removal back to disk 2020-09-14 13:43:05 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs a6fc9712b4
Fix some crashes, but it's still not functioning as expected 2020-09-13 22:57:26 +01:00
Starbeamrainbowlabs 0b285fa681
Start implementing //forest, but it isn't finished yet 2020-09-13 20:32:55 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 25f369c582
Implement //fillcaves for #23 2020-08-26 19:17:07 +01:00
Starbeamrainbowlabs b303f8758a
//erode snowballs: make tweaks & add new noconv param 2020-08-21 22:01:24 +01:00
Starbeamrainbowlabs 07588e0940
erode/snowballs: Add comment 2020-08-21 21:00:45 +01:00
Starbeamrainbowlabs 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
Starbeamrainbowlabs 997eb4d101
fix all the crashes with the new erosion algorithm
......but it doesn't look like it's functioning as intended just yet
2020-08-21 15:21:10 +01:00
Starbeamrainbowlabs acb288b984
Fix a ton of bugs but there are lots more to go..... 2020-08-21 13:27:40 +01:00
Starbeamrainbowlabs cdba38d37d
Start implementing snowball erosion algorithm.
There's still a long way to go - we're only just getting warmed up!
2020-08-20 01:53:26 +01:00
Starbeamrainbowlabs 20ccf321ce
Start setting things out to implement erosion
First up, we're going to attempt to implement a snowballs-based 
algorithm.
Reference: https://jobtalle.com/simulating_hydraulic_erosion.html
2020-08-18 02:11:37 +01:00
Starbeamrainbowlabs 0afbba4deb
os.clock() → minetest.get_us_time()
....how did I miss that :P
2020-06-26 20:46:35 +01:00
Starbeamrainbowlabs b8a5bec987
Centralise all command aliases
This should avoid any crashes on startup because worldedit.alias_command 
is nil too (strange!)
2020-06-11 01:00:19 +01:00
Starbeamrainbowlabs 5232406dbb
Alias //flora to //bonemeal 2020-06-11 00:38:35 +01:00
Starbeamrainbowlabs 75a17ed64f
Add //layers command
Also add aliases //naturalise and //naturalize
2020-06-11 00:38:16 +01:00
Starbeamrainbowlabs d96f169950
It works! :D 2020-06-10 00:48:39 +01:00
Starbeamrainbowlabs 2dbbeef9c9
convolve: fix a bunch of bugs.
It's still behaving reeaallllly strangely though
2020-06-09 22:00:56 +01:00
Starbeamrainbowlabs 868052f945
Add //convolve command
....but it's all untested of course :P
2020-06-09 21:11:34 +01:00
Starbeamrainbowlabs 6dac57c53e
Implement (untested!) manip interface on top of the raw convolutional code 2020-06-09 20:43:29 +01:00
Starbeamrainbowlabs 9b9a471aa8
Implement initial (untested) convolution system.
Next we need to implement a worldedit function to handle fetching the 
manip data, calculating the heightmap, pushing it through this 
convolutional system, and saving the changes back again.
2020-06-09 01:21:32 +01:00
Starbeamrainbowlabs e26d5b1580
Upgrade //overlay to support a mix of nodes 2020-06-07 20:46:46 +01:00
Starbeamrainbowlabs c0b40266c8
//replacemix: add command 2020-05-14 21:37:27 +01:00
Starbeamrainbowlabs f3a8c1dd64
Add //count 2020-05-12 00:38:42 +01:00
Starbeamrainbowlabs f0dc2f5a3c
refactor worldeditadditions core functions into subdirectory 2020-05-11 22:28:25 +01:00