Skip to content

Mixins #36

Description

@Olafcio1

Avoid addons should be able to use mixins.
How?

Injecting

1. Mixing into Minecraft: plugin-based each-class 'preApply' hooking

The first method of implementing mixin support is:

  1. making a powershell/gradle/groovy script to generate an empty mixin class for each minecraft class
  2. creating a mixin plugin that changes minecraft classes in the preApply hook, which is possible because of §1

2. Mixing into everything: well, that depends

Stealing the instrumentation object is not possible, as it's not present in production environments. There's a rare chance it's present in a dev one, too. (It's only present when the mixin hotswapper is used.)

So, what can I do? Well...:

  1. NeoForge: coremods
    not sure how to make them but they exist

  2. Quilt: loader plugins
    they're quite simple

  3. Fabric & Sponge & Paper: relaunching the game magically
    yeah... i don't wanna elaborate further

Transforming

1. Figuring out a way with the already-present SpongePowered Mixin framework

I tried looking at fabric code before but it's so bad istg

2. Using Tedge-Mixin

My fancy alpha mixin remake :D

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions