McModLauncher / modlauncher

Java 21 mod launcher
Other
171 stars 47 forks source link

Anything not in the inital classpath cannot provide a ITransformationService #22

Closed ichttt closed 5 years ago

ichttt commented 5 years ago

The ITransformationService map is populated very early in the cycle, so only anything that is not on the launch class path wil lnot be scanned for ITransformationServices. This mean 3rd party class transformation providers (like Mixin, Optifine, etc) have no access to ILaunchPluginService (which is intended IIRC) AND no access to ITransformationService (which they should have IMO, as it has a much ITransformers are much more locked down)

cpw commented 5 years ago

Note that mixin should not be loading as an ITransformationService, it should be loading, via the classpath, as an ILaunchPluginService. However, the point stands. Transformers need to be able to offer additional transformers to the system, for subsequent loading.

cpw commented 5 years ago

The newest release allows plugging in an "early discovery service" to facilitate this. However, it's still not what Mixin should be using.