summaryrefslogtreecommitdiff
path: root/src/mapgen/mapgen_v7.h
Commit message (Collapse)AuthorAge
* Move Mapgen V7 river generation into the main generation loop (#10639)Paramat2020-11-20
| | | | | | | | | | All terrain generation now occurs in one loop, instead of rivers being carved afterwards in a separate loop. Fixes the removal of nodes added by mods in 'register on generated'. Avoids other problems and reduces the chance of future bugs. Mapchunk generation time is reduced. Also fixes a code mistake which resulted in river channel generation being disabled at floatland altitudes even when floatlands were disabled.
* Add new Mapgen V7 floatland implementation (#9296)Paramat2020-05-14
| | | | | | | | | | | | Floatland structure is vertically-compressed 3D noise. Uses a lacunarity of 1.618 (the golden ratio) for high quality noise. Floatlands appear between user-settable Y limits, with smooth tapering at each limit. Simple user-settable density adjustment. Shadow propagation is disabled in and just below floatlands, no shadows are cast on the world surface. Can be reconfigured to create a solid upper world layer between the Y limits, lakes/seas can be optionally added to this.
* Give the Mapgen on each EmergeThread its own Biome/Ore/Deco/SchemManager copysfan52020-05-05
|
* Settings: Add get_flags API for mapgen flags (mg_flags, mgv6_spflags, ...) ↵SmallJoker2020-01-25
| | | | | | | | | | | (#9284) Unified flags handling in C++ and Lua Settings API -> Reading only, for now. Writing can be implemented later, if needed. API function to read the currently active flags -> was impossible from Lua Co-authored-by: Wuzzy <wuzzy2@mail.ru>
* Remove Mapgen V7 floatlands in preparation for new implementation (#9238)Paramat2020-01-04
| | | | Preserve the floatland flag of existing worlds, to be used again when the new implementation is added.
* Move duplicated mapgen parameters to class MapgenBasic (#9134)Paramat2019-11-19
| | | 'large_cave_depth', 'dungeon_ymin' and 'dungeon_ymax' are duplicated across many mapgens so should have been in class MapgenBasic from the start.
* Randomwalk cave liquids: Remove deprecated 'lava depth' parameter (#9105)Paramat2019-11-18
| | | | | | | | | Low-disruption first step towards removing the hardcoded cave liquid code. Since MT 5.0.0 cave liquids can be defined and located by biome definitions instead. In games that do not yet use biome definitions to define and locate cave liquids (MTGame does), lava will now appear below y = water_level - 256 instead of below 'lava depth' (usually y = -256). Therefore no change in most mapgens if using the default 'lava depth'.
* 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.
* 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
* Mgv7: Code cleanup (#7299)Paramat2018-05-07
|
* 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
|
* Mgv7 floatlands: Add exponent parameterparamat2018-01-03
| | | | | Allows more control over shape of floatland mountain terrain. Terrain shape is unchanged.
* Move files to subdirectories (#6599)Vitaliy2017-11-08
* Move files around