teknomunk
|
74de26b3c8
|
Fix pulling partial stacks from double chests
|
2025-01-20 18:42:40 +01:00 |
|
the-real-herowl
|
7456eba0f5
|
Merge pull request 'Update playerphysics to 1.1.0 (upstream mod changes)' (#4836) from playerphysics_upstream into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4836
Reviewed-by: kno10 <kno10@noreply.git.minetest.land>
|
2025-01-20 18:41:22 +01:00 |
|
Wuzzy
|
4eafc06531
|
playerphysics: Version 1.1.0
|
2025-01-20 18:41:22 +01:00 |
|
the-real-herowl
|
62efc371a1
|
Merge pull request 'mcl_mobs spawning cleanup and performance optimization' (#4468) from mcl_mobs_cleanup into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4468
Reviewed-by: kno10 <kno10@noreply.git.minetest.land>
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
9474da5e75
|
Fix crash
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
e5279a2723
|
Rework fixed_timestep() to be more accurate and remove maximum spawn cycle time
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
ed5a08ba36
|
Rework build_state_for_position so that more cases will return early and avoid computations and a table allocation, replace find_spawning_position() with get_next_spawning_position(), add (commented out) notes for tracking which cases lead to mobs not spawning to help guide optimization
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
94da5fe813
|
Replace minetest. with core., fix percentage calculation
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
f59beb9961
|
Address review comments
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
60d6d252b1
|
Further optimizations: pairs() -> for i=, remove most mcl_log() calls, remove unused parameter in mob_cap_space()
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
85155f8cd5
|
Convert state hash to number from string, exclude core.add_entity() time from profiling
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
23c04a6735
|
Add per-spawn-attempt timing calculation
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
29717808cd
|
Add built-in mob spawn profiling
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
8cabee0621
|
Localize minetest.get_node()
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
ce993654f3
|
Finish converting to use localized version of math.* functions
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
e37c8a9530
|
Fix rebase
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
8f0fdfe03a
|
Move registered_entity[] check to spawn registration, use localized math.* functions, fix typo, add error messages to asserts in spawn registration
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
43321083f7
|
Remove redundant room check
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
57f3ad4fd7
|
Change state serialization to use table.concat() with a persistent workspace table
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
9a34c124c1
|
Only create biomes_lookup if one wasn't provided in the definition
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
3a54c67c4c
|
Remove unused table.find(), add comment on fallthru, fix typo in log message, switch to using mcl_log for two log messages, set guardians to no biomes (structures only)
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
374db5ad24
|
Add seethru node list support to mcl_mobs.check_line_of_sight
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
299c209b60
|
Fix lava spawns
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
f4e2275ae1
|
Remove development logging, correct luacheck findings
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
5844dcfff9
|
Rewrite mcl_mobs:spawn_specific() in terms of mcl_mobs:spawn_setup() and mark as deprecated, cleanup mcl_mobs:spawn_setup(), compute cumulative chance once when the spawn list is created instead of every time a spawn is attempted
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
886098e5f4
|
Remove comment superceded by type annotations, give explicit values for mcl_mobs.SpawnDef.dimension
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
09eb6bde1e
|
Fix crashes in generating state serialization, make adaptive spawn attempt rate actually work
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
2626a475ee
|
Redo guardian spawn registration (copy biomes from glow squid)
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
8957bf300c
|
Make sure all parameters to spawn_specific() get stored in the spawn definition, change select_random_mob_def() to remove possible error() call
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
b568a5cc49
|
Fix rebase missing moving a function to new mcl_util/table.lua
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
9aade4034f
|
Add lava conditions
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
b4cd5fe37c
|
Add biome_lookup table to SpawnDef, type annotation for mcl_mobs.SpawnDef class
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
511434a923
|
Replace compute_hash with a string.format(), move spawn_names into logging block, remove argument aliasing in get_spawn_list(), add SpawnState type annotation
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
bc5e5f7262
|
Inline most spawn definition fields, remove table.insert()
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
0b07f449da
|
Resolve linter warnings, replace get_item_group with groups.* lookups
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
ee386080eb
|
Optimize table.intersect
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
e4b5673642
|
Resolve some review comments
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
35fafc9928
|
Resolve several lua-language-server findings, add missing get_item_group, remove spawn_def usage (didn't exist where attempted to be used)
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
add61ad6b2
|
Change main spawning look to use adaptive delay based on last run with maximum period of 2.5 seconds, put some logging behind a flag, remove unused constants
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
8b13b36a6a
|
Move raycast_line_of_sight function to mcl_mobs/functions.lua, rework group spawn point selection code, add line of sight check to group origin
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
8c42694ac9
|
Change logging default and one log message
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
78aa99eacd
|
Refactor spawn_group() so that each spawn point can only be used once and protection is respected
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
97a674e8c9
|
Fix passive spawning, disable some debug logging
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
28a058f8b7
|
Stop mobs that require ground from spawning in water, remove unused code and variables, some minor microoptimizations
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
61c9f9eade
|
Drop biome group generation and replace with spawn state checks for much improved performance (but has regressions), change logging of failure to find spawn point, increase spawn attempts to 4 per second with no position retries and only a single mob or group per attempt
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
8af26e2e75
|
Replace biome_check() with table.find()
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
b636a2e831
|
Implement generating biome groups for spawning (not actually used yet)
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
bd7c926aaf
|
Move table.* functions to separate file in mcl_utils, add table.find() and table.intersect()
|
2025-01-20 18:37:09 +01:00 |
|
teknomunk
|
0cb2ef8957
|
Initial changes to spawn_check() and spawn_a_mob(), add profiling for mob spawning
|
2025-01-20 18:37:09 +01:00 |
|
kno10
|
e24677bcf1
|
mcl_portals cleanups (#4858)
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4858
Reviewed-by: Mikita Wiśniewski <rudzik8@protonmail.com>
Co-authored-by: kno10 <erich.schubert@gmail.com>
Co-committed-by: kno10 <erich.schubert@gmail.com>
|
2025-01-20 18:36:27 +01:00 |
|