aboutsummaryrefslogtreecommitdiff
path: root/src/mapgen_fractal.h
AgeCommit message (Collapse)Author
2016-07-03Add MapSettingsManager and new mapgen setting script API functionskwolekr
This commit refactors the majority of the Mapgen settings system. - MapgenParams is now owned by MapSettingsManager, itself a part of ServerMap, instead of the EmergeManager. - New Script API functions added: core.get_mapgen_setting core.get_mapgen_setting_noiseparams, core.set_mapgen_setting, and core.set_mapgen_setting_noiseparams. - minetest.get/set_mapgen_params are deprecated by the above new functions. - It is now possible to view and modify any arbitrary mapgen setting from a mod, rather than the base MapgenParams structure. - MapgenSpecificParams has been removed.
2016-07-03Mapgen: Refactor mapgen creation and managementkwolekr
- Move mapgen creation logic out of EmergeManager and into Mapgen - Internally represent mapgen type as an enum value, instead of a string - Remove the need for a MapgenFactory per mapgen
2016-05-27Mapgen: Combine dungeon generation codekwolekr
2016-05-27Mapgen: Deduplicate common constructor codekwolekr
2016-05-27Mapgen: Remove calculateNoise from most mapgenskwolekr
This commit moves noise calculation to the functions where the noise is actually required, increasing the separation of concerns and level of interdependency for each mapgen method. Valleys Mapgen is left unmodified.
2016-05-27Mapgen: Combine generateBiomes, dustTopNodes, and generateCaveskwolekr
This commit condenses the above methods into a single implementation used by V7, V5, Flat, Fractal, and Valleys mapgens and introduces MapgenBasic.
2016-05-27Move biome calculation to BiomeGenkwolekr
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.
2016-04-28Mapgen: Make 3D noise tunnels' width settableparamat
Correct parameter names mg_valleys to mgvalleys Remove biome NoiseParams from MapgenValleysParams Improve format of parameter code
2016-04-08Mapgen: Optimise cave noises and tunnel excavationparamat
Instead of doing nothing at node_max.Y + 1 use 1-down overgeneration for tunnel generation and noisemaps Move some old unused code in mgv7 to end of file
2016-02-09FindSpawnPos: Let mapgens decide what spawn altitude is suitableparamat
To avoid spawn search failing in new specialised mapgens Increase spawn search range to 4000 nodes Add getSpawnLevelAtPoint() functions to EmergeManager, class Mapgen and all mapgens Remove getGroundLevelAtPoint() functions from all mapgens except mgv6 (possibly to be re-added later in the correct form to return actual ground level) Make mgvalleys flag names consistent with other mapgens Remove now unused 'vertical spawn range' setting
2015-12-15Mgfractal: Add 3D and 4D fractalsparamat
3D Mandelbrot/Mandelbar 3D Christmas Tree 3D Mandelbulb 3D Cosine Mandelbulb 4D Mandelbulb Plus corresponding julia set for each Add credits for formulas Rename parameter 'formula' to 'fractal' Speed optimisations
2015-11-23Mgfractal: Move julia set selection into formula parameterparamat
Improve default parameters Update and improve documentation Unhide mapgen, but is still unstable
2015-11-15Mgfractal: Revert unnecessary duplication of parametersparamat
2015-11-14Mgfractal: Create a choice of 4 mandelbrot formulasparamat
2015-11-09Cavegen: Make mgfractal use mgv5 cavegenparamat
Remove CaveFractal Add a lava depth constant to CaveV5 to make it universal
2015-10-29Mgfractal: Add filler depth noiseparamat
2015-10-24Mgfractal: Independent iterations and scale parametersparamat
Complete set of parameters for each of mandelbrot and julia sets The julia set structure often needs different iterations and scale
2015-10-11Mgfractal: Independant offset and slice params for mandelbrot and juliaparamat
Player now spawns on julia set due to julia offset Add commented-out '#include profiler.h' for timetaker use Use v3fs to reduce number of parameters Tune tunnel width to match mgv7
2015-10-07Fractal mapgen: Add seabed and large pseudorandom cavesparamat
2015-10-06Mapgen: Add 4D fractal mapgenparamat