Commit graph

2303 commits

Author SHA1 Message Date
teknomunk
a0463b564a Implement gravity, move orientation update to own function, fix cart stopping in process_acceleration 2024-06-15 14:08:29 +02:00
teknomunk
8c6b011c91 Change connected railcar behavior to fix unreliable end of track stopping, set maximum acceleration of powered rails to 8 blocks per second (per https://minecraft.fandom.com/wiki/Powered_Rail), stop powered rails from powering the block underneath it (allows below rail hopper to work while the rail is powered like in https://www.youtube.com/watch?v=szjO0-duTAk), modify mcl_hoppers to allow triggering a hopper pull once the minecart is stopped on top of the hopper and wait before allowing the cart to move to allow redstone circuits time to process 2024-06-15 14:08:29 +02:00
teknomunk
f2c6f069d0 Make minecart always stop at correct location at end of track, fix crash when placing chest minecart after changing how staticdata is handled 2024-06-15 14:08:29 +02:00
teknomunk
15000be8ec Modify do_movement_step to move to always move to the edge of the current rail segment before updating the direction to prevent oscillations at corners, fix end of track stop location with new movement behavior, disable experimental controls, swap code to detach the driver on float with a call to detach_driver() 2024-06-15 14:08:29 +02:00
teknomunk
f3fac3586f Add DEBUG flag, stop small do_movement_step's from occuring (this improves but doesn't eliminate the bug I with the a6be179ed commit), add recovery when staticdata field gets lost 2024-06-15 14:08:29 +02:00
teknomunk
9be0d27dd8 Fix initial_properties for minecarts 2024-06-15 14:08:29 +02:00
teknomunk
bee32418c4 Change left,right and back vectors to matrix math results with no branching 2024-06-15 14:08:29 +02:00
teknomunk
5d14d43ec4 Remove now unused properties from minecart definition, convert more vectors to use vector.new syntax 2024-06-15 14:08:29 +02:00
teknomunk
8a91f04cf0 Complete rewrite of minecart movement that resolves https://git.minetest.land/MineClone2/MineClone2/issues/2446 and https://git.minetest.land/MineClone2/MineClone2/issues/247#issuecomment-50960 but has a bug where carts will synchronize movements that I am still investigating 2024-06-15 14:08:29 +02:00
teknomunk
2a9aaa02af Change staticdata serialization (with migration from old data), disable debugging code used to investigate https://git.minetest.land/MineClone2/MineClone2/issues/2446 2024-06-15 14:08:29 +02:00
teknomunk
44514e0fad Change to vector.new from {x=...}, relocate movement code to own function for future changes 2024-06-15 14:08:29 +02:00
the-real-herowl
72435933e4 Add defensive check (#4437)
This fixes #4436 and possible other unnoticed crashes by adding a defensive check.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4437
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: the-real-herowl <wiktor_t-i@proton.me>
Co-committed-by: the-real-herowl <wiktor_t-i@proton.me>
2024-06-15 03:51:03 +02:00
teknomunk
beccbacc73 Fix Stalker texture generation (#4343)
This fixes stalker texture generation when the stalker is standing on a node that uses a texture using a texture modifier.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4343
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-06-01 20:23:38 +00:00
teknomunk
ecf12b85cc Fix undefined global warning for variable distance in spawning code (#4348)
Fixes the warning about an undeclared global that occurs the first time a mob attempts to spawn.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4348
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-31 09:54:59 +00:00
teknomunk
add9cbe3bc Fix mob spawner crash (#4337)
This fixes #4336 crash at login about mcl_mobspawners. Also adds an API call, `mcl_mobs.register_conversion` for converting one mob into another and updates rovers and stalkers to use this API call.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4337
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-30 08:29:12 +00:00
the-real-herowl
2bd24120e9 Stalker texture building fix (#4322)
Added a defensive check for stalker texture building.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4322
2024-05-25 11:57:05 +00:00
teknomunk
0a14a74860 Fix crash when converting endermen to rovers (#4318)
Fixes a crash that occurs when automatically converting endermen to rovers.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4318
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-24 10:32:19 +00:00
the-real-herowl
a499d292f8 Finish renames (#4314)
Fix crash caused by unfinished renaming in #4282

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4314
Co-authored-by: the-real-herowl <wiktor_t-i@proton.me>
Co-committed-by: the-real-herowl <wiktor_t-i@proton.me>
2024-05-22 19:18:10 +00:00
the-real-herowl
018814c362 Added a few mobitems
* one droppable from strays
* the rest will get their mobs in a later update
* added alternative ways to get the items
* added recipes for potions that use these items
2024-05-22 21:03:43 +02:00
the-real-herowl
651fb74be1 Fix a crash 2024-05-22 21:03:43 +02:00
the-real-herowl
664993ca75 Fixed mob drops not having proper description 2024-05-22 21:03:43 +02:00
the-real-herowl
d306260c7e Guardian fixes 2024-05-22 21:03:43 +02:00
the-real-herowl
747bf16a94 Migrated mobs to the new effects API 2024-05-22 21:03:43 +02:00
the-real-herowl
e36b7f413b Strays now use frost arrows 2024-05-22 21:03:43 +02:00
the-real-herowl
dc7b1869b7 Move most of the game to the new API 2024-05-22 21:03:43 +02:00
the-real-herowl
63b2da7aa0 Added on_save_effect support for mobs 2024-05-22 21:03:43 +02:00
the-real-herowl
914e3c6c2a Effects persist on loads for mobs too 2024-05-22 21:03:43 +02:00
the-real-herowl
7cd0cfede8 Further (mcl_)luck functionality
* XP from mob breeding impacted by luck
* eye of ender explosion chance impacted by luck
* fishing loot impacted by luck
* melee critical damage impacted by luck
* also fixed 2 scripts marked as "executable"
2024-05-22 21:02:25 +02:00
the-real-herowl
0c4094596e Improved haste and fatigue effects
* fixed a few crashes related to unusual effect levels
* added haste and fatigue combat functionality
* added some cleanup to avoid hangover unstackable items
* capped the slowdown from fatigue at 5 minutes digging time
* (despite the above, if a tool has a longer time set in definition,
	that still works)
* removed an unused "global" variable
2024-05-22 21:02:25 +02:00
the-real-herowl
456d205161 Added strength and weakness effects
* also highest effect level displayed in HUD set to 3000
* also improved indicating effects with strange factors in HUD
2024-05-22 21:02:25 +02:00
the-real-herowl
753545d714 Merge pull request 'Rover and Stalker' (#4282) from rover_stalker into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4282
2024-05-22 19:01:14 +00:00
the-real-herowl
48e6ffa935 Improved tool tooltips (#4306)
Co-authored-by: Araca <araca.prod@gmail.com>
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4306
2024-05-22 18:55:07 +00:00
teknomunk
0279dde3d0 Limit check to +/- 16 nodes from goal position (maximum 33 nodes, 3 map blocks) 2024-05-22 15:25:38 +00:00
teknomunk
2a014ca79c Change y range calculation to use outer zone distance and not middle to let mobs spawn far away from the player 2024-05-22 15:25:38 +00:00
teknomunk
1bc0a0b411 Implement a continuous distribution function using a piecewise linear function for selecting the distance from the player to spawn mobs with, fix crash when no nodes are found under air at the goal position 2024-05-22 15:25:38 +00:00
teknomunk
bd6c8d35c3 Change y_min/y_max calculations 2024-05-22 15:25:38 +00:00
teknomunk
3850fc1a9f Limit y range to the same hemisphere (top/bottom) 2024-05-22 15:25:38 +00:00
teknomunk
74cf14ef0f Close if statement 2024-05-22 15:25:38 +00:00
teknomunk
3a4a8799ea Change mob spawning randomization from polar coordinates to spherical coordinates, move position validation code from find_spawning_position to get_next_mob_spawn_pos, minimize code remaining in find_spawning_position 2024-05-22 15:25:38 +00:00
the-real-herowl
a3f6bc1a6f Rename the files 2024-05-22 14:26:18 +02:00
the-real-herowl
af13bd0635 Stalker may be overloaded, but never charged 2024-05-19 02:49:40 +02:00
the-real-herowl
18af03b99c Animated charged stalker aura 2024-05-12 07:14:28 +02:00
the-real-herowl
22b6c25458 Convert old mob to the new stalker 2024-05-12 06:47:00 +02:00
the-real-herowl
0dcf38094c Stalker rename (partial) 2024-05-12 06:21:37 +02:00
the-real-herowl
970f6cf377 Stalker model and mechanics implemented 2024-05-12 06:02:15 +02:00
the-real-herowl
4b83aaaa77 Renaming throughout docs and comments 2024-05-07 11:38:00 +00:00
the-real-herowl
d826a587da Compatibility conversion 2024-05-05 22:55:25 +02:00
teknomunk
d2a49799ae Change over internal name so that /spawn_mob works 2024-05-05 16:22:19 +00:00
the-real-herowl
a36c6481cb Going on with renaming the mob 2024-05-05 21:12:37 +02:00
the-real-herowl
1219b09851 Migrated enderman to the new visuals
Also made the node holding use vl_held_item
2024-05-05 19:10:18 +00:00
the-real-herowl
b9ec1a4611 Complete migration to vl_held_item 2024-05-05 19:10:18 +00:00
the-real-herowl
25321a5ac7 Move vl_node_entity to vl_held_item 2024-05-05 19:10:18 +00:00
teknomunk
2fc283a42a Create node entity 2024-05-05 19:10:18 +00:00
the-real-herowl
7d999535e7 Merge pull request 'Ghast fixes' (#4277) from ghast_fixes into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4277
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-05-03 12:57:32 +00:00
teknomunk
6756658ee9 Fix server crash when server restarts after a player dies but they didn't respawn (#4246)
Ensuring that tables storing player data are initialized before being used.

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4246
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-02 03:01:43 +00:00
the-real-herowl
4dde321a04 Ghast fireball fixes 2024-05-02 00:18:43 +02:00
Araca
cd0509c2e6 Fix crash with ghast achievement fireball_redir_serv (#4179)
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4179
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: Araca <araca.prod@gmail.com>
Co-committed-by: Araca <araca.prod@gmail.com>
2024-05-01 22:15:56 +00:00
teknomunk
0c372f987d Stop villagers from eating shulker boxes (#4266)
This modifies the logic for mobs picking up items to only match against the item's name and ignore any text in an items metadata.

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4266
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-01 15:44:14 +00:00
Bakawun
22c4daab22 fix walking and running animation for horse donkey and mule (#4053)
no more gliding horses

Co-authored-by: bakawun <bakawun@getnada.com>
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4053
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: Bakawun <bakawun@noreply.git.minetest.land>
Co-committed-by: Bakawun <bakawun@noreply.git.minetest.land>
2024-05-01 15:40:57 +00:00
Eliy21
f78ad93fd3 Make destroying boats with punch easier (#4159)
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4159
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: Eliy21 <eliy21@noreply.git.minetest.land>
Co-committed-by: Eliy21 <eliy21@noreply.git.minetest.land>
2024-04-30 14:24:24 +00:00
the-real-herowl
d321b166ea Merge pull request 'trading gives the player experience' (#4210) from nixnoxus/MineClone2:add-trading-xp into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4210
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
2024-04-30 10:47:17 +00:00
SOS-Games
4f37c1600f Able to see all mobs in the lookup help menu (#4186)
added a Mobs category that has pages for all mobs

Co-authored-by: SOS-Games <101518564+SOS-Games@users.noreply.github.com>
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4186
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: SOS-Games <gruberscomplete@gmail.com>
Co-committed-by: SOS-Games <gruberscomplete@gmail.com>
2024-04-21 08:16:15 +00:00
the-real-herowl
5e673b8fee Merge pull request 'Add partial item stack pickup' (#4193) from teknomunk/MineClone2:grouped-item-pickup into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4193
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-04-14 06:53:37 +00:00
the-real-herowl
b5b8d4f336 Merge pull request 'more piglin bartering items (and drop stack instead of single items)' (#4181) from nixnoxus/MineClone2:piglin-bartering into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4181
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-04-14 00:01:13 +00:00
nixnoxus
a86e8e2c8e fix strider breeding & increase riding speed (#4096)
- Striders follow `mcl_crimson:warped_fungus`
- Striders can be bred with `mcl_crimson:warped_fungus`
- Riding speed increased to 2 m/s
- Warning fixed

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4096
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: nixnoxus <nixnoxus@web.de>
Co-committed-by: nixnoxus <nixnoxus@web.de>
2024-04-13 23:38:46 +00:00
ancientmarinerdev
ac4aff12ea Enable custom biome check in spawning. This allows mods to overide the check in singlenode and other mapgens that do not support biome API. (#4217)
Some older mapgens do not support the MT biome API. Singlenode and I think v6 also. This allows mods to overide the biomecheck in mob spawning to return valid biomenames and customise this.

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4217
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: ancientmarinerdev <ancientmariner_dev@proton.me>
Co-committed-by: ancientmarinerdev <ancientmariner_dev@proton.me>
2024-04-01 15:40:14 +00:00
teknomunk
13ce4f9092 Additional cleanup, impelemnt partial item stack pickup 2024-03-31 02:32:24 +00:00
teknomunk
0a294c55a1 Move object pickup code to try_object_pickup(...) and refactor to remove most indentation for readability 2024-03-31 02:32:24 +00:00
the-real-herowl
89e8cf0213 Merge branch 'skeleton_sounds' 2024-03-24 06:38:35 +01:00
nixnoxus
08b41a3b39 accelerate non-moving carts on mcl_minecarts:golden_rail_on (#4097)
accelerate a non-moving minecart away from a solid opaque block the powered rail is facing

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4097
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: nixnoxus <nixnoxus@web.de>
Co-committed-by: nixnoxus <nixnoxus@web.de>
2024-03-24 05:29:44 +00:00
nixnoxus
9809c627dc trading gives the player experience 2024-03-09 15:06:38 +01:00
nixnoxus
497f1dcd80 drop stack instead of items 2024-02-05 00:24:27 +01:00
nixnoxus
01cace413f update bartering items 2024-02-05 00:11:22 +01:00
the-real-herowl
a8ad631864 Added ghast achievement and nerfed ghast
* ghast now attacks less frequently
* killing ghast with a ghast fireball now awards an achievement
2024-01-25 14:29:08 +01:00
the-real-herowl
1478960b7f Improved ghast combat
* ghast fireballs can now hit the shooter (used to just fly through)
* improved ghast aim
* increased ghast fireball lifetime
* mob projectile lifetime is now counted in seconds (was in ticks)
* improved variable naming
* improved default mob projectile deflecting (applies to ghast fireball)
2024-01-25 02:51:36 +00:00
the-real-herowl
f41990c1d0 Fixed ghast hitbox 2024-01-25 02:51:36 +00:00
Eliy21
aa4f8ba6cc Add medium size mob distinction in the cactus mob damage area reach code 2024-01-21 09:18:43 +00:00
Eliy21
d41d29be58 Add distinction between regular sized mobs and large mobs in the cactus mob damage area reach 2024-01-21 09:18:43 +00:00
Eliy21
434bb33f72 Add mob cactus damage logic to /mcl_mobs/physics.lua 2024-01-21 09:18:43 +00:00
emptyshore
8e103cf615 Mobs should not anger towards the player if damage is disabled. (#4114)
Co-authored-by: Mateusz Uzdowski <mateusz@silverstripe.com>
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4114
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: emptyshore <emptyshore@noreply.git.minetest.land>
Co-committed-by: emptyshore <emptyshore@noreply.git.minetest.land>
2024-01-21 05:37:54 +00:00
codiac
d3c591915f Fix light check and limit Y level for slime chunk spawn. (#4139)
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4139
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: codiac <codiac@inbox.lv>
Co-committed-by: codiac <codiac@inbox.lv>
2024-01-21 02:52:36 +00:00
the-real-herowl
3dafeb7505 Merge pull request 'Set all mob spawn chance weights according to mc now that weights are actually taken into account' (#4035) from Bakawun/MineClone2:mob_chance into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4035
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-01-20 04:00:13 +00:00
PrWalterB
899c45534f Adding occitan translation for CORE and ENTITIES 2024-01-20 04:28:46 +01:00
the-real-herowl
41c6773fd4 Merge pull request 'Spawning: fix random weighted choice' (#4025) from Bakawun/MineClone2:random_select into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4025
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-01-20 03:15:24 +00:00
the-real-herowl
27c3760da1 Merge pull request 'Ghast: align attributes with mc' (#4014) from Bakawun/MineClone2:ghast into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4014
2024-01-20 03:14:16 +00:00
bakawun
4d90dfab0e Spawning: add a comment to clarify what the random select is doing 2024-01-10 11:22:13 +01:00
bakawun
b2b63266b7 Spawning: break mob selection loop when out of bounds 2024-01-10 11:22:13 +01:00
bakawun
d151e79fb9 Spawning: remove unused summary_chance 2024-01-10 11:22:13 +01:00
bakawun
e419e6d63b Spawning: remove another unused perlin var 2024-01-10 11:22:13 +01:00
cora
55517154bd Mob spawning: Remove unused vars 2024-01-10 11:22:13 +01:00
bakawun
402e4e7b79 Spawning: fix random weighted choice 2024-01-10 11:22:13 +01:00
the-real-herowl
3c2247d7c8 Merge pull request 'mobs:piglin: use (alt) zombified piglin sounds' (#4083) from Bakawun/MineClone2:piglin_sounds into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4083
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-01-08 08:47:16 +00:00
the-real-herowl
324fd0dc4a Merge pull request 'Add missing Hoglin/Zoglin sounds' (#4082) from Bakawun/MineClone2:hoglin_sounds into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4082
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2024-01-08 08:45:33 +00:00
bakawun
cd033aa4ff mobs:zoglin:sounds: adress review comment 2024-01-08 09:30:12 +01:00
bakawun
1f3c7913dd mobs:piglin:sounds: adress review comment 2024-01-08 09:26:03 +01:00
bakawun
49aa32d2ee mobs:skeletons:sounds: fix code review issue and add todo 2024-01-08 09:16:05 +01:00
the-real-herowl
d11526f8e8 Merge pull request 'Finish PVP Combat Parity with the rest + PVP Tweaks' (#4078) from Eliy21/MineClone2:combat_fixes into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4078
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
2023-12-30 04:21:18 +00:00
the-real-herowl
a2a4da5aed Added shepherd functionality 2023-12-24 05:48:41 +01:00
the-real-herowl
dd7d56a385 Merge pull request 'br_pt_translation by JoseDouglas26' (#4095) from br_pt_translation into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4095
2023-12-23 20:31:49 +00:00
the-real-herowl
8071d0fbef Merge pull request 'Nerfed vexes and evokers' (#4076) from vex_evoker_fixes into master
Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/4076
2023-12-23 20:19:24 +00:00