summaryrefslogtreecommitdiff
path: root/src/mapgen/mapgen_flat.cpp
Commit message (Collapse)AuthorAge
* Randomwalk caves: Add parameters for number, proportion flooded. Allow small ↵Paramat2019-11-08
| | | | | | | | | | | | | | caves (#8928) Add mapgen parameters to set the range of the random number of randomwalk caves per mapchunk, and to set the proportion that are flooded with liquids. Default values are, for now, unchanged from the previous hardcoded values. Add parameters to allow small randomwalk caves Disabled by default for now as they have never been present in the non-mgv6 mapgens.
* Mapgen Flat: Fix and improve getSpawnLevelAtPoint() (#8756)Paramat2019-08-06
| | | | | | Previously, this wrongly returned ground level (a position containing a solid node) as spawn level. Return ground level + 2 (+ 2 to spawn above biome 'dust' nodes). Improve codestyle and make more consistent with generateTerrain().
* Dungeons: Settable density noise, move number calculation to mapgens (#8473)Paramat2019-06-01
| | | | | | | | | | | | Add user-settable noise parameters for dungeon density to each mapgen, except V6 which hardcodes this noise parameter. Move the calculation of number of dungeons generated in a mapchunk out of dungeongen.cpp and into mapgen code, to allow mapgens to generate any desired number of dungeons in a mapchunk, instead of being forced to have number of dungeons determined by a density noise. This is more flexible and allows mapgens to use dungeon generation to create custom structures, such as occasional mega-dungeons.
* mapgen: drop mapgen id from child mapgens.Loïc Blot2019-03-31
| | | | | | This id must be owned by the child mapgen and never be set to a misc value by a developer Also use nullptr in some places
* Change mapgen order to ores > dungeons > decorations (#7656)Paramat2018-08-20
| | | | | | | | | | | Previously dungeons > decorations > ores. Decorations depend on the node they are placed on, and ore types are increasingly able to place large continuous volumes of nodes, such as strata. Decorations are increasingly being used underground. The new order avoids a node being changed by ore generation after a decoration has been placed on it. The new order also avoids ores appearing in the walls of a dungeon if the wall nodes match the local stone node.
* Mapgen flags: Add 'biomes' global mapgen flag (#7355)Paramat2018-06-08
| | | | | | | | | Previously the only way to disable biomes was to 'clear' the registered biomes in a mod, but this method causes large amounts of unnecessary processing: 1. Calculation of 4 2D noises. 2. Looping through all nodes of a mapchunk replacing nodes with identical nodes. The new flag disables those operations.
* Mapgen caves: Re-order generation to fix cavern bugParamat2018-04-29
| | | | | | | Previously, caverns confused tunnel generation causing biome top and filler nodes to appear in caverns. Split 'generateCaves()' into 2 functions to separate tunnel and large randomwalk cave generation. In each mapgen re-order cave generation to generate tunnels before caverns.
* Biome API / dungeons: Add biome-defined dungeon nodesParamat2018-04-07
| | | | | | | | | | Add new biome fields 'node_dungeon', 'node_dungeon_alt', 'node_dungeon_stair'. If 'node_dungeon' is not defined dungeons fall back to classic behaviour. Remove messy and imprecise dungeon material code from 'generateBiomes()'. Code deciding dungeon materials is now in 'generateDungeons()' and uses the biome at mapchunk centre for more precision. Remove hardcoded 'MG_STONE' types as long intended.
* VoxelArea: add_{x,y,z,p} must be staticLoic Blot2018-03-09
| | | | | Fix some documentations issues Use getNodeNoCheck(v3s16, ...) in some cases instead of getNodeNoCheck(x, y, z, ...)
* Dungeons: Add Y limits in all mapgensparamat2018-02-20
| | | | Preserve the upper limit used in mgvalleys.
* Mapgen folder: Update and improve copyright information of filesparamat2018-01-15
|
* Move files to subdirectories (#6599)Vitaliy2017-11-08
* Move files around