33 Commits

Author SHA1 Message Date
paramat
b13d0401c0 Heightmaps: Fix uninitialised values in mgv5/mgv6. findGroundLevel: Return -MAP_GENERATION_LIMIT if surface not found 2015-03-08 03:54:03 +00:00
ngosang
55e479a807 Respect game mapgen flags and save world noise params 2015-03-07 15:53:39 -05:00
Craig Robbins
27791ee1aa For usages of assert() that are meant to persist in Release builds (when NDEBUG is defined), replace those usages with persistent alternatives 2015-03-07 22:41:47 +10:00
Craig Robbins
1e07aa835e Fix mapgen using unitialised height map values 2015-03-06 01:42:55 +10:00
paramat
e5522808f8 Cavegen, mgv5: Cleanup code
Conf.example: Update mgv5 mapgen params
Mgv7: Lava caves only below -256
2015-03-04 23:53:58 +00:00
paramat
a5bcca8305 Biome API: Re-calculate biome at every surface in a mapchunk column 2015-02-26 03:35:25 +00:00
paramat
91a0d2f7ca Mgv5: Remove blobgen. Remove crumble and wetness noises
Add large pseudorandom caves below -256
De-link terrain level from water_level
Cavegen: Mgv5 large cave code
2015-02-21 01:43:25 +00:00
paramat
bb092828f2 Mgv5: Skip calculation of filler, heat and humidity perlinmaps in underground mapchunks 2015-01-23 21:24:47 -05:00
paramat
37e339765a Mapgen V5: Various improvements
Caves check for biome nodes, only excavate stone under water level
Unease caves noises, use MT0.3 parameters
Blobgen after cavegen
Biomegen: remove 'is replaceable content' bool
2015-01-18 23:38:15 -05:00
paramat
119b219889 Mapgen V5: Move cave generation from base terrain loop to optional function
This fixes biome surface in tunnels
2015-01-11 22:35:36 -05:00
kwolekr
97c7e9a5f6 Optionally specify propagateSunlight area in calcLighting
This fixes the Mapgen V5 calcLighting segfault
2015-01-05 01:20:36 -05:00
kwolekr
7ba812f028 Lighting: Fix nearly all issues
The cause of a single light source seemingly being lit without spread
was due to its creation in the +Y mapblock boundary layer during map
generation, which was ignored as the overtop.  This overtop explicitly
needs to be omitted during sunlight propagation, however.  To accomplish
this, Mapgen::calcLighting() was split into separate functions taking
separate parameters.
Additionally, do not diminish light too early during spread.  This fixes the
output inconsistency between Map::updateLighting and Mapgen::calcLighting.
2015-01-04 02:42:31 -05:00
paramat
7ef439a167 MgV5/6/7: Generate dungeons above water level
Use/add stone_surface_max_y to speed-optimise/guide dungeon generation
MgV7: Don't let mountain terrain chop dungeons at mapchunk borders
Make mountain terrain update stone_surface_max_y for caves in mountains
2015-01-01 15:44:26 -05:00
kwolekr
b9066cd7f3 Fix some lingering code style issues 2014-12-29 22:04:47 -05:00
kwolekr
8d748e5bf5 Mapgen: Use getBlockSeed2() for blockseeds (much better uniformity) 2014-12-29 21:44:52 -05:00
paramat
3cb4ccc0f4 Biome API: Add shore top and shore filler nodes, underwater node, water top node. Add water top depth and shore height parameters. Remove water dust node 2014-12-28 21:37:43 -05:00
paramat
d2f750b458 Re-add hacky fix for underwater grass, to fix mgv7 user's biomes 2014-12-20 14:50:13 -05:00
kwolekr
4bba841143 Mapgens: Rename m_emerge to prevent name collisions 2014-12-12 02:38:39 -05:00
kwolekr
9ac2db17df Clean up Noise macros 2014-12-11 02:53:10 -05:00
kwolekr
6f398af64f Noise: Automatically transform noise maps if needed 2014-12-10 23:35:37 -05:00
kwolekr
180c455ab1 Noise: Create a deep copy of NoiseParams 2014-12-10 00:37:09 -05:00
kwolekr
66c691836a Biomes: Make biome heat and humidity noise parameters user-configurable 2014-12-09 00:38:04 -05:00
kwolekr
22b22968a1 Add flags and lacunarity as new noise parameters
Add 'absolute value' option to noise map functions
Extend persistence modulation to 3D noise
Extend 'eased' option to noise2d_perlin* functions
Some noise.cpp formatting fixups
2014-12-07 21:59:32 -05:00
kwolekr
9d516b1753 Mapgen V5: Fix use of uninitialized value in ctor 2014-12-07 01:19:42 -05:00
kwolekr
4f8d54e249 Rewrite generate notification mechanism
Add support for notify-on-decoration
Clean up mapgen constructors
Clean up mapgen.cpp code style somewhat
Remove trailing whitespace from some files
2014-12-06 13:53:35 -05:00
paramat
896f946cec Add definable node_stone to biome API, mgv5, mgv7. Reduce and correct depth of mgv7 biomes. l_mapgen.cpp: add '#include mapgen_v5.h' because '#include mapgen_v7' is there. Improve underwater grass hack 2014-12-03 19:45:29 -05:00
paramat
56e9c09049 Mgv5 1 up 1 down overgeneration for biome surface continuity 2014-11-20 23:13:09 -05:00
paramat
d2891780ad Mgv5 get ground level at point function. Fast spawn player version 2014-11-20 21:07:20 -05:00
kwolekr
2d1dd941b7 Fix warnings and other misc. minor changes 2014-11-14 03:07:12 -05:00
kwolekr
22e7b35567 Mapgen v7: Fix uninitialized spflags
Mapgen v5: Fix minor style issue
2014-11-12 23:58:50 -05:00
kwolekr
bb5f0e46bd Add Generator Element Management framework
Add BiomeManager, OreManager, DecorationManager, and SchematicManager
2014-11-12 23:02:41 -05:00
paramat
85d775adfc Tune cave noise scales to 6. Fix blobs spflag, now enabled. Update conf.example 2014-11-09 20:21:39 -05:00
paramat
28ed3ea7c4 Add mgv5. New noise code, uses biome API. Eased 3d noise for terrain, caves, blobs 2014-11-08 21:37:26 +01:00