Commit Graph

770 Commits

Author SHA1 Message Date
cora 3584d89028 better distribution 2022-07-04 23:07:51 +02:00
cora 40d0c1affb slightly optimize placement 2022-07-04 23:07:51 +02:00
cora 0a2e68d136 spawn carts, make mineshafts a bit less frequent 2022-07-04 23:07:51 +02:00
cora 9f66c9f673 let railcorridors be placed by new api
this makes it a lot faster
2022-07-04 23:07:51 +02:00
cora a92b405efd Comment out unused cart-checking hackery 2022-07-04 23:07:51 +02:00
cora db4f2baafc Tweak tsm_railcorridors for faster mapgen
This just does 5 instead of 10 attempts to spawn a corridor in a
chunk. There still appear to be plenty corridors and it makes
mapgen noticeably faster.
2022-07-04 23:07:51 +02:00
cora c66cb834a2 spawn corals only at -10 and lower
to prevent corals in rivers
2022-07-04 02:13:54 +02:00
cora 6ad00e4170 emerge before geode and surface pool placement
otherwise they can be cut off
2022-07-01 14:43:03 +02:00
cora ef14006f15 Fix surface pools & desert temple loot 2022-07-01 14:30:02 +02:00
cora c59a890963 add woodland cabin loot 2022-07-01 06:11:10 +02:00
cora ac69b7c710 Add woodland cabin and outpost 2022-07-01 04:26:41 +02:00
cora f115fc8ea0 tweak probabilities 2022-07-01 02:05:48 +02:00
cora 8684140740 log actual placement position 2022-07-01 02:05:48 +02:00
cora be2a8d7054 Structure transfer fixes 2022-07-01 02:05:48 +02:00
cora f5cc0ef2dc Move shipwrecks to mcl_structures 2022-07-01 02:05:48 +02:00
cora 7945de1324 igloo fixes, mobspawns, move geode to mcl_structs 2022-07-01 02:05:48 +02:00
cora a09226c370 fossil & igloo -> new api 2022-07-01 02:05:48 +02:00
cora 3ca6d4de3b fix chunk probability and distributions 2022-07-01 02:05:48 +02:00
cora 7f8a366a7b make geodes slightly larger, fix positioning 2022-07-01 02:05:48 +02:00
cora 607511518f fix warning 2022-07-01 02:05:48 +02:00
cora 14cd360214 witch hut, boulders, ice-spikes -> new api 2022-07-01 02:05:48 +02:00
cora dfbb832f96 Terrain feature fixes 2022-07-01 02:05:48 +02:00
cora 063e17bc0a make schematic selection deterministic 2022-07-01 02:05:48 +02:00
cora befe493ff0 Add warm ocean ruins 2022-07-01 02:05:48 +02:00
cora fcb8160a60 Add loot generation to api 2022-07-01 02:05:48 +02:00
cora 065767cc77 Add Ocean Ruins - schematics by PrarieWind 2022-07-01 02:05:48 +02:00
cora 47eca3f774 fix callbacks 2022-07-01 02:05:48 +02:00
cora b396a3c6ee update API.md 2022-07-01 02:05:48 +02:00
cora 9381657f5d use new struct api for desert well and temples 2022-07-01 02:05:48 +02:00
cora e37358d220 Add make_foundation option
test by /spawnstruct nether_outpost without being on complete
(covering the sidelen) solid ground
2022-07-01 02:05:48 +02:00
cora d8697cb59c Tweak basalt delta code 2022-07-01 02:05:48 +02:00
cora 0b3a4c18d7 structure-api: add check for solid ground 2022-07-01 02:05:48 +02:00
cora 8e976d9191 Do not log generation of terrain features
this leads to excessive io otherwise
2022-07-01 02:05:48 +02:00
cora fed81932e2 structs: use mcl_register_generator, cave decos 2022-07-01 02:05:48 +02:00
cora eb8db0dc0b optimize terrain features 2022-07-01 02:05:48 +02:00
cora 69dac8ded4 fix surface pools y offset 2022-07-01 02:05:48 +02:00
cora 2b87958678 add all sizes of sea pickles not just 1 2022-06-23 17:18:01 +02:00
cora f883b45809 Add coral reefs 2022-06-23 15:06:56 +02:00
cora 31b94f5b22 Add "nether outpost"
As a temporary solution until large nether fortresses are there.
This is just a little tower containing some warts and a blaze
spawner.
2022-06-19 03:11:56 +02:00
cora 41f708e03e Regular decorations for legacy nether(except v6)
minetest supports this now
2022-06-19 00:24:56 +02:00
cora 0890c719a3 Add basalt pillars 2022-06-19 00:24:52 +02:00
cora fefb15f2a8 Add new fungus tree schematics 2022-06-19 00:24:52 +02:00
cora 01eea4ab8a prevent nether trees from growing through bedrock 2022-06-19 00:24:52 +02:00
cora d9a74ac180 rename mcl_surface_pools -> mcl_terrain_features 2022-06-19 00:24:52 +02:00
cora a0264ed5e0 tweak biome distribution to be more like mc
according to
https://www.reddit.com/r/Minecraft/comments/gjeuww/how_the_nether_biomes_are_distributed/
2022-06-19 00:24:52 +02:00
cora 48189cb3a7 fix lighting issue for placed schematics
warped and crimson shroomlight would not work correctly before
because they're placed after light calculation is done apparently
2022-06-19 00:24:52 +02:00
cora db9fba70dd some biome tweaks, add nether gold 2022-06-19 00:24:52 +02:00
cora 8efbd89b6a Add basalt columns & lava pools 2022-06-19 00:24:52 +02:00
cora 3c79685c48 Add main nether biomes
Add nether forests

