Commit Graph

183 Commits

Author SHA1 Message Date
Lizzy Fleckenstein a4e73886d5
Rework XP API 2021-11-03 19:36:57 +01:00
Nils Dagsson Moskopp 256de2bc36 Log warning for non-serializable item entity fix 2021-09-15 18:10:40 +02:00
sfan5 693a5317ef Fix non-serializable item entity unload crash
Some items, like shulkers or books, can have so much metadata that the
corresponding item entity can not be serialized by the Minetest engine.

Without this patch, dropping such an item and then moving away crashes
Minetest, as it can not serialize the entity with serializeString16()
when unloading a map block.

The patch resets the overlong metadata of non-serializable item entities.
This avoids a crash and makes it possible to retrieve a “sanitized” item
without metadata when the mapblock containing the item entity is reloaded.

Originally sfan5 guessed the maximum possible item entity serialization size
that would not lead to a crash as 65530 bytes, but anon5 calculated it to be
actually 65487 bytes. This has been experimentally verified by erlehmann.
2021-09-15 18:10:32 +02:00
NO11 dc8436fdf9 Destroy objects near cactus faster (make it possible to throw items at a cactus) 2021-09-06 14:34:25 +00:00
AFCMS cd33d406b2 fix many codestyle issues (functions, strings, modpaths) 2021-05-29 16:12:33 +02:00
AFCMS 3bedc81068 fix some code style issues in lightning 2021-05-28 00:07:06 +02:00
AFCMS 9e074af07f unify code style [1] 2021-05-25 12:52:25 +02:00
AFCMS fddaacdeae [mcl_item_entity] fix warnings 2021-05-25 00:43:42 +02:00
Lizzy Fleckenstein 75d9450002 Make compasses point upwards when dropped as an item 2021-05-04 10:24:08 +02:00
Lizzy Fleckenstein 3b3d67a99c Make clocks work when dropped 2021-05-04 09:16:42 +02:00
jordan4ibanez 90fd65ac66 Fix locationless playing 2021-04-03 21:09:43 -04:00
jordan4ibanez 1b511936f5 Fix local name memory leak 2021-04-03 21:05:31 -04:00
jordan4ibanez a807ee6372 Adjust the volume even more to perfectly match the gameplay 2021-04-03 20:55:46 -04:00
jordan4ibanez 0641f09915 Adjust volume of item collection sound 2021-04-03 20:53:34 -04:00
jordan4ibanez c572db92aa Add sound buffer and different item collection sound 2021-04-03 20:39:08 -04:00
jordan4ibanez 844db8aa7b Revert to previous style of interpolated move_to with tweaks 2021-04-02 22:02:19 -04:00
jordan4ibanez 0840ad98a2 Adjust the item collection magnet even more 2021-04-02 21:57:38 -04:00
jordan4ibanez 1cbd3a998d Use manual move_to to account for move_to interpolation issues 2021-04-02 21:50:47 -04:00
jordan4ibanez 61e812e40a Add in manual interpolation into the item magnet 2021-04-02 21:40:04 -04:00
jordan4ibanez 18d7be4a4f More fixes to item collection on laggy servers 2021-04-03 00:42:20 -04:00
jordan4ibanez 1e3676c391 Remove debug info from item magnet 2021-04-02 05:38:53 +00:00
jordan4ibanez 2f272b3dff Fix item drop on laggy servers 2021-04-01 23:48:00 -04:00
AFCMS c7389dc0a4 add basic API to mcl_item_entity 2021-03-28 08:13:24 +02:00
Elias Åström 1873080046 Remove unnecessary code in mcl_item_entity 2021-03-20 14:21:50 +01:00
Elias Åström bfe51316ee Merge branch 'mcl_autogroups' 2021-03-18 13:43:58 +01:00
Elias Åström cff0130506 Rename _mcl_autogroup_groupcaps to _mcl_diggroups 2021-03-18 11:35:40 +01:00
Elias Åström e77473e800 Make changes to the mcl_autogroup API
Group levels are now specified as a list of names when registering a
digging group.  Digging groups which do not have specified levels will
support tools having two levels, 0 and 1 where 0 means the tool can dig
but not harvest the node and 1 means it can also harvest the node.  If
more levels are required one has to specifiy them when registering the
digging group.
2021-03-18 11:35:40 +01:00
Elias Åström fb6f5eae7a Rewrite mcl_autogroup
These changes are primarly made to make mcl_autogroup more efficient.
Previously enchanted tools required storing around 21 kB of metadata due
to the way the previous version of the mod was implemented.  This caused
a lot of lag and a huge amount of network traffic.  With the changes
enchanted tools won't require more than 1 kB of metadata.

