Skip to content

Conversation

@mruncreative
Copy link
Contributor

Fixes #699
Registers mvps stoppers for all door and bed nodes registered using beds, mcl_beds, doors, mcl_doors mods.
In mtg trapdoors have the group door and need to be obtained through the api while beds don't have a registered_beds and need to be detected by their group.
In mcl_doors, doors and trapdoors have separate groups and no mcl_doors.registered_doors table.
The wooden trapdoor was not an mvps stopper, so I removed the other trapdoors from being mvps stoppers for no reason.

@mruncreative
Copy link
Contributor Author

The checks fail because I used core instead of minetest somewhere and it's not specified as global to luacheck.

@mruncreative
Copy link
Contributor Author

I have moved mesecons_doors to gamecompat.
Reasoning:

  1. Gamecompat already does compatibility with doors.
  2. Mesecons Doors provides no API
  3. Mesecons Doors is a subpackage of Mesecons while having a hard dependency on doors
  4. Point 3 makes Mesecons harder to enable outside of mtg
  5. Point 3 makes Mesecons be listed as incompatible with non-MTG games on ContentDB

@mruncreative mruncreative changed the title Fix mesecons_gamecompat mvps hardcoding issues Fix mesecons_gamecompat mvps hardcoding issues and increased game compatibility Jan 29, 2025
@SmallJoker
Copy link
Member

Check / Luacheck (pull_request) is currently failing because .luacheckrc lacks the core table, which is identical to minetest.

@mruncreative
Copy link
Contributor Author

The bit module is missing from the testing container. I don't think I can fix that on my end.

Copy link
Member

@SmallJoker SmallJoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Logged the mesecon.register_mvps_stopper calls; alphabetically sorted.

register	beds:bed_bottom
register	beds:bed_top
register	beds:fancy_bed_bottom
register	beds:fancy_bed_top
register	doors:door_glass_a
register	doors:door_glass_b
register	doors:door_glass_c
register	doors:door_glass_d
register	doors:door_obsidian_glass_a
register	doors:door_obsidian_glass_b
register	doors:door_obsidian_glass_c
register	doors:door_obsidian_glass_d
register	doors:door_steel_a
register	doors:door_steel_b
register	doors:door_steel_c
register	doors:door_steel_d
register	doors:door_wood_a
register	doors:door_wood_b
register	doors:door_wood_c
register	doors:door_wood_d
register	xpanes:door_steel_bar_a
register	xpanes:door_steel_bar_b
register	xpanes:door_steel_bar_c
register	xpanes:door_steel_bar_d

The trapdoors are missing. Is this intentional? If not --> loop through doors.registered_trapdoors to add those nodes.

@mruncreative
Copy link
Contributor Author

mruncreative commented Feb 2, 2025

The trapdoors are missing. Is this intentional? If not --> loop through doors.registered_trapdoors to add those nodes.

Discussed in #699 and I mentioned it on IRC. I thought you'd have seen it.

The wooden trapdoor was not an mvps stopper, so trapdoors in general do not need to be mvps blockers and sfan5 said the metal trapdoors were mvps stoppers because they can be locked. I think they can be dug though if they aren't protected. What is your take on that?
If you don't like it, I will add the metal trapdoors from MTG back to the hardcoded list.

Unlike doors and beds moving a trapdoor doesn't break anything after all. The locked chests are different from the trapdoors because their value is in what's inside and they can't be dug in MTG while having content.

Edit: Seems I'm wrong. They are owned even without me making a key. I added them back to the list.

@SmallJoker
Copy link
Member

I thought you'd have seen it.

Are you referring to the following message? https://irc.minetest.net/luanti/2025-01-31#i_6239224 Unfortunately I haven't seen that one.
Doors may glitch out, thus those should be stopper nodes. As for trapdoors - I am not sure, hence my question above whether this change was intentional. I suppose either way would be okay.

Copy link
Member

@SmallJoker SmallJoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works for me. Tested with Minetest Game. Looks good. Will merge in a few days unless there are objections.

@SmallJoker
Copy link
Member

Squashed manually before merge. It was quite messy. Anyway. Thanks for the contributions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

mesecons_gamecompat mvps hardcoding issues

2 participants