summaryrefslogtreecommitdiff
path: root/src/mapgen/cavegen.cpp
Commit message (Collapse)AuthorAge
* Allow more than 255 biomes, document new maximum (#9855)Paramat2020-05-20
| | | | Change biomemap data type from u8 to u16. New technical (not practical) maximum is 65535 biomes.
* 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: Extend beyond mapchunk vertically also (#9094)Paramat2019-11-10
| | | | | Previously, randomwalk caves only extended beyond the mapchunk borders horizontally, preventing vertical overlap and interconnection.
* 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.
* Randomwalk caves: Reduce 'insure' value from 10 to 2 (#9035)Paramat2019-10-13
| | | | | | | | | This value reduces how far randomwalk caves can extend into the mapchunk padding, to avoid 'out of voxelmanip' cave nodes which cause flattened cave walls. Testing shows that a value of 2 (instead of 10) is enough to make 'out of area' nodes extremely rare. Reducing this value results in a higher chance of overlap and connection with caves of neighbour mapchunks.
* Document the deprecation of hardcoded cave liquids (#8692)Paramat2019-07-20
|
* Allow multiple cave liquids in a biome definition (#8481)Paramat2019-05-18
| | | | | | | | | | | | | This allows games to specify biome cave liquids and avoid the old hardcoded behaviour, but preserves the ability to have multiple cave liquids in one biome, such as lava and water. When multiple cave liquids are defined by the biome definition, make each entire cave use a randomly chosen liquid, instead of every small cave segment using a randomly chosen liquid. Plus an optimisation: Don't place nodes if cave liquid is defined as 'air'
* Cavegen: Fix errors when getting biome outside mapchunk (#7480)Paramat2018-06-26
| | | | | | | | | | Some cave segments are outside the mapchunk. Previously, biome was being calculated by a function that uses the noise maps. Points outside the mapchunk resulted in incorrect noise map indexes that were sometimes outside the noise map size, causing a crash. Use either noise maps or point noise calculations depending on point location.
* Cavegen: Allow small RandomWalk caves to generate beyond mapchunk borderParamat2018-05-04
|
* Biome-defined cave liquids: Use faster biome calculationparamat2018-04-26
|
* Cave liquids: Use a more precise point for calculating biomeParamat2018-04-21
| | | | Use the centre point of the route being carved for a more precise match between cave liquids and biome.
* Cavegen: Fix variable typo that broke mgvalleys large cave distribution (#7249)Paramat2018-04-17
| | | | | Fix elusive 5 year old bug that caused mgvalleys large caves to be flat and limited to mapchunk borders. Error was fixed 2 years ago in 'CavesV6' but not in 'CavesRandomWalk'.
* Biome API / cavegen: Add definable cave liquid for a biome (#7192)Paramat2018-04-05
| | | | Add 'node_cave_liquid' as a new field in biome registration. If field is absent cave liquids fall back to classic behaviour.
* Fix many issues reported by clang-tidy (#7189)Loïc Blot2018-04-02
| | | | | | | | | | | * Fix many issues reported by clang-tidy We have many issues in code related to some performance to float <-> double. Clang-tidy reported it in performance-type-promotion-in-math-fn I fixed many of them. It's not ready for a promote to blocking Also fix some value which should be const-ref
* 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, ...)
* Node definition manager refactor (#7016)Dániel Juhász2018-02-10
| | | | | | | | | * Rename IWritableNodeDefManager to NodeDefManager * Make INodeDefManager functions const * Use "const *NodeDefManager" instead of "*INodeDefManager" * Remove unused INodeDefManager class * Merge NodeDefManager and CNodeDefManager * Document NodeDefManager
* Mapgen folder: Update and improve copyright information of filesparamat2018-01-15
|
* Move files to subdirectories (#6599)Vitaliy2017-11-08
* Move files around