The mod is also rewritten to use an API to register digging groups and
compute the groupcaps for tools.  This will make it easier for modders
to register custom digging groups.

The mod is now split up into two parts.  One part called "mcl_autogroup"
to implement the API for registering custom digging groups, and the
other part called "_mcl_autogroup" which contains most of the code which
has to be loaded after most mods.
2021-03-18 11:32:18 +01:00
AFCMS 6645c4cb30 Really 2021-03-16 17:43:32 +01:00
AFCMS 5d17a6b699 fix SO MANY pairs/ipairs 2021-03-16 17:35:46 +01:00
Lizzy Fleckenstein d57db0444f Use mod.conf in all mods, part 1 2021-03-04 15:22:14 +01:00
Lizzy Fleckenstein a9bdb7b509 Fix #969 2021-01-08 14:55:02 +01:00
Lizzy Fleckenstein 8b92d795d2 Fix #960 2021-01-05 18:05:20 +01:00
Lizzy Fleckenstein e7721b91a0 Fix #959 2021-01-05 17:35:06 +01:00
Lizzy Fleckenstein 8ef14dd81f Fix #872 2021-01-05 17:23:24 +01:00
Lizzy Fleckenstein c36dc16527 Fix #948 2021-01-04 10:15:28 +01:00
Lizzy Fleckenstein 84708c3870 Merge branch 'master' of https://git.minetest.land/Wuzzy/MineClone2 2021-01-02 10:58:02 +01:00
MysticTempest b56ae38939 Make lava/fire wait 2 seconds before destroying items to allow chance for pickup, fix dogs following when sitting, and add some rotation so mobs don't idle at cliffs. 2020-12-22 08:29:24 -06:00
Lizzy Fleckenstein 977489de04 Fixed efficiency drops 2020-12-18 17:33:02 +01:00
Lizzy Fleckenstein 86b2cd70f9 Fortune 2020-11-06 13:46:52 +01:00
Lizzy Fleckenstein 7c28bf8507 Silk Touch 2020-11-02 19:09:23 +01:00
kay27 30d9e54803 Implement leftovers of Wuzzy/MineClone2#841 (comment) 2020-10-24 02:46:45 +04:00
kay27 a127136c60 Add Enchanting from Crafter-minetest by Oil_boi 2020-10-19 16:38:21 +04:00
Wuzzy e361b35724 Fix crash delete item entity with empty itemstring 2020-08-29 10:57:33 +02:00
Wuzzy c106a62979 Use minetest.is_creative_enabled 2020-07-10 16:45:40 +02:00
Wuzzy a2785041dd Remove mod startup debug messages 2020-04-11 02:56:46 +02:00
Wuzzy 71c9d20fff Use larger wield scale for tools 2020-04-08 04:07:16 +02:00
Wuzzy c5e4ec5e27 Use ephemeral sounds 2020-04-07 00:55:45 +02:00
Wuzzy f2b7392a30 Use "minetest" instead of "core" table 2020-01-06 13:02:30 +01:00
Wuzzy 2e9efe51e8 Tweak drop behavior of ocean plants 2019-12-18 03:10:49 +01:00
Wuzzy 7f70acc8a4 Make dropped items glow if light source node 2019-12-14 17:40:24 +01:00
Wuzzy 1cbee9de18 Fix item entity force-out bias to positive dir 2019-08-27 13:08:54 +02:00
Wuzzy 2203d0df53 Revert "Make item entities a bit more efficient"
This reverts commit ba97dfd02f because it broke item entities.
2019-04-01 10:59:36 +02:00
Oil_boi ba97dfd02f Make item entities a bit more efficient 2019-03-26 10:23:52 +01:00
Wuzzy 6188d7b528 Fix other boolean settings default fails 2019-03-25 12:42:37 +01:00
Wuzzy 66c6b373a5 Make many entities non-pointable 2019-03-07 03:53:06 +01:00
Wuzzy 2f74aea6f5 Replace deprecated functions 2019-03-06 04:38:57 +01:00
Wuzzy a711c7bdb7 handle_node_drops no longer destroys metadata 2019-03-01 17:30:21 +01:00
Wuzzy 0586c0ea18 Destroy items in fire 2019-02-01 08:31:17 +01:00
Wuzzy e789801662 Replace getpos() with get_pos() 2019-02-01 06:33:07 +01:00
Wuzzy a88f644001 Update deprecated settings syntax 2018-06-20 19:02:52 +02:00
Wuzzy f022b747b0 Harden a number of minetest.after player checks 2018-06-03 16:44:37 +02:00
Wuzzy d5729b8a32 Fix load-crash if _magnet_timer of item entity is uninizialized 2018-05-31 14:34:19 +02:00
Wuzzy bb6f2f7770 Rename “subgame” to “game” (partial fix) 2018-03-25 22:20:32 +02:00
Wuzzy 1fa141d972 Custom node drops now ignore Creative Mode 2018-03-05 13:35:14 +01:00
Bu-Gee 3ae8119498 Fix crash when pushing pumpkin by piston 2018-03-05 12:53:16 +01:00
Wuzzy 312652552e Delete un-initialized item entities on first step
Due to data corruption, item entities in a world may be loaded with
empty staticdata. These items are now deleted on their first on_step.
This commit also should fix all dropped hand bugs.
2017-12-01 18:50:15 +01:00
Wuzzy aaef558909 Convert all sounds (except music) to mono 2017-11-13 01:24:24 +01:00
Wuzzy 559e3d68bc Simplify item merge code 2017-09-05 19:17:40 +02:00
Wuzzy 861174dc32 (Hopefully) fix hand rarely dropping as item 2017-09-05 17:25:15 +02:00
Wuzzy f95bf371d2 Refine hand error logging 2017-09-02 19:00:04 +02:00
Wuzzy ae74eb3b33 Print error message when player picked up hand
This is __builtin:item with itemstring == "" and should never happen
2017-09-02 18:57:37 +02:00
Wuzzy e5a34367c9 Use new Minetest settings API syntax for most mods 2017-08-09 16:17:00 +02:00
Wuzzy 54fb702c8f Shears selfdrop dead bush, tall grass, fern, vine, leaves 2017-08-03 02:27:55 +02:00
Wuzzy 627d103b20 Don't drop when node dug by too weak tool 2017-08-03 01:01:44 +02:00
Wuzzy 7b16b74903 Fix bad mcl_ default settings 2017-06-13 17:08:45 +02:00
Wuzzy 53791c4f9d Fix item speed not reset when magnet activates
This fixes items sometimes flying upwards when near the player
2017-06-10 21:39:26 +02:00
Wuzzy 5d1c38cb5f Reduce excessive item pickup sound distance 2017-06-10 21:36:39 +02:00
Wuzzy 8cad041c89 Disable item magnet correctly 2017-06-10 21:10:15 +02:00
Wuzzy 817def7d81 Enable item physics right when out of magnet range 2017-06-10 21:08:02 +02:00
Wuzzy b153104d24 Fix item flying after moving out of liquid 2017-06-10 20:56:53 +02:00
Wuzzy 1a7b455fd2 Fix item entity wiggle on flowing water 2017-06-10 20:47:12 +02:00
Wuzzy be5d1c08db Refactor item entity physics code 2017-06-10 20:37:17 +02:00
Wuzzy a589cbc17a Fix global variable bug in mcl_item_entity 2017-06-10 17:23:14 +02:00
Wuzzy b2b196bccd Rename setting name 2017-06-09 14:11:16 +02:00
Wuzzy 5d5743939f Add tile drops setting 2017-06-09 14:05:58 +02:00
Wuzzy 76f9ba70df Don't collect item too early 2017-06-03 17:36:43 +02:00
Wuzzy b8df2d4e0a Revert "Reduce collection distance"
This reverts commit f44dffd374.
2017-06-03 17:27:58 +02:00
Wuzzy f44dffd374 Reduce collection distance 2017-06-03 17:24:47 +02:00
Wuzzy dcc6e3e829 Fix items sometimes flying away after creation 2017-06-03 17:03:22 +02:00
Wuzzy 750ef024d9 Small precision tweaks for item entities 2017-06-01 17:44:25 +02:00
Wuzzy 8994468c5c Enable _insta_collect by default in item entities 2017-05-30 18:16:36 +02:00
Wuzzy 7b075f5772 Fix crash after item hit unloaded chunk 2017-05-30 13:59:26 +02:00
Wuzzy 64c91afa4a Re-enable item physic after player follow failed 2017-05-30 06:00:26 +02:00
Wuzzy 467baaf67c Fix broken item safety code 2017-05-30 05:51:48 +02:00
Wuzzy 1c2825ce6c Final fix-ups for push-item-out code 2017-05-30 00:58:14 +02:00
Wuzzy f0b9799dee More item refactor 2017-05-29 23:31:41 +02:00
Wuzzy 4fd6e527a1 Disable physics when items are stuck 2017-05-29 23:20:29 +02:00
Wuzzy 4ff31ffa8c Add missing break in mcl_item_entities 2017-05-29 22:56:53 +02:00
Wuzzy 0b28ae2fe9 Push items out of solid opaque nodes 2017-05-29 22:51:13 +02:00