Commit graph

774 commits

Author SHA1 Message Date
cora
f98242bb0c Do not emerge while making railcorridors
it turns out to work fine without
2022-07-06 01:43:21 +02:00
cora
daa95e3688 replace dirt and gravel too for even less clumps 2022-07-05 00:12:23 +02:00
cora
ea99341f94 make geode inside smoother 2022-07-05 00:12:23 +02:00
cora
4b95185fba make geodes less cube shaped (sometimes) 2022-07-05 00:12:23 +02:00
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
Elias Fleckenstein
e7898352d8 Remove mobs_mc_gameconfig 2022-05-27 02:44:39 +02:00
Elias Fleckenstein
f6a40ffb78
Run tools/strip_trailing_whitespace.sh 2022-05-26 07:29:28 +02:00
Elias 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
Emojigit
c52e09ddcd mcl_structures 2022-02-23 23:58:05 +01:00
Elias Fleckenstein
0e9a56fa35
Add stacks to enchant_uniform_randomly 2021-12-07 18:19:41 +01:00
Elias 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
Elias 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(), https://git.minetest.land/MineClone2/MineClone2/issues/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
Elias Fleckenstein
3c1a38904a Merge branch 'master' of https://git.minetest.land/MineClone2/MineClone2 2021-04-07 09:25:44 +02:00
Elias 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
Elias Fleckenstein
430f958fae Move end exit portal to 0, 0; Add end gateway portals (WIP) 2021-04-06 20:08:20 +02:00
Elias Fleckenstein
ea08fee9ba Make the dragon stay within a 50 blocks range of the portal 2021-04-06 16:38:23 +02:00
Elias Fleckenstein
83b9cf3ad2 End exit portal openng / closing on dragon death / spawn 2021-04-06 15:48:17 +02:00
Elias Fleckenstein
a348909ba3 Enderdragon: Proper Egg and XP spawning 2021-04-06 12:50:36 +02:00
Elias Fleckenstein
1144006cdd Add End main island generation 2021-04-04 15:16:06 +02:00
Elias 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 https://git.minetest.land/MineClone2/MineClone2/issues/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, https://git.minetest.land/MineClone2/MineClone2/issues/1210

Store all exits from Nether portals in quick-access table

Implement proper Nether portal search, using the table, https://git.minetest.land/MineClone2/MineClone2/issues/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, https://git.minetest.land/MineClone2/MineClone2/issues/1267

Implement better suitable place search, https://git.minetest.land/MineClone2/MineClone2/issues/1126

Implement object queue not to trigger the same search again

Avoid lava lakes, https://git.minetest.land/MineClone2/MineClone2/issues/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. https://git.minetest.land/MineClone2/MineClone2/issues/1254 and https://git.minetest.land/MineClone2/MineClone2/issues/1060 2021-03-08 04:14:03 +04:00
kay27
15fa1e5b7a Fix https://git.minetest.land/MineClone2/MineClone2/issues/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 https://git.minetest.land/MineClone2/MineClone2/issues/1212#issuecomment-16139 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
Elias 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 https://git.minetest.land/MineClone2/MineClone2/issues/1216 2021-02-27 22:44:34 +04:00
kay27
2ce5c5415a Fix village initialization: https://git.minetest.land/MineClone2/MineClone2/issues/1206 https://git.minetest.land/MineClone2/MineClone2/issues/1207 https://git.minetest.land/MineClone2/MineClone2/issues/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: https://git.minetest.land/MineClone2/MineClone2/pulls/1208
2021-02-26 16:26:46 +00:00
AFCMS
41e715ef39 Fix #1204 2021-02-26 15:57:44 +00:00
kay27
a5168721b1 Fix https://git.minetest.land/MineClone2/MineClone2/issues/1186 2021-02-25 17:36:42 +04:00