lambda
lambda copied to clipboard
(Global but Baritone-dependent) Incompatibility with @Overwrite mixin mods such as Liquidbounce
What mod? Liquidbounce(both legacy b2 and ported)
Logs Sample mixin error: https://pastebin.com/MxdS8YDq Semi-fixed crash: https://pastebin.com/FgYTwTRt Full logs and logs for other mixin errors upon request(I don't see a reason to provide them right away since these are the only relevant pieces)
Additional context
@Overwrite
ing mixins cause SOME @At(value="FIELD")
and @At(value="INVOKE")
mixins of Baritone to break.
Affected mixins: MixinEntityLivingBase.overrideYaw
, MixinEntityPlayerSP.isAllowFlying
, MixinEntityPlayerSP.isKeyDown
After removing those mixins(using Recaf, don't have Gradle to recompile from source + overkill), the game launches but crashes soon(see log №2).
Optional(unrelated to the absolute fix): make priority 999 or lower to respect overwritten methods(otherwise hooks can potentially be overwritten out).
Decided not to post this in Baritone issues because it appears that they've dropped 1.12.2 support, correct me if I'm wrong.
CORRECTION: The standalone version of Baritone works just fine when fixed using the same method, no crashes.
1.12.2 is the main branch of baritone.
This does not crash with standalone baritone because of mixin 0.8.x behavior change, this will silently fail on old versions of mixins such as what is distributed with baritone standalone but the real problem is with the people using overwrite, and that causes major issues because of mixin design flaws.
Liquidbounce on its way to overwrite the entire entity move method to add 5 lines
Liquidbounce on its way to overwrite the entire entity move method to add 5 lines
Yeah that made me laugh hard as fuck, sadly I don't know shit about Mixins so I have no idea how to rework it
Heads up: I fixed Lambda to work with Liquidbounce and now it works.