-
Notifications
You must be signed in to change notification settings - Fork 270
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
[Discussion] A super-early-entry-point (or loader-plugin) #486
Comments
12346 are all easy as heck. 5 is the real nightmare, as the current system of loading isn't quite extensible to new discoveries, especially that the mod source priority system would definitely get a big revamp. |
I think the new mod discovery system (refactored by Player) can potentially support multi-pass resolving already. Here could be a new resolving process.
However, since I am still looking at the loader code and doing the experiment, idk if this method could introduce any potential problem. Any suggestion? |
Sure, this topological approach looks good. I think the mod discovery mechanism should be more like language adapter: the mod discoverers can be defined like language adapters, and only the discoverers are resolved at first until there is no discoverer pending a run (discoverers can find new mod jsons that provide discoverers). With this model, we can probably split custom mod provision from the super-early entry, which, I assume, would be safer? The classloading of these discoverers can follow the model of language adapters given their very similar roles and models. |
Being able to also remove specific ModContainers would be awesome I think. |
I've read through serval related discussions about this, including
#192
#445
#175
#223
Since this one has been discussed for a long time but never made it real, I would like to have a more formal approach for this. There will be 3 steps,
This issue is intended to discuss the specification for this feature so that everyone is happy about this before proceeding to the next steps.
============================
Here is the specification,
ModContainer
) to the fabric loader. The added mod should respect the mod dependency resolving, which handles by the fabric loader.Please have a comment on this if you think some specification is undesirable or want to add more specification.
The text was updated successfully, but these errors were encountered: