Gaël C
fe6e281130
terrainlib: loop only once for all singular nodes at step 2 of flow routing
2024-01-22 00:30:07 +01:00
Gaël C
2acefb2660
terrainlib: compute current queue length instead of using '#' operator.
...
Important speedup.
2024-01-22 00:30:07 +01:00
Gaël C
0bc100030c
terrainlib_lua: Hardcode flow_local for performance
...
as it is unlikely that it will be changed one day.
This results in a drastic performance improvement (x4 speed for step 1)
2024-01-22 00:30:07 +01:00
Gael-de-Sailly
d00295600d
Add a very brief description at the head of every file
2022-01-26 11:25:17 +01:00
Gael-de-Sailly
0983c27cca
Move geometry helpers back to heightmap.lua
2022-01-26 11:09:51 +01:00
Gael-de-Sailly
6564d40b85
Refactor grid loading and reorganize code
...
Move grid management functions out of polygons.lua, in a new file called gridmanager.lua
Explicitly call other files and grid management functions from init.lua
to make workflow more apparent
Move mapgen loop out of init.lua, into mapgen.lua
2022-01-26 10:54:11 +01:00
Gael-de-Sailly
cd2a77803f
Globalize some of the main functions
...
This will allow to avoid nested 'dofile's
2022-01-21 14:22:22 +01:00
Gael-de-Sailly
b0930f4d40
Fix river shape in confluences (less sharp riverbeds when a small rivers joins a big one)
...
Also cleaned and commented the code
2022-01-20 15:28:14 +01:00
Gael-de-Sailly
975ad02739
Exclude exact riverbanks from rivers
...
This avoids considering points that are exactly at the border of a polygon as rivers
2022-01-20 15:28:14 +01:00
Gael-de-Sailly
6d8ee5af1f
Added settings for margin, and documented in settingtypes.txt
2022-01-20 15:28:14 +01:00
Gael-de-Sailly
fabe107336
Added margin with a settable width near grid border
...
Elevation gets closer to -50 when approaching the border
2022-01-20 15:28:14 +01:00
Gael-de-Sailly
7e155b7076
Express map size in Minetest nodes, not in river grid nodes
...
This introduces new parameters 'map_x_size' and 'map_z_size' that default to 15K
Deprecates 'grid_x_size' and 'grid_z_size'; if they are present, corresponding
values of 'map_x_size' and 'map_z_size' are automatically written in config files.
Also rework compatibility system to better compare versions,
and bump version to 1.0.2-dev1.
2022-01-20 15:28:14 +01:00
Gael-de-Sailly
b374e8ee95
Create settings_default.json to store default values for settings
...
Move noise parameters to settings.lua
2022-01-18 15:21:14 +01:00
Gaël C
1ad8c96b8c
Remove 'default' hard dependency
2022-01-17 23:20:34 +01:00
Gael-de-Sailly
2f7098d752
Bump version (1.0.2) and add changelog
2022-01-10 12:44:33 +01:00
Gael-de-Sailly
942a869b9f
Minor fix in README
2022-01-10 12:32:38 +01:00
Gaël C
b3d79eaaf8
Added more comments in terrainlib_lua
2022-01-07 14:48:36 +01:00
Gaël C
68c19c3b94
terrainlib_lua: replaced space indents by tabs
2022-01-06 15:36:31 +01:00
Gael-de-Sailly
417ce1bcbc
Use builtin logging system and appropriate loglevels
2022-01-03 16:33:56 +01:00
Gael-de-Sailly
c3a798933f
Localize all global functions in load.lua and geometry.lua
2022-01-03 16:20:51 +01:00
Gael-de-Sailly
0c98fc0881
Skip chunks that are fully higher than ground level
2022-01-03 16:18:48 +01:00
Gael-de-Sailly
cb71f4400a
Corrected mistake in settingtypes
2022-01-03 12:04:49 +01:00
Gael-de-Sailly
f8f467ac3f
Use local variables for math.* functions
...
and remove an unnecessary index calculation
2022-01-03 11:56:16 +01:00
Gael-de-Sailly
2e29474686
Bump version (1.0.1)
2021-09-14 15:08:29 +02:00
Gael-de-Sailly
27670addb3
Switch to singlenode mapgen if not done
2021-09-07 11:59:33 +02:00
Gael-de-Sailly
54b94e6485
Updated screenshot
2021-08-01 18:43:44 +02:00
Gael-de-Sailly
09de0fd298
Added reference to scientific paper
2021-07-28 19:50:27 +02:00
Gaël C
e3cadcdbc6
Collect garbage during pre-generation to free some space and reduce OOM problems
2021-07-26 22:28:45 +02:00
Gaël C
f7bc5ee0b4
Added logs during pre-generation
2021-07-25 10:14:15 +02:00
Gaël C
2c5e0ee5af
Code style consistency: use tabs for indentation in all Lua code
2021-07-24 18:55:13 +02:00
Gaël C
95e87f8820
Updated README.md and added environment.yml
...
Switching to full Lua incredibly simplified the amount of stuff needed in README!
2021-07-24 18:49:17 +02:00
Gaël C
db33e58f0a
Make map size a setting
2021-07-24 17:41:17 +02:00
Gaël C
31c5ea1025
Python map viewing: read conf file, and take world folder as input
2021-07-24 17:21:21 +02:00
Gaël C
c2c397c2a5
Added compatibility script
...
to update parameter values coming from older versions
2021-07-24 13:21:06 +02:00
Gaël C
9386ef51f1
Changed the way river width is determined in settings
...
- min_catchment now in square nodes instead of cells
- River widening power as input instead of calculating it from max_catchment
2021-07-24 13:18:58 +02:00
Gaël C
8ce20816e1
Some changes in default settings
...
- blocksize = 15 by default
- base noise is eased
- added tectonic compensation radius in settings
2021-07-24 10:23:06 +02:00
Gaël C
32bc9561b6
Made interactive loading optional but enabled by default
2021-06-26 16:02:00 +02:00
Gaël C
7e39189368
Load data on request instead of loading everything at first.
...
Data is cached in memory in case it is reused.
Offset values have a callback that converts them to the range ±0.5
2021-06-26 13:17:09 +02:00
Gaël C
636773487a
Optimized load.lua by avoiding multi-argument packing
2021-06-26 11:49:26 +02:00
Gaël C
9cda649c93
Fixed time statistics
2021-06-26 11:26:45 +02:00
Gaël C
ecd1f0e08f
Added time statistics and removed debug prints
2021-06-25 21:05:14 +02:00
Gaël C
5898354dbe
Changed some default parameters
...
Map centered by default
Base noise higher and less wide horizontally
2021-06-25 21:05:03 +02:00
Gaël C
e14bc5216c
Removed useless and deprecated files
2021-06-23 19:56:37 +02:00
Gaël C
a313244d07
Rename generate.lua -> pregenerate.lua
2021-06-23 19:53:56 +02:00
Gaël C
0de2f746cf
Update settingtypes.txt
2021-06-06 17:17:28 +02:00
Gaël C
de8d685471
New settings system, use a conf file instead of datastorage
...
Added many missing settings, including pregeneration-related ones
TODO: update settingtypes.txt
2021-06-06 13:25:43 +02:00
Gaël C
51f3a2719d
Generate and load map after mod loading
...
This has needed to globalize map tables
2021-06-05 11:24:28 +02:00
Gaël C
b02387944d
Pre-generation: reverse X and Y directions everywhere
...
to make directions compatible with the mapgen code
2021-06-04 18:24:06 +02:00
Gaël C
74733549df
Various bugfixes and workarounds
...
Now working in pure Lua!
Some parts of the code are very hacky (e.g. noise) and the way new and old codes have been glued together is sometimes to be rewritten.
But at least it works.
2021-06-03 23:30:04 +02:00
Gaël C
cb297af047
Add all code for generating a grid on world creation.
...
Not tested ; will likely need much testing and bugfix.
2021-06-03 20:08:57 +02:00