Commit graph

660 commits

Author SHA1 Message Date
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
kay27
e23ad6cabf Merge pull request 'Add setting to disable ores generation' (#1174) from AFCMS/MineClone2:master into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/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
AFCMS
0e6177ee1f Add setting to dissable ores generation #874 2021-02-22 12:33:28 +00:00
kay27
89e55e9065 Add sub-map generators queue, fix https://git.minetest.land/MineClone2/MineClone2/issues/993 and https://git.minetest.land/MineClone2/MineClone2/issues/1060 2021-02-22 03:15:32 +04:00
Elias Fleckenstein
100e37183d Update noise_params to the minetest 5.4 convention 2021-02-18 11:54:51 +01:00
kay27
a73f5dabbd Cleanup 2021-02-10 15:36:32 +00:00
kay27
1d792a650f Speedup placing villages 2/2 (update mcl_villages through Gitea, as direct push doesn't work) 2021-02-10 13:07:32 +00:00
MysticTempest
dc9ca16321 Enable villager spawning. 2021-02-09 06:06:19 -06:00
MysticTempest
e716ebd911 Make enderman grief less frequently, enable pseudobiome villages by default, and disable natural village generation in singlenode. 2021-02-01 15:45:22 -06:00
kay27
30b4b9661c Villages cleanup 2021-01-29 23:03:39 +04:00
MysticTempest
2fe5ac8569 Add experimental, pseudobiome-based village variation. 2021-01-28 23:59:01 -06:00
kay27
9a668204cb Remove inter-village distance check 2021-01-28 23:12:16 +04:00