Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

opt-depend on default #214

Open
1 of 5 tasks
BuckarooBanzay opened this issue Sep 22, 2021 · 4 comments
Open
1 of 5 tasks

opt-depend on default #214

BuckarooBanzay opened this issue Sep 22, 2021 · 4 comments
Assignees
Labels
Discussion Enhancement New feature or request

Comments

@BuckarooBanzay
Copy link
Member

BuckarooBanzay commented Sep 22, 2021

Not sure if this is delusional but it would be nice if the technic mod only does an opt-depend on default

Use-case:

  • Supporting different games than the minetest_game

Obvious tasks:

  • Disable recipes with default nodes (different base-games should provide their own recipe or PR a recipe here)
  • ^ Same with grinder,compressor,etc recipes
  • Internalize used textures from the default mod
  • Remove hardcoded nodes from default (or disable them if not available) drill/laser for example

More problematic tasks:

  • Handle transient dependencies on default somehow (pipeworks and basic_materials hard-depend on default)

Reality checks/suggestions welcome 😉

@BuckarooBanzay BuckarooBanzay added Enhancement New feature or request Discussion labels Sep 22, 2021
@BuckarooBanzay BuckarooBanzay self-assigned this Sep 22, 2021
@S-S-X S-S-X mentioned this issue Oct 23, 2021
5 tasks
@S-S-X
Copy link
Member

S-S-X commented Oct 23, 2021

I was thinking about this a bit and here's things I thought to be important (or not that important):

Disable recipes with default nodes (different base-games should provide their own recipe or PR a recipe here)

Secondary thing, no hard requirement
Move recipe registrations to some "crafting" subdirectory to allow loading based on available mods?
I think recipes are kind of secondary thing as games or servers with default mod are already able to provide their own recipes through recipe rewrites and as far as I know broken recipes wont actually break anything else than ability to craft item.

Remove hardcoded nodes from default (or disable them if not available) drill/laser for example

Secondary thing, no hard requirement
Similar thing to most hardcoded nodes, most of those will not actually break anything even if not removed so that's also more about making it nice and clean than hard requirement.

Internalize used textures from the default mod

Requires solution
Textures are real problem because those are actually used in game even if broken, this one is something that has to be solved to make this work.

Handle transient dependencies on default somehow (pipeworks and basic_materials hard-depend on default)

Requires solution
This of course is another real problem that must be solved to make it work at all.

Then also another thing that must be handled is API provided by default mod, not sure how much it is used but is also thing that must be solved.

Also note:

Things I called secondary are not meant to be left out and I think those should be fixed too but those things should not be showstoppers and I think it could be good to look solutions for hard requirements first.
Possibly fixing those secondary things while doing other updates.

@BuckarooBanzay
Copy link
Member Author

related issue upstream: minetest-mods/technic#594

@wsor4035
Copy link

basic materials opt depends on default now

@S-S-X
Copy link
Member

S-S-X commented Mar 30, 2022

"More problematic tasks:" has been solved now right?

Some other related work also been done in Technic mod and I'd say wrench should be ignored.
Also frames can be ignored #263 can be ignored (first: broken. second: does not belong here).
Then #244 might also have some related stuff which can be ignored and should be removed.

I think basically only thing that has to be done for MVP is "Internalize used textures from the default mod" and possible calls to mtg API.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Discussion Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants