Craig Robbins
daa1c30b35
Fix mapgen using unitialised height map values
2015-03-06 01:42:55 +10:00
paramat
eb7482fd73
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
14f7df980b
Biome API: Re-calculate biome at every surface in a mapchunk column
2015-02-26 03:35:25 +00:00
paramat
bec5d3ab22
Mgv7 mountains: Remove divide by zero code that creates vast walls
...
Conf.example: Add mgv7 cave1, cave2 noiseparams
Mgv7: Make skipping of mountain code relative to y=0 not water level
Mountain noise offset now -0.6 to compensate
Tune chance of large caves
2015-02-05 03:21:04 -05:00
paramat
1702c34b64
Mgv7 generateRidgeTerrain: Make river generation relative to water level
...
Remove widthn and make nridge zero underwater
2015-01-22 02:21:11 -05:00
paramat
70354ac20b
Mgv7: Speed optimise calculateNoise and generateRidgeTerrain
...
Remove unnecessary range limiting of persistmap
Skip calculation of filler, mountain, ridge, heat and humidity perlinmaps in underground mapchunks
Skip generateRidgeTerrain in underground mapchunks
2015-01-22 02:10:07 -05:00
paramat
408d9b72f0
Mgv7 generateRidgeTerrain: Enable rangelim of widthn to remove abysses, calculate widthn later in function
...
Reduce width to 0.2
Carve river channels in deeper waters
2015-01-22 02:06:33 -05:00
paramat
2f0a8f1c3e
Mgv7: Replace small pseudorandom caves with 3D noise tunnels. Fewer large caves
2015-01-17 21:57:48 -05:00
kwolekr
7233a1228e
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
7452d5399b
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
paramat
938a3f2976
Mgv7: Remove range limits on mountain height to enable modification through .conf
2015-01-01 12:51:49 -05:00
kwolekr
f12118c38b
Fix some lingering code style issues
2014-12-29 22:04:47 -05:00
kwolekr
0974337804
Mapgen: Use getBlockSeed2() for blockseeds (much better uniformity)
2014-12-29 21:44:52 -05:00
paramat
570c2042b1
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
173e1f6014
Re-add hacky fix for underwater grass, to fix mgv7 user's biomes
2014-12-20 14:50:13 -05:00
kwolekr
00fc0babe0
Mapgens: Rename m_emerge to prevent name collisions
2014-12-12 02:38:39 -05:00
kwolekr
fb80a7c111
Clean up Noise macros
2014-12-11 02:53:10 -05:00
kwolekr
16baed0467
Noise: Automatically transform noise maps if needed
2014-12-10 23:35:37 -05:00
kwolekr
fb2bc956b1
Noise: Create a deep copy of NoiseParams
2014-12-10 00:37:09 -05:00
kwolekr
29b413b376
Biomes: Make biome heat and humidity noise parameters user-configurable
2014-12-09 00:38:04 -05:00
kwolekr
2fd3d52020
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
5062b99cb0
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
0a5373d400
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
kwolekr
8d3a68f343
Fix warnings and other misc. minor changes
2014-11-14 03:07:12 -05:00
kwolekr
c3ad08708f
Mapgen v7: Fix uninitialized spflags
...
Mapgen v5: Fix minor style issue
2014-11-12 23:58:50 -05:00
kwolekr
7616537bc0
Add Generator Element Management framework
...
Add BiomeManager, OreManager, DecorationManager, and SchematicManager
2014-11-12 23:02:41 -05:00
kwolekr
9e811a92e7
Split up mapgen.cpp
2014-11-01 13:16:23 -04:00
kwolekr
6b4307791a
mapgen: Resolve nodes in ctor rather than makeChunk
2014-10-30 02:29:37 -04:00
kwolekr
83bafbe08b
Make flag strings clear specified flag with 'no' prefix
...
Remove flagmask field from set_mapgen_params table
Add small bits of needed documentation
2014-02-08 17:50:59 -05:00
kwolekr
7f743178db
Remove blank default values for emergequeue_limit_* settings
...
Add checks for invalid user input for important settings
Rename Settings::tryGet* to Settings::get*NoEx for consistency
2014-02-05 00:17:53 -05:00
kwolekr
c6c5edd73a
Revert "Fix settings to honor numeric conversion errors"
...
This reverts commit 3f376a092e
.
2014-02-05 00:05:58 -05:00
sapier
3f376a092e
Fix settings to honor numeric conversion errors
...
Rename try* non exceptioning functions to *NoEx
2014-02-04 22:14:13 -05:00
kwolekr
5a34f40d80
Huge overhaul of the entire MapgenParams system
...
MapgenParams is no longer a polymorphic class, eliminating the need for messy and bug-prone reallocations.
Separation between the common and mapgen-specific parameters is now strongly defined.
Mapgen parameters objects are now properly encapsulated within the proper subsystems.
2014-02-03 22:50:14 -05:00
kwolekr
c3708b456e
Add map feature generation notify Lua API
2013-12-14 01:52:24 -05:00
kwolekr
bbae8eb751
Dungeongen: Create dungeon gen tuneables; add desert temples for Mapgen V6
2013-12-07 22:45:26 -05:00
kwolekr
65874c25db
Mapgen V7: Fix out-of-bounds array access
2013-07-06 15:22:51 -04:00
kwolekr
18d7bc7fa1
Mapgen V7: Huge rewrite, also tweaks to cavegen et al.
2013-07-06 02:21:54 -04:00
kwolekr
2e292b67a0
Add Lua on_mapgen_init callback, and minetest.set_mapgen_params API
2013-06-27 22:35:35 -04:00
proller
f764297be2
Math mapgen fix, ip show on connect, pathfinder segfault fix
2013-06-23 20:35:16 +04:00
kwolekr
4d77781ce7
A handful of minor fixes to various things
2013-06-22 17:27:48 -04:00
kwolekr
0a8519a26f
Add initial Decoration support, many misc. improvements & modifications
2013-06-17 03:21:36 -04:00
kwolekr
d00e8bd31a
Fix nearly all warnings
2013-05-19 21:26:56 -04:00
kwolekr
93474c4218
Remove no virtual dtor warnings, make MapgenParams contain actual NoiseParams
2013-05-19 12:22:20 -04:00
kwolekr
8767c78169
Enhance caves for mgv7, add ravines
2013-04-27 22:40:52 -04:00
kwolekr
37e6d1356b
mgv7: Implement getGroundLevelAtPoint(), fix layer of topnodes at chunk Y boundaries, remove growGrass()
2013-04-21 15:47:13 -04:00
kwolekr
03868ff8e1
Class-ify caves & move to cavegen.cpp, fix cave regression, add caves to Mapgen V7
2013-04-21 01:06:19 -04:00
kwolekr
7c0e707cf1
Add param2 field for ores, some minor fixes and misc. code cleanup
2013-04-07 21:21:54 -04:00
kwolekr
96e2931c5c
Fix black tree leaves, reduce above-ground cave shadows
2013-04-07 02:26:46 -04:00
kwolekr
8ec3fc35c6
Add Mapgen V7, reorganize biomes
2013-04-07 00:50:21 -04:00