rubenwardy
ec796b8e81
Add map limit config option
2015-08-02 14:27:04 +02:00
paramat
d569c91f48
Mgv7: Use density noise + density gradient for mountain terrain
...
Tune and optimise noise parameters
2015-07-21 23:16:14 +01:00
Loic Blot
fa7fe510d9
Remove profiler.h include where it's not needed. Remove some unreachable and very old code
2015-07-21 08:10:43 +02:00
paramat
ba15c98e4d
Mgv7: Auto-set lowest mountain generation level
...
Lowest level of base terrain determines mountain generation in mapchunk
Change some positional function arguments from int to s16
2015-07-08 00:49:04 +01:00
paramat
d786a272c0
Mgv7: Lower base of mountain generation to -112 and define constant
2015-07-04 20:21:19 +01:00
paramat
36163d9653
Mgv5/mgv7 caves: Remove sand found in underground tunnels
...
Add missing check for max_stone_y to mgv5 cavegen
Tunnels now carve through sand below water_level
2015-06-27 03:36:40 +01:00
paramat
622918d8a8
Mgv7: Edit noise parameters. Fewer octaves, larger spreads.
2015-06-21 04:34:19 +01:00
paramat
70da8a940b
Mapgen objects: Enable heatmap and humidmap for all biome api mapgens
2015-06-20 04:16:17 +01:00
paramat
e45ecad3ab
Biome API: Add noise defined biome blend
2015-06-18 07:05:22 +01:00
paramat
38482d2656
Biome API: Enable biome generation to lower world limit
...
Decorations: Remove lower limit of water level for placement
2015-06-15 02:07:38 +01:00
paramat
74d8b341bc
Mgv5/mgv7: Trigger biome recalculation at underwater surfaces
2015-06-03 06:37:10 +01:00
paramat
774e5d17c4
Biome API, mgv7: Increase heat/humidity spreads. Improve mgv7 noise parameters
2015-05-24 04:33:09 +01:00
paramat
3dba6d1f90
Mgv5/v7: Fix generateBiomes biome recalculation logic Biomegen down to y = -192 for mgv5 deep oceans. Improve code
2015-05-23 02:18:30 +01:00
paramat
c0edb8e313
Mapgen v5/v7: Detect sandstone, enable sandstone brick dungeons
2015-05-17 06:07:39 +01:00
paramat
02805af36e
Mapgen v5/6/7: Cleanup node resolver and aliases
2015-05-12 04:40:53 +01:00
paramat
ad789be45b
Mgv5/v7: Add check for water for deciding biome node stability
2015-04-16 04:01:58 +01:00
paramat
392ac41c99
Cavegen: Remove now unnecessary checks for water, lava, ice
...
Remove large cave checks for air
Mgv5/mgv7:Add is_ground_content checks to 3d noise tunnels
More large caves
Shorten lines
2015-04-07 04:43:24 +01:00
Craig Robbins
9527984dbc
Move globals from main.cpp to more sane locations
...
Move debug streams to log.cpp|h
Move GUI-related globals to clientlauncher
Move g_settings and g_settings_path to settings.cpp|h
Move g_menuclouds to clouds.cpp|h
Move g_profiler to profiler.cpp|h
2015-04-01 23:04:25 +10:00
kwolekr
ed10005d38
GenElementManager: Pass opaque handles to Lua and rename to ObjDefManager
...
Add core.clear_registered_schematics() and refactor schematics somewhat
2015-03-31 01:11:51 -04:00
paramat
d6638b4300
Mgv7: 1 up , 1 down overgeneration for chunk border continuity
...
Fixes biome layer at y = 47 when base/alt terrain exceeds it
Also fixes missing dust glitch at y = 47
Mgv5/mgv7:Cleanup code
2015-03-22 19:30:08 +00:00
paramat
d03c2999da
Mgv5/mgv7: Sprinkle dust from full_node_max.Y if chunk above is generated
...
Mgv5: Add large_cave_depth constant
2015-03-19 10:18:42 +00:00
paramat
6ce0985f47
Mgv5/mgv7: Add desert temples if desert stone detected in mapchunk
2015-03-12 02:33:16 +00:00
paramat
d463000595
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
f6e4c5d9cf
Respect game mapgen flags and save world noise params
2015-03-07 15:53:39 -05:00
Craig Robbins
ced6d20295
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
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 3f376a092e1c16429fb52f24736e9da98aff4cd5.
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