Commit Graph

265 Commits

Author SHA1 Message Date
Lars Müller 6daf3871e7
Backport PUC Lua 5.4's string.{pack,unpack,packsize} 2025-12-08 23:19:24 +01:00
Lars Müller d30113a70a
Add `/lua` chatcommand to devtest (#16656)
singleplayer-only for security reasons, just in case someone is exposing a devtest server...
2025-11-27 11:27:01 +01:00
Lars Müller 7331156650
Fix interpolating to identity bone overrides (#16609)
The previous code immediately dropped identity overrides, even if there still was an interpolation to be done.
Also a little bit of cleanup, and setting an appropriate identity default for the scale property when interpolating.

For modders: As a workaround, you can add a tiny offset so that overrides aren't identity overrides.
2025-10-29 10:25:50 +01:00
cx384 93ccb4b355
Add inventory image animation API (#16538) 2025-10-26 18:48:53 +01:00
cx384 ff15b413b0 Don't use bilinear/trilinear filter on small overlay if large base texture 2025-10-25 17:33:56 +02:00
cx384 f205f6f539
Fix meta tool capabilities regression (#16563)
This also adds a unittest to avoid issues in the future.
2025-10-11 19:38:21 +02:00
sfan5 c2e2b97944
Respect node alpha node for inventory drawing (#16556) 2025-10-11 19:37:30 +02:00
sfan5 5b5b4b3eff Verify sandbox a bit in an unit test 2025-10-09 11:42:57 +02:00
sfan5 5672b93007 Separate ephemeral from client caching in core.dynamic_add_media() 2025-09-06 11:44:52 +02:00
y5nw f390137d6e
Add API to cancel async jobs (#14602)
* Implement API to cancel async jobs

Co-authored-by: sfan5 <sfan5@live.de>

* update AsyncJob:cancel documentation from review

* Use IPC to unblock async

* review

* review async unblocking

* review

* Apply suggestions from code review

Co-authored-by: sfan5 <sfan5@live.de>

* minor licensing

---------

Co-authored-by: y5nw <y5nw@protonmail.com>
Co-authored-by: sfan5 <sfan5@live.de>
2025-08-26 12:40:31 +02:00
Lars Mueller 550b042076 Make bone interpolation work again 2025-08-24 19:01:35 +02:00
sfan5 fd3588d49c Give more infos to on_timer() callback
closes #15817
2025-08-14 12:33:35 +02:00
sfence 4f42b4308c
Add persistent unique identifiers for objects (#14135) 2025-07-09 10:40:26 +02:00
sfan5 fd0ca20ce9
Add core.get_mapgen_chunksize() (#16289) 2025-06-29 17:19:40 +02:00
sfan5 8eceabd812
Make `core.get_node_raw` a public API (#16265)
Co-authored-by: Erich Schubert <erich.schubert@tu-dortmund.de>
2025-06-25 15:05:22 +02:00
Lars Müller fde6384a09
Fix and clean up skeletal animation (#15722)
* Fix attachments lagging behind their parents (#14818)
* Fix animation blending (#14817)
* Bring back cool guy as another .x smoke test
* Add .x mesh loader unittest
* Do bounding box & matrix calculation at proper point in time
* Remove obsolete `SAnimatedMesh`
2025-06-01 23:21:35 +02:00
sfan5 ec16fb33d0 Add unit tests for Lua vector reading 2025-05-28 13:29:30 +02:00
Lars Müller d96f5e1c76
MetaDataRef: Make `set_float` preserve numbers exactly (#16090) 2025-05-02 21:27:00 +02:00
sfence 0d414c44da
Add testeditor to devtest for easier testing. (#15206)
* Add testeditor to devtest for easier testing.

Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
2025-04-25 05:09:23 +02:00
Vincent Robinson fd85737460
Add `allow_close[]` element to formspecs (#15971) 2025-04-16 16:20:39 -07:00
SmallJoker 23d0fb2d3f
builtin: Return 'obj' from 'core.item_drop' (#15880)
This also includes a minor bugfix where 'itemstack' was cleared
even if the object placement failed.
2025-03-11 20:00:35 +01:00
sfan5 afb15978d9
Clean up and compress some pre-join packets (#15881) 2025-03-11 20:00:07 +01:00
sfan5 47c000a293 Add unittest that lints builtin JSON files 2025-03-04 19:53:01 +01:00
sfan5 8449f5f6db Make devtest grass use overlay tiles 2025-03-04 19:53:01 +01:00
sfan5 27bbe3a873 CAO 'node' visual (#15683) 2025-02-22 16:19:04 +01:00
Andrii Nemchenko e51221d247
Implement metadata-aware version of InvRef:remove_item() (#15771) 2025-02-22 16:18:48 +01:00
ROllerozxa dd0070a6b8
Expose client version information in non-debug builds (#15708)
Co-authored-by: SmallJoker <SmallJoker@users.noreply.github.com>
Co-authored-by: Lars Mueller <appgurulars@gmx.de>
Co-authored-by: sfan5 <sfan5@live.de>
2025-02-09 18:09:07 +01:00
SFENCE af3f696423 Code style fixes. 2025-01-21 16:29:12 +01:00
cx384 1427a98c59 Optimize png files 2025-01-12 16:15:01 +01:00
Lars Müller 7f1316236b
Silence failing raycast unit test (#15644)
The cause for the test failure is an edge case bug
in the raycast implementation (perfectly diagonal raycasts).

This is fixed by switching to a continuous random distribution
which makes it extremely unlikely that the buggy edge case occurs.

Additionally, devtest unit test failures now print their random seed
to be easier to reproduce in the future.
2025-01-08 10:56:05 +01:00
Lars Müller f467bde6ac
Add unit test for raycasts falsely skipping nodes (#15555) 2025-01-05 16:32:09 +01:00
Lars Müller b087e2554f
Add glTF STEP interpolation support (#15525) 2024-12-24 15:25:07 +01:00
Lars Müller a37bdbf8b7
Restore `.x` models to working state (#15550)
* Add "lava flan" (.x model) smoke test

* Fix double finalize in `.x` mesh loader

* Use reserve instead of resize again

The weights are added indirectly via `AnimatedMesh->addWeight`
2024-12-18 20:29:35 +01:00
cx384 c7fe2ee5c9
Add `core.spawn_tree_on_vmanip` (#15415)
This function works like `core.spawn_tree`, but spawns an L-system tree onto a VoxelManip object instead on the map.
2024-12-08 20:27:22 +01:00
Lars Müller 138052adfc
Add particle blend mode "clip" (#15444)
This lets modders avoid alpha blending rendering bugs as well as potential (future) performance issues.
The appropriate blend modes are also used for node dig particles.

---------

Co-authored-by: sfan5 <sfan5@live.de>
2024-11-19 13:30:17 +01:00
cx384 44b261d136
Luacheck: add VoxelManip to globals 2024-11-12 10:53:04 +01:00
Lars Müller 88c7a54e08
Rename `minetest.*` to `core.*` in devtest 2024-10-28 15:57:54 +01:00
Wuzzy 4deb5b999c
DevTest: Change "Minetest" to "DevTest" (#15326) 2024-10-26 17:40:29 +02:00
Lars Mueller e2ea359925 JSON: Support consistent larger max. depth of 1024 2024-10-15 12:19:49 +02:00
Lars Mueller 4c419c4020 Improve `minetest.parse_json`
Let modders handle parsing errors, get rid of two unnecessary copies.
2024-10-15 12:19:49 +02:00
Lars Müller c7938ce81c
Improve glTF logging (#15274)
Also removes all animations but the first one from gltf_frog.gltf
to address the corresponding warning.

Catches some more possible exceptions (out of bounds, optional access)
which might be caused by a broken model to properly log them.
2024-10-15 12:19:19 +02:00
cx384 ecf8488406 Fix HUD inventory direction position 2024-10-13 18:40:29 +02:00
y5nw e3aa79cffb
Gettext and plural support for client-side translations (#14726)
---------

Co-authored-by: Ekdohibs <nathanael.courant@laposte.net>
Co-authored-by: y5nw <y5nw@protonmail.com>
Co-authored-by: rubenwardy <rw@rubenwardy.com>
2024-10-13 11:29:08 +02:00
sfan5 cbc741f464 Various improvements to push_json_value 2024-10-13 10:57:25 +02:00
sfan5 d2b4c27f21 Implement minetest.ipc_poll() 2024-10-11 12:00:59 +02:00
sfan5 72801d0233 Implement minetest.ipc_cas() 2024-10-11 12:00:59 +02:00
sfan5 f1a436619f Add generic IPC mechanism between Lua envs 2024-10-11 12:00:59 +02:00
Lars Mueller 06907aa99b Support floating-point animation frame numbers 2024-10-10 21:39:57 +02:00
Lars Mueller 323fc0a798 Add glTF animation support 2024-10-10 21:39:57 +02:00
Lars Mueller 521e678d39 Add binary glTF (.glb) support 2024-10-10 21:02:05 +02:00