Add soulsand valley decorations

Add Basalt Delta basics
2022-06-19 00:24:48 +02:00
cora 92da429f50 Fix chatcommand not under mcl_structures in /help 2022-06-15 05:10:41 +02:00
cora 726d1f07fa use noise instead of fill_ratio for distribution 2022-06-15 05:10:41 +02:00
cora 9c6aafa3c1 add surface pools 2022-06-15 05:10:41 +02:00
cora 1b0053299c Do not replace bedrock during geode gen. 2022-06-15 05:10:41 +02:00
cora fa56ce5d52 Add outer geode layer
uses deepslate until smooth basalt is there
2022-06-15 05:10:41 +02:00
cora a0bed1d8bc Add proper logging + some fixes 2022-06-15 05:10:41 +02:00
cora a895292371 Add API documentation, minor fixes 2022-06-15 05:10:41 +02:00
cora b0b8638a4c Add /spawnstruct support 2022-06-15 05:10:41 +02:00
cora 8fa67e6b4f Geodes as test for place by function 2022-06-15 05:10:41 +02:00
cora 1eaac3c406 use gennotify instead of lbm for placement
keep the lbm for secondary structures
2022-06-15 05:10:41 +02:00
cora 6406a14738 Add Structure placement api 2022-06-15 05:10:41 +02:00
cora 899c849996 old registered_structures -> structure_data 2022-06-15 05:10:41 +02:00
cora 5c057f24fb get_mapgen_params -> get_mapgen_setting 2022-06-07 03:17:32 +02:00
cora 4bff9710a0 Make structblock non walk- and pointable 2022-06-06 01:08:55 +02:00
cora d4e4bc8708 add rarer beached shipwreck 2022-06-05 13:10:36 +02:00
cora b7419dc207 randomly enchant treasure 2022-06-05 13:10:36 +02:00
cora 4af1094eed Add shipwrecks
schematics by chmodsayshello
2022-06-05 13:10:36 +02:00
cora 6b9cb0062d save home coords in cat entity as well 2022-05-29 02:34:02 +02:00
cora 2337e72a23 simplify spawn logic 2022-05-29 02:34:02 +02:00
cora da6563a5b3 Spawn witch and black cat on witchhut generation 2022-05-29 02:34:02 +02:00
Lizzy Fleckenstein e7898352d8 Remove mobs_mc_gameconfig 2022-05-27 02:44:39 +02:00
Lizzy Fleckenstein f6a40ffb78
Run tools/strip_trailing_whitespace.sh 2022-05-26 07:29:28 +02:00
Lizzy Fleckenstein ff33794487 Rename mobs global to mcl_mobs 2022-05-25 23:13:33 +02:00
cora fca259c074 fix crash during (artificial) village creation
when using the village tool doing that on an unsuitable location
would result in no position for the belltower being available
this checks for that and ... doesn't crash then ^^
2022-05-22 02:01:21 +02:00
cora 7379d5bee8 Add Belltower to villages 2022-05-21 14:48:56 +02:00
cora d67dd0577f fix crash through forgotten function call 2022-05-21 12:36:57 +02:00
cora 2b63866c14 spawn villagers (and golem) immediately after mg 2022-05-21 12:36:57 +02:00
cora e51ea1e079 initialize inventory nodes on mapgen 2022-05-21 12:36:57 +02:00
cora b58422a584 write villager id into bed nodemeta 2022-05-21 12:36:57 +02:00
cora 3ff4ea576d spawn iron golem on villagegen 2022-05-21 12:36:57 +02:00
cora 0d56ef1a90 add jobsites to villagegen schematics 2022-05-21 12:36:57 +02:00
cora 8d0afede37 don't block mapgen on village generation 2022-05-09 10:29:57 +00:00
cora 0288581407 increase wait til village generated 2022-05-09 10:29:57 +00:00
cora 46dbf8c0ab Spawn villagers on villagegen, stay in village
This spawns a villager per bed on village gen and saves the bed
position in the entity. If it moves too far from the village
it gets teleported (for now) back.
2022-05-09 10:29:57 +00:00
Alexander Minges faf3f60cff Use uncarved pumpkin instead of carved in mapgen 2022-04-22 18:07:37 +00:00
cora 3cb9947cf4 fix sugarcane not getting param2 on mapgen 2022-04-19 12:16:07 +02:00
kabou ace0dc00c7 Remove `settlements_in_world` and `settlements.txt`
The global(!) table settlements_in_world` has no use, but is serialized and
saved to a file `settlements.txt` every time during generation of a new
village, adding more lag.  This commit removes all related code:
* Remove all instances of `settlements_in_world`.
* Remove `settlements.load()` and `settlements.save()`.
2022-04-02 21:52:03 +02:00
kabou deed231f28 Fix typos. 2022-03-09 18:50:41 +01:00
kabou 1326b9e7e7 Add check for unknown nodes.
* Check if node has a definition table before attempting to evaluate its
  attributes.  By application of De Morgan's law, the compound logic
  expression can be rewritten so that the existence of the table is
  checked before all following attribute references.
2022-03-09 15:14:22 +01:00
kabou 6a69f49fa0 Add check for unknown nodes.
* Check if node has a definition table before attempting to evaluate its
  attributes.
2022-03-09 14:59:49 +01:00
kabou f5a8d6d17a Add check for unknown nodes.
* Check if node has a definition table before attempting to evaluate its
  attributes.
* Define local variable to cache multiple accesses to `registered_nodes[]`
  and improve readability.
* Clarify code flow.
2022-03-09 14:40:37 +01:00
E 87e494f42b mapgen/mcl_mapgen_core: move set_node decorations a node callback
During the rewrite in 89e55e9065, a queue system was added to allow
using both VoxelManip-based generation steps, and set_node-based steps,
however some set_node-based steps (underground mushrooms, nether
decorations, and structures) were missed and remained in a VoxelManip
step. The result is that the changes made by the set_node stages were
overwritten after the (now-stale) VoxelManip data was committed later.

(ref. Mineclonia/Mineclonia#26)
2022-02-25 18:38:50 +01:00
1F616EMO c52e09ddcd mcl_structures 2022-02-23 23:58:05 +01:00
Lizzy Fleckenstein 0e9a56fa35
Add stacks to enchant_uniform_randomly 2021-12-07 18:19:41 +01:00
Lizzy Fleckenstein ec7e245b9d
Various fixes to the enchanting and loot system
- enchanted loot generated by mapgen now uses PseudoRandom for randomness
- prevent fishing loot from generating loot 32767 times (!!!) when only 1 is needed
- bows and fishing rods obtained from the treasure section of fishing loot are now enchanted
- there is now a function to uniform enchant items other than books
2021-12-07 17:57:18 +01:00
Lizzy Fleckenstein 34f329a9d5
TextureConverter: Implement grass palette conversion
Source: https://minecraft.fandom.com/wiki/Tint
Since the MineClone2 biomes do not entirely match with the Minecraft ones I picked the Minecraft biomes that seem to match them best.
This also changes the palette index of the nether to match the desert instead of the mesa biome
and changes the color of grass blocks in item form to the default minecraft one.
2021-11-03 19:57:21 +01:00
kay27 7ff476b9b9 Fix igloo hidden trapdoor with minetest.after(), MineClone2/MineClone2#1797 2021-06-22 16:53:55 +04:00
marcin-serwin cbe8583cef Merge branch 'master' into polish-translation 2021-06-02 10:14:25 +00:00
AFCMS cd33d406b2 fix many codestyle issues (functions, strings, modpaths) 2021-05-29 16:12:33 +02:00
AFCMS 00063cde73 speedup mcl_observer 2021-05-27 09:34:12 +02:00
Marcin Serwin 37b1191c0a Add polish translation of mcl_structures 2021-05-25 21:58:23 +02:00
AFCMS 9e074af07f unify code style [1] 2021-05-25 12:52:25 +02:00
AFCMS 388ab6d8df fix some codestyle issues 2021-05-25 10:56:06 +02:00
AFCMS 8592670f9b [tsm_railcorridors] fix warnings 2021-05-25 08:44:24 +02:00
AFCMS a71a0e9161 fix even more warnings (nether portals and potions) 2021-05-22 23:04:18 +02:00
AFCMS 1870a89af0 remove unused var 2021-05-22 20:01:59 +02:00
Code-Sploit bcea5a35ef Try to fix unknown variable in mcl_chorus_flower 2021-05-14 08:22:10 +00:00
AFCMS 45201481c1 Merge branch 'master' into luacheck-script 2021-05-10 09:38:40 +02:00
kay27 f054eb1ce6 [mcl_biomes] Fix chorus random function, prevent chorus growth at return portal position 2021-05-10 02:47:56 +04:00
kay27 f3c540af5d [mcl_mapgen_core, mcl_biomes] Make chorus growth deterministic 2021-05-10 02:24:52 +04:00
kay27 96be84161f [mcl_mapgen_core] Don't crash if Ender Dragon doesn't spawn for some reason 2021-05-10 01:57:34 +04:00
AFCMS cbb014ed38 basic working script 2021-05-03 22:11:49 +02:00
AFCMS 02f393998f fix many warnings (644 remaining) 2021-04-17 09:26:37 +02:00
AFCMS 22a2fdbf5f fix more codestyle 2021-04-17 07:46:24 +02:00
AFCMS 5f076d372a fix many codestyle errors 2021-04-17 07:42:49 +02:00
AFCMS 1a58b0c510 fix many codestyle issues 2021-04-16 13:35:03 +02:00
jordan4ibanez 67c1bc973a Add lua locals into mcl_dungeons for performance 2021-04-14 01:19:01 +04:00
Lizzy Fleckenstein 3c1a38904a Merge branch 'master' of https://git.minetest.land/MineClone2/MineClone2 2021-04-07 09:25:44 +02:00
Lizzy Fleckenstein b2c09c8ba0 Add gateway portals 2021-04-07 09:17:13 +02:00
kay27 069e089ae4 [mcl_portals, mcl_structures] Add End gateways W-I-P by Elias Fleckenstein with minor portals improvements and fixes 2021-04-07 03:34:15 +04:00
Lizzy Fleckenstein 430f958fae Move end exit portal to 0, 0; Add end gateway portals (WIP) 2021-04-06 20:08:20 +02:00
Lizzy Fleckenstein ea08fee9ba Make the dragon stay within a 50 blocks range of the portal 2021-04-06 16:38:23 +02:00
Lizzy Fleckenstein 83b9cf3ad2 End exit portal openng / closing on dragon death / spawn 2021-04-06 15:48:17 +02:00
Lizzy Fleckenstein a348909ba3 Enderdragon: Proper Egg and XP spawning 2021-04-06 12:50:36 +02:00
Lizzy Fleckenstein 1144006cdd Add End main island generation 2021-04-04 15:16:06 +02:00
Lizzy Fleckenstein 49446bbb7b Make enderdragon spawn upon exit portal generation 2021-04-04 12:01:45 +02:00
kay27 d1a0299b92 [mcl_dungeons] Remove empty code section, add debug info 2021-03-29 03:34:41 +04:00
kay27 80d845adb6 [mcl_mapgen_core] Fix Nether generation chain reaction 2021-03-29 03:18:17 +04:00
kay27 1818fcf592 [mcl_mapgen_core] Remove water from End, fix MineClone2/MineClone2#1394 2021-03-29 02:43:08 +04:00
kay27 cb2aae5a55 [mcl_mapgen_core] Redesign, mostly to remove water from End and restore static lvm_buffer to speed it up 2021-03-28 22:57:11 +04:00
kay27 03feb36558 Improve Nether Portals (#1315) (as a squash)
Remove Nether portal caches, MineClone2/MineClone2#1210

Store all exits from Nether portals in quick-access table

Implement proper Nether portal search, using the table, MineClone2/MineClone2#1055

Store Nether portal exits table in mod storage

Remove exits from table on Nether portal destruction

Align destination area to [map chunks 5x5x5](https://git.minetest.land/MineClone2/MineClone2/wiki/World-structure%3A-positions%2C-boundaries%2C-blocks%2C-chunks%2C-dimensions%2C-barriers-and-the-void) to avoid lots of ```emerge_area()``` calls

Support Nether roof, MineClone2/MineClone2#1267

Implement better suitable place search, MineClone2/MineClone2#1126

Implement object queue not to trigger the same search again

Avoid lava lakes, MineClone2/MineClone2#1126

Add ```/spawnstruct nether_portal``` chat command
Co-Authored-By: kay27 <kay27@noreply.git.minetest.land>
Co-Committed-By: kay27 <kay27@noreply.git.minetest.land>
2021-03-21 23:14:33 +00:00
AFCMS 558fa57cc6 Solve quartz not generating in the nether 2021-03-18 09:48:18 +01:00
AFCMS 8f30e223e2 I hate reverting something xD 2021-03-16 17:39:06 +01:00
kay27 6e6809f360 Make books in chest loot deterministic, ref. MineClone2/MineClone2#1254 and MineClone2/MineClone2#1060 2021-03-08 04:14:03 +04:00
kay27 15fa1e5b7a Fix MineClone2/MineClone2#1060 - attempt number 3 2021-03-08 03:05:43 +04:00
AFCMS bddc4a3ac7 make village tool experimental 2021-03-07 17:07:55 +01:00
kay27 8ed28adf7c Quick attempt to consider https://github.com/minetest/minetest/issues/5900#issuecomment-306071900 and fix MineClone2/MineClone2#1212 (comment) 2021-03-07 06:31:43 +04:00
kay27 66febf158a Speedify dungeons a little and fix chest places (linear, not square) 2021-03-07 06:00:49 +04:00
kay27 45c0c576f7 Implement /spawnstruct dungeon 2021-03-07 03:49:34 +04:00
Lizzy Fleckenstein d57db0444f Use mod.conf in all mods, part 1 2021-03-04 15:22:14 +01:00
kay27 05a3b4e60c Wrap https://github.com/minetest/minetest/issues/10995 around, thanks @SmallJoker 2021-02-28 16:35:21 +04:00
kay27 abc0bb9e8e Fix dir_to_rotation() 2021-02-27 23:20:57 +04:00
kay27 21e6c5ad1f Fix MineClone2/MineClone2#1216 2021-02-27 22:44:34 +04:00
kay27 2ce5c5415a Fix village initialization: MineClone2/MineClone2#1206 MineClone2/MineClone2#1207 MineClone2/MineClone2#1209 2021-02-27 03:33:51 +04:00
Elias Fleckenstein d859d94a63 Merge pull request 'Fix #1204' (#1208) from AFCMS/MineClone2:afcms-patch-1 into master
Reviewed-on: MineClone2/MineClone2#1208
2021-02-26 16:26:46 +00:00
AFCMS 41e715ef39 Fix #1204 2021-02-26 15:57:44 +00:00
kay27 a5168721b1 Fix MineClone2/MineClone2#1186 2021-02-25 17:36:42 +04:00
kay27 e23ad6cabf Merge pull request 'Add setting to disable ores generation' (#1174) from AFCMS/MineClone2:master into master
Reviewed-on: MineClone2/MineClone2#1174
2021-02-25 10:04:13 +00:00
kay27 54cd5007ed Try to wrap https://github.com/minetest/minetest/issues/10995 by cancelling redefinition of minetest.place_schematic 2021-02-25 01:03:41 +04:00
AFCMS f0348d99d9 Use setting to generate Quartz ore 2021-02-22 19:12:33 +00:00
kay27 47db5c5917 Make mcl_loot/get_random_slots() deterministic 2021-02-22 21:58:35 +04:00