Commit Graph

234 Commits

Author SHA1 Message Date
Starbeamrainbowlabs
b131970f16
fixup 2021-08-07 22:30:38 +01:00
Starbeamrainbowlabs
6f00394d3d
Noise: add perlinmt algorithm & set as default 2021-08-07 22:30:10 +01:00
Starbeamrainbowlabs
fc2444c5cd
//floodfill: remove debug 2021-08-07 02:31:21 +01:00
Starbeamrainbowlabs
d1b0866af2
//floodfill: fix crash 2021-08-07 02:30:38 +01:00
VorTechnix
cff58792bf Merge branch 'main' into VorTechnix 2021-08-05 10:43:00 -07:00
Starbeamrainbowlabs
35777b7ae5
//layers: comment debug 2021-08-05 02:38:57 +01:00
Starbeamrainbowlabs
f30ddbae3b
//walls: add optional thickness argument 2021-08-05 02:00:38 +01:00
Starbeamrainbowlabs
87f84e2482
//bonmeal: add optional node list constraint 2021-08-05 01:17:43 +01:00
Starbeamrainbowlabs
ef678e6a05
//layers: fix 2021-08-04 12:17:39 +01:00
Starbeamrainbowlabs
db830c6633
Implement slope constraint for //layers, but it isn't tested yet 2021-08-04 01:41:51 +01:00
VorTechnix
77ffda46f7 added axis and dir checks 2021-08-02 18:16:50 -07:00
VorTechnix
74ba9cc36f more lib/selector refactoring 2021-08-02 16:01:02 -07:00
VorTechnix
325f1cc11e added init for lib/selectors 2021-08-02 13:29:55 -07:00
VorTechnix
b20c8f9af1 Merge branch 'main' into VorTechnix 2021-08-01 07:03:31 -07:00
Starbeamrainbowlabs
64ed01132e
scale_down: fix redefining posi_copy 2021-07-30 19:49:11 +01:00
Starbeamrainbowlabs
54d0f5a3a3
run2d: Fix accidental redefining global variable 2021-07-30 19:48:10 +01:00
Starbeamrainbowlabs
51e1e7dcbd
noise.params_apply_default: Fix shadowing variable 2021-07-30 19:47:21 +01:00
Starbeamrainbowlabs
1f4a115063
//maze3d: Fix accidental global variable definition 2021-07-30 19:46:33 +01:00
Starbeamrainbowlabs
f37a2aabcf
//forest: Fix redefining variable i in loop 2021-07-30 19:45:09 +01:00
Starbeamrainbowlabs
c6bae3b7e0
//erode river: fix redefining i in nested loop 2021-07-30 19:44:02 +01:00
Starbeamrainbowlabs
910d4b036f
maze2d: squash another undefined variable 2021-07-30 19:03:54 +01:00
Starbeamrainbowlabs
ecb846fcfe
//erode river: fix undefined global variable 2021-07-30 18:03:39 +01:00
VorTechnix
6e3b9d99e9 removed tests 2021-07-23 16:21:58 -07:00
VorTechnix
8718e59206 added wcompass 2021-07-23 12:11:08 -07:00
VorTechnix
d7d96ae263 //wbox added 2021-07-20 12:52:19 -07:00
VorTechnix
7b17c3675a Update corner_set.lua 2021-07-19 09:50:10 -07:00
VorTechnix
0c9987c745 corner set working 2021-07-19 08:55:39 -07:00
VorTechnix
1e7ab670f7 fix typo 2021-07-19 07:47:22 -07:00
VorTechnix
2c42e0495c cornerset broken 2021-07-19 07:42:47 -07:00
VorTechnix
f7323afe10 wireframe corner 2021-07-18 17:27:37 -07:00
Starbeamrainbowlabs
fa2c0642c1
Fix typo in comment 2021-07-18 20:11:10 +01:00
Starbeamrainbowlabs
e4d3f26692
perlin: use wea.bit.band 2021-07-17 21:34:50 +01:00
Starbeamrainbowlabs
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
Starbeamrainbowlabs
0d1900d37c
Add airlike backend command, but it's nto tested or hooked up yet 2021-07-13 23:49:21 +01:00
Starbeamrainbowlabs
e799a2ea61
Refactor Queue implementation into separate file 2021-07-13 22:02:34 +01:00
Starbeamrainbowlabs
e85b91d074
//noise2d infrared: remove debug print 2021-07-13 00:56:26 +01:00
Starbeamrainbowlabs
03038689e2
Add infrared noise 2021-07-13 00:54:52 +01:00
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