Skip to content

Make modpack mostly independent from MTG#607

Merged
sfan5 merged 12 commits into
minetest-mods:masterfrom
TurkeyMcMac:no-default
May 5, 2022
Merged

Make modpack mostly independent from MTG#607
sfan5 merged 12 commits into
minetest-mods:masterfrom
TurkeyMcMac:no-default

Conversation

@TurkeyMcMac
Copy link
Copy Markdown
Contributor

@TurkeyMcMac TurkeyMcMac commented Apr 20, 2022

This PR makes all Mesecons mods except mesecons_doors work with any game, and none of the mods hard-depend on default any longer. I added a mod mesecons_gamecompat to handle most external dependencies. The addition of a mod to the pack may cause problems for people updating it, in which case I should put the compatibility code in the mesecons mod or something. In any case, almost the entire modpack will now work with any game, although it requires default and some other MTG mods to provide sounds etc.

mesecons_detectors depended on default to provide default_steel_block.png. To remedy this, I added a copy of the texture to the mod as a fallback (giving appropriate attribution.) I could make the mod use the fallback texture 100% of the time, but this might mess with existing texture packs.

If no mesecons_gamecompat:mese alias is registered, mesecons_extrawires provides its own placeholder mesecons_extrawires:mese. Otherwise, mesecons_extrawires:mese is an alias of the real mese.

Support for more games without the default mod can be added in the future by adding more compatibility code to mesecons_gamecompat.

@sfan5
Copy link
Copy Markdown
Member

sfan5 commented Apr 21, 2022

Nice.
To me mesecons_compat sounds more like internal backwards compatibility maybe mesecons_gamecompat would be a better name or you have a different idea.
I'll add some more comments in a review below.
Also what about the list inside mesecons_mvps?

Comment thread mesecons_blinkyplant/init.lua Outdated
Comment thread mesecons_compat/init.lua Outdated
Comment thread mesecons_noteblock/init.lua Outdated
@TurkeyMcMac
Copy link
Copy Markdown
Contributor Author

I'm not sure about changing the list in mesecons_mvps, since mods might want to register the MVPS stoppers for themselves.

@sfan5
Copy link
Copy Markdown
Member

sfan5 commented Apr 22, 2022

I'm not sure about changing the list in mesecons_mvps, since mods might want to register the MVPS stoppers for themselves.

I don't understand the concern here. There is a hardcoded list of nodes in the mod, surely it should only apply when MTG is detected?

@TurkeyMcMac
Copy link
Copy Markdown
Contributor Author

Yes, my thought is that the list should apply only when MTG is used, and other games that Mesecons is made compatible with can register their stoppers themselves.

@sfan5
Copy link
Copy Markdown
Member

sfan5 commented Apr 26, 2022

Then what about moving the hardcoded list to mesecons_gamecompat, inside the MTG part?

Comment thread mesecons_gamecompat/init.lua
Co-authored-by: sfan5 <sfan5@live.de>
Copy link
Copy Markdown
Member

@sfan5 sfan5 left a comment

Choose a reason for hiding this comment

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

Works, tested with devtest.

@sfan5 sfan5 merged commit dfa43d6 into minetest-mods:master May 5, 2022
@TurkeyMcMac
Copy link
Copy Markdown
Contributor Author

@Tim79000 default contains a lot of unrelated features, many of them specific to Minetest Game and its spin-offs. If a mod depends on default, it basically depends on Minetest Game.

@fluxionary fluxionary mentioned this pull request May 16, 2022
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.

2 participants