minetest / minetest_game

Minetest Game - A lightweight and well-maintained base for modding [https://github.com/minetest/minetest/]
http://minetest.net/
Other
1.43k stars 578 forks source link

snappy nodes cant be dig with any tool in survival mode #2844

Closed AFCMS closed 2 years ago

AFCMS commented 3 years ago

I updated my mt version to 5.4 (my map was created with 5.3) and you can't break ANY snappy nodes with any tool (no more than with the hands)

AFCMS commented 3 years ago

After trying in a new map, it works, so why my "old" map didn't works?

Wuzzy2 commented 3 years ago

Maybe close this issue if it never happens again.

AFCMS commented 3 years ago

@Wuzzy2 It is really sad. After updating my personal server to mt 5.4, I didn't stop to have problems.

AFCMS commented 3 years ago

Is there any mods who can mess up these dig-groups?

AFCMS commented 3 years ago

Do you want my mod list?

sfan5 commented 3 years ago

To determine where the bug is it'd be useful to know:

For the first two you can use WorldEdit with: //lua print(dump(core.get_player_by_name("yourname"):get_wielded_item():get_tool_capabilities())) //lua print(dump(core.registered_nodes["name:here"].groups))

AFCMS commented 3 years ago

@sfan5 I cant dig leaves and papyrus with anything (hand, axe, pick) I will try the commands you give me when I got the time.

An0n3m0us commented 3 years ago

Hmm, must be a mod, because I tested this like so:

  1. Create a world in MT 5.3.0 and find papyrus
  2. Load the world in MT 5.4.0 and try to dig the papyrus; works.
  3. Load the world in MT 5.5.0-dev and try to dig the papyrus; works.

So it seems completely fine to me.

AFCMS commented 3 years ago

Hmm, must be a mod, because I tested this like so:

1. Create a world in MT 5.3.0 and find papyrus

2. Load the world in MT 5.4.0 and try to dig the papyrus; works.

3. Load the world in MT 5.5.0-dev and try to dig the papyrus; works.

So it seems completely fine to me.

Do you want the list of my 180 mods? It is strange as I only update mt, not mods and it works fine with mt 5.3

An0n3m0us commented 3 years ago

Check if any of them modify/build upon the papyrus node or something. Hmm, you said all snappy nodes; that is odd.

Have you tried to run the world without all of those mods? Maybe create a backup, then try it.

AFCMS commented 3 years ago

~Check if any of them modify/build upon the papyrus node or something.~ Hmm, you said all snappy nodes; that is odd.

Have you tried to run the world without all of those mods? Maybe create a backup, then try it.

Will try Sunday.

AFCMS commented 3 years ago

@An0n3m0us I test loading the world with no mods, and I was able to dig snappy nodes, but the question is what change breaks some mods with mt 5.4? Cant find any thing in https://dev.minetest.net/Changelog.

AFCMS commented 3 years ago

image

My mod list.

AFCMS commented 3 years ago

here is the override_item function in the mods: antigrief/init.lua:local old_override_item = minetest.override_item antigrief/init.lua:minetest.override_item = function ( name, def ) anvil/init.lua: minetest.override_item(item_name, {groups = item_def.groups}) boanemeal/init.lua:minetest.override_item("default:dirt", { boost_cart-c6b9e4b6723bdd02a5982cf7c29d875e664949aa/rails.lua: minetest.override_item("moreores:copper_rail", { digistuff/channelcopier.lua: minetest.override_item(name,{_digistuff_channelcopier_fieldname = field}) farming/compatibility.lua:minetest.override_item("default:apple", { farming/compatibility.lua:minetest.override_item("flowers:mushroom_brown", { farming_flood/init.lua: minetest.override_item(name, { farming/grass.lua: minetest.override_item("default:grass_" .. i, { farming/grass.lua: minetest.override_item("default:dry_grass_" .. i, { farming/grass.lua:minetest.override_item("default:junglegrass", { farming/hoes.lua:minetest.override_item("farming:hoe_wood", { farming/hoes.lua:minetest.override_item("farming:hoe_stone", { farming/hoes.lua:minetest.override_item("farming:hoe_steel", { farming/hoes.lua:minetest.override_item("farming:hoe_bronze", { farming/hoes.lua:minetest.override_item("farming:hoe_mese", { farming/hoes.lua:minetest.override_item("farming:hoe_diamond", { farming/hoes.lua: minetest.override_item("moreores:hoe_silver", { farming/hoes.lua: minetest.override_item("moreores:hoe_mithril", { farming/init.lua: minetest.override_item(node_name, formspecs/init.lua:local old_override_item = minetest.override_item formspecs/init.lua:minetest.override_item = function ( name, def ) formspecs/samples.lua:minetest.override_item( "nyancat:nyancat", { mapserver_mod/bones.lua:minetest.override_item("bones:bones", { metrosigns/customsigns.lua: minetest.override_item("signs_road:metrosigns_text_"..width_descrip, { light_source = 5 }) metrosigns/customsigns.lua: minetest.override_item( metrosigns/machine.lua: minetest.override_item( mobs_monster/dungeon_master.lua:--minetest.override_item("default:obsidian", {on_blast = function() end}) mobs_monster/lava_flan.lua:minetest.override_item("mobs:pick_lava", { nether/init.lua:minetest.override_item("default:mese_crystal_fragment", { pipeworks/compat-chests.lua:minetest.override_item("default:chest", override) pipeworks/compat-chests.lua:minetest.override_item("default:chest_open", override_open) pipeworks/compat-chests.lua:minetest.override_item("default:chest_locked", override_protected) pipeworks/compat-chests.lua:minetest.override_item("default:chest_locked_open", override_protected_open) rangedweapons/init.lua:minetest.override_item('default:clay_brick', { superpick/init.lua: minetest.override_item(node, { technic_cnc_improve/cnc.lua:minetest.override_item("technic:cnc", { technic_cnc_improve/cnc.lua:minetest.override_item("technic:cnc_active", { toolranks_extras/hoe.lua: minetest.override_item(name, { travelnet/doors.lua: minetest.override_item( node_base_name.."_closed", { mesecons = mesecons }) travelnet/doors.lua: minetest.override_item( node_base_name.."_open", { mesecons = mesecons })

AFCMS commented 3 years ago

//lua print(dump(core.get_player_by_name("yourname"):get_wielded_item():get_tool_capabilities()))

got this for a sword: { ["max_drop_level"] = 1,["groupcaps"] = { } ,["damage_groups"] = { ["fleshy"] = 15,} ,["full_punch_interval"] = 0.5,["punch_attack_uses"] = 0,}

I got this for a grass plant (included in mtg): { ["not_in_creative_inventory"] = 1,["flora"] = 1,["grass"] = 1,["snappy"] = 3,["attached_node"] = 1,["flammable"] = 1,}

AFCMS commented 3 years ago
* Are you unable to dig the node entirely or does it reappear after digging?

Totally unable to dig.

sfan5 commented 3 years ago

Here's how the toolcaps of a sword are supposed to look like:

{
    max_drop_level = 1,
    groupcaps = {snappy = {
        times = {2.5,1.2,0.35},
        uses = 30,
        maxlevel = 2
    }},
    damage_groups = {fleshy = 6},
    full_punch_interval = 0.8,
    punch_attack_uses = 90
}

So some mod must be messing with predefined tool capabilities.

AFCMS commented 3 years ago

@sfan5 Which functions can mess tool capabilities? minetest.overide_item() and item:set_tool_capabilities() right?

sfan5 commented 3 years ago

Yes.

AFCMS commented 3 years ago

ok will check in the mods soon