aboutsummaryrefslogtreecommitdiff
path: root/src/mapgen.cpp
Commit message (Collapse)AuthorAge
* Fix MgStoneType and BiomeType enum nameskwolekr2016-05-27
|
* Mapgen: Combine generateBiomes, dustTopNodes, and generateCaveskwolekr2016-05-27
| | | | | This commit condenses the above methods into a single implementation used by V7, V5, Flat, Fractal, and Valleys mapgens and introduces MapgenBasic.
* Move biome calculation to BiomeGenkwolekr2016-05-27
| | | | | | | BiomeGen defines an interface that, given a set of BiomeParams, computes biomes for a given area using the algorithm implemented by that specific BiomeGen. This abstracts away the old system where each mapgen supplied the noises required for biome generation.
* Mapgen: Don't spread light of nodes outside the desired areakwolekr2016-03-30
| | | | | | | This fixes #3935, a regression from 0338c2e. An 'optimization' was performed where an index for the VoxelManip being operated on was mistakenly used for bounds checking within the incorrect VoxelArea, namely, the area wherein light should be spread.
* Mapgen: Spread both night and day light banks in spreadLightkwolekr2016-03-29
|
* Mapgen: Add propagate_shadow bool to calcLightingparamat2015-12-07
| | | | | | | | | | To terminate unwanted shadows from floatlands or realms above Also add to LuaVoxelManip calc_lighting for use in mapgen mods Remove the 2 argument calcLighting, mapgens now use the 5 argument form to specify the volumes for propagateSunlight and spreadLight In mgsinglenode replace calcLighting with setLighting and clean-up use of tabs and spaces
* Mapgen: Add global 'decorations' flagparamat2015-11-21
| | | | | | | | | | Flag is set by default in MapgenParams The global 'trees' flag remains but is now undocumented and unset by default in MapgenParams Add mgv6_spflag 'trees' set by default in defaultsettings.cpp to affect new worlds only This is automatically backwards compatible for existing worlds
* Decoration API: Add flag for placement on liquid surfaceparamat2015-10-23
| | | | | Add findLiquidSurface() function to mapgen.cpp Update lua_api.txt
* Add emerge completion callback mechanismkwolekr2015-10-04
| | | | Major refactor of emerge.cpp and Map::init/finishBlockMake
* Define and use limit constants for Irrlicht fixed-width typeskwolekr2015-10-04
|
* Various style cleanups + unused code removalest312015-09-19
| | | | | | | | | | -> Don't pass pointer to whole IGameDef to NodeMetadata constructors and deserializers, but only to IItemDefManager, which is needed -> Remove the unused content_mapnode_get_new_name() method -> Fix style for MapBlock::deSerialize and MapBlock::deSerialize_pre22, improving accuracy of error messages a bit -> Fix style at other serialisation methods too -> Improve accuracy of some comments
* Remove unused functions.onkrot2015-08-16
|
* Add map limit config optionrubenwardy2015-08-02
|
* Mapgen objects: Enable heatmap and humidmap for all biome api mapgensparamat2015-06-20
|
* Biome API: Add noise defined biome blendparamat2015-06-18
|
* Split ObjDef/ObjDefManager out to objdef.cppkwolekr2015-05-18
|
* ObjDefManager: Set replacement object's handle info after calling set()kwolekr2015-05-03
| | | | | Make gamedef optional when constructing an ObjDefManager Add note about object ownership
* Fix MSVC error caused by ed10005SmallJoker2015-04-02
|
* Move globals from main.cpp to more sane locationsCraig Robbins2015-04-01
| | | | | | | | | | | | 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
* GenElementManager: Pass opaque handles to Lua and rename to ObjDefManagerkwolekr2015-03-31
| | | | Add core.clear_registered_schematics() and refactor schematics somewhat
* Add support for the PCG32 PRNG algo (and associated script APIs)kwolekr2015-03-22
|
* Revert "Fix issue #2441: crash on respawn, since a conversion std::list to ↵kwolekr2015-03-20
| | | | | | | std::vector on Environment.cpp" This reverts parts of commit 9749d9fee6db99da1ab861dc04ec63ef973db3e0, which breaks node resolver list clearing
* Heightmaps: Fix uninitialised values in mgv5/mgv6. findGroundLevel: Return ↵paramat2015-03-08
| | | | -MAP_GENERATION_LIMIT if surface not found
* Respect game mapgen flags and save world noise paramsngosang2015-03-07
|
* Fix mapgen using unitialised height map valuesCraig Robbins2015-03-06
|
* Fix issue #2441: crash on respawn, since a conversion std::list to ↵Loic Blot2015-03-05
| | | | | | | std::vector on Environment.cpp * Also change some std::list to std::vector for ClientMap::renderMap * Remove disabled code in ClientMap::renderMap, disabled since a long time
* Fix all warnings and remove -Wno-unused-but-set cflagkwolekr2015-01-18
|
* Prevent transform of noise3d result in getBlockSeed2kwolekr2015-01-12
|
* Optionally specify propagateSunlight area in calcLightingkwolekr2015-01-05
| | | | This fixes the Mapgen V5 calcLighting segfault
* Add minetest.generate_ores() and minetest.generate_decorations()kwolekr2015-01-04
|
* Lighting: Fix nearly all issueskwolekr2015-01-04
| | | | | | | | | | | 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.
* Mapgen: Use getBlockSeed2() for blockseeds (much better uniformity)kwolekr2014-12-29
|
* Redefine NodeResolver interface and replace with callback mechanismkwolekr2014-12-27
|
* Add minetest.clear_registered_decorations() and clear_registered_ores()kwolekr2014-12-12
|
* Add minetest.clear_registered_biomes() apikwolekr2014-12-06
|
* Rewrite generate notification mechanismkwolekr2014-12-06
| | | | | | | Add support for notify-on-decoration Clean up mapgen constructors Clean up mapgen.cpp code style somewhat Remove trailing whitespace from some files
* Fix warnings and other misc. minor changeskwolekr2014-11-14
|
* Add Generator Element Management frameworkkwolekr2014-11-12
| | | | Add BiomeManager, OreManager, DecorationManager, and SchematicManager
* Split up mapgen.cppkwolekr2014-11-01
|
* Refactor decoration-related codekwolekr2014-10-29
| | | | | Split up ModApiMapgen::l_register_decoration() Define and make use of CONTAINS() and ARRLEN() macros
* Add NodeResolver and clean up node name -> content ID resolution systemkwolekr2014-10-26
|
* Split settings into seperate source and header filesShadowNinja2014-09-21
| | | | This also cleans up settings a bit
* Fix warningsproller2014-04-19
|
* Remove liquid_finite and weatherproller2014-04-18
|
* Schematic: Add force_placement parameter to minetest.place_structure APIkwolekr2014-02-15
|
* Make flag strings clear specified flag with 'no' prefixkwolekr2014-02-08
| | | | | Remove flagmask field from set_mapgen_params table Add small bits of needed documentation
* Huge overhaul of the entire MapgenParams systemkwolekr2014-02-03
| | | | | | 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.
* Schematic: Read slice probability table from schematic descriptorskwolekr2014-01-19
|
* Mapgen V6: Add flag to stop mud flowkwolekr2014-01-12
|
* Add map feature generation notify Lua APIkwolekr2013-12-14
|