Commit Graph

37 Commits

Author SHA1 Message Date
paramat 210a339dce Mapgen files: Update and correct copyright credits 2017-05-26 20:46:03 +01:00
paramat 8e4c11406e Mgv6: Add stairs to desert stone dungeons
As with the other mapgens, now that wide stairs in dungeons are
possible we can now finally add stairs to desert stone dungeons.
Re-order some lines.
2017-02-04 07:21:23 +00:00
kwolekr 3c63c3044d Add MapSettingsManager and new mapgen setting script API functions
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-03 15:38:36 -04:00
kwolekr 92705306bf Mapgen: Refactor mapgen creation and management
- 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-07-03 14:04:11 -04:00
paramat 4adbd69a37 FindSpawnPos: Let mapgens decide what spawn altitude is suitable
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
2016-02-09 07:14:45 +00:00
paramat d7bbe81726 Mapgen: Add global 'decorations' flag
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
2015-11-21 00:10:08 +00:00
paramat 4434498367 Mgv6: Move global mapgen flag 'flat' into mgv6 spflags
Add mgv6 spflag 'flat'
Global flag is kept for backwards compatibility but is now undocumented
2015-11-13 04:25:08 +00:00
paramat 7504cdcfbf Mapgen: Use mapgen-specific names for constants in headers
Update copyright years in all mapgens
Add myself to copyright notices in mgv5 and mgv7
2015-10-09 05:51:47 +01:00
paramat f16ebbfecf Mgv6: Enable snowbiomes by default. Double biome noise spread. 3 octaves, 0.5 persistence for humidity 2015-05-26 02:08:06 +01:00
paramat 02805af36e Mapgen v5/6/7: Cleanup node resolver and aliases 2015-05-12 04:40:53 +01:00
paramat 75cbd80e5b Mgv6: Add optional snow biomes 2015-04-12 04:27:26 +01:00
paramat 22730bbc0c Mgv6: Remove addDirtGravelBlobs, replaced by blob ore in Minetest Game
Desert stone above y = -32 not water_level
Remove unused generateExperimental()
2015-03-18 10:55:58 +00:00
ngosang f6e4c5d9cf Respect game mapgen flags and save world noise params 2015-03-07 15:53:39 -05:00
kwolekr f12118c38b Fix some lingering code style issues 2014-12-29 22:04:47 -05:00
kwolekr 0974337804 Mapgen: Use getBlockSeed2() for blockseeds (much better uniformity) 2014-12-29 21:44:52 -05:00
kwolekr 00fc0babe0 Mapgens: Rename m_emerge to prevent name collisions 2014-12-12 02:38:39 -05:00
kwolekr 5062b99cb0 Rewrite generate notification mechanism
Add support for notify-on-decoration
Clean up mapgen constructors
Clean up mapgen.cpp code style somewhat
Remove trailing whitespace from some files
2014-12-06 13:53:35 -05:00
kwolekr 8d3a68f343 Fix warnings and other misc. minor changes 2014-11-14 03:07:12 -05:00
kwolekr 7616537bc0 Add Generator Element Management framework
Add BiomeManager, OreManager, DecorationManager, and SchematicManager
2014-11-12 23:02:41 -05:00
kwolekr 83bafbe08b Make flag strings clear specified flag with 'no' prefix
Remove flagmask field from set_mapgen_params table
Add small bits of needed documentation
2014-02-08 17:50:59 -05:00
kwolekr 5a34f40d80 Huge overhaul of the entire MapgenParams system
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.
2014-02-03 22:50:14 -05:00
kwolekr bbae8eb751 Dungeongen: Create dungeon gen tuneables; add desert temples for Mapgen V6 2013-12-07 22:45:26 -05:00
kwolekr 8aa930f28e Add minetest.get_mapgen_object to API 2013-06-27 22:35:35 -04:00
kwolekr 0a8519a26f Add initial Decoration support, many misc. improvements & modifications 2013-06-17 03:21:36 -04:00
kwolekr 93474c4218 Remove no virtual dtor warnings, make MapgenParams contain actual NoiseParams 2013-05-19 12:22:20 -04:00
kwolekr 03868ff8e1 Class-ify caves & move to cavegen.cpp, fix cave regression, add caves to Mapgen V7 2013-04-21 01:06:19 -04:00
kwolekr 57cbb8bfd8 Add Ore infrastructure and l_register_ore() 2013-03-24 13:23:33 -04:00
proller f70378f7f5 Mapgen indev: float islands, larger far biomes 2013-03-24 03:40:15 +04:00
kwolekr 939397dd6e Add jungle grass to jungles 2013-03-17 23:08:11 -04:00
kwolekr 67228160ae Some minor cleanups from the last commit 2013-03-16 22:34:12 -04:00
proller 165498cecf initial mapgen indev version with farscale feature and huge caves 2013-03-16 21:48:32 -04:00
kwolekr 6823ce99a7 Re-add jungles, apple trees 2013-03-16 17:06:11 -04:00
kwolekr d10223254a Clean up Mapgen 2013-03-11 21:32:52 -04:00
kwolekr 650e932ddf Re-add dungeons in new dungeongen.cpp 2013-03-10 00:42:51 -05:00
Sfan5 6d0ea26c2d Update Copyright Years 2013-02-24 20:15:24 +01:00
PilzAdam 497ff1ecd6 Change Minetest-c55 to Minetest 2013-02-24 18:49:03 +01:00
kwolekr 91e88196c7 Make mapgen factory setup more elegant, add mapgen_v6.h 2013-01-23 16:16:49 -05:00