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

EMI SUPPORT #39

Closed
CantWeAllDisagree opened this issue Mar 27, 2023 · 13 comments
Closed

EMI SUPPORT #39

CantWeAllDisagree opened this issue Mar 27, 2023 · 13 comments

Comments

@CantWeAllDisagree
Copy link

Describe the feature/addition!

Please add support for EMI if possible!

https://modrinth.com/mod/emi

Why would like to see this feature/addition?

I would love to be able to have the remove recipe feature of JEI/REI for EMI as I prefer EMI over the latter. Thanks!

@rlnt
Copy link
Member

rlnt commented Mar 28, 2023

I implemented EMI support on a private branch already but it needs some more testing. REI and JEI needed some special treatment in the past in order to avoid timing issues and we need to be sure this also works on EMI otherwise you'll get crashes or inconsistencies on a dedicated server environment.

Before testing, I wanted to wait until the Forge port for EMI arrives but who knows if that's ever going to happen. I'll have to see how we treat it. It's a bit annoying to maintain an additional dependency that only works on one platform.

@rlnt
Copy link
Member

rlnt commented Apr 1, 2023

Talked to EMI. While most of it is relatively simple, we would have to mixin into some of their internals to establish proper support and that is a maintenance burden.

But they agreed that something like this would be nice to have so they might implement it in the future. Up until this point, we need to delay EMI support, sorry. It's just not feasible right now.

@rlnt rlnt self-assigned this Apr 1, 2023
@CantWeAllDisagree
Copy link
Author

Completely understandable, thanks for taking the effort!

@rlnt
Copy link
Member

rlnt commented Apr 2, 2023

Please don't close this. 😄

@rlnt rlnt reopened this Apr 2, 2023
@CantWeAllDisagree
Copy link
Author

Sorry my bad, :)

@stale stale bot removed the type: abandoned label Apr 17, 2023
@AlmostReliable AlmostReliable deleted a comment from stale bot Apr 17, 2023
@ffuentesm
Copy link

This seems really useful, EMI is finally on Forge, and it gives the Best of REI to JEI.
I have tested EMI and AU on both 1.19.2 and 1.20.1, and there have been no crashes.
Just the missing AU icon on the Recipes.

@rlnt
Copy link
Member

rlnt commented Jun 17, 2023

Since we don't feature official support, any issues featuring EMI will be closed. It's good if it's working but since they didn't implement a feature we need for official support and I don't want to maintain multiple mixins for several recipe viewers that frequently change their internals, this request will remain on hold.

@hipsterjazzbo
Copy link

hipsterjazzbo commented Jul 12, 2023

This looks like it's possible now: https://github.com/emilyploszaj/emi/wiki/Getting-Started-Guide#addingremoving-from-the-index

GitHub
A featureful and accessible item and recipe viewer - emilyploszaj/emi

@rlnt
Copy link
Member

rlnt commented Jul 12, 2023

This was always possible but this is not the feature we are waiting for. I talked to Emi about the desired feature we need which should find its way into the mod soon because I PRed the integration for it to JEI as well.

@rlnt
Copy link
Member

rlnt commented Jul 31, 2023

Relies on this: emilyploszaj/emi#261

@emilyploszaj
Copy link

EMI has had this https://github.com/emilyploszaj/emi/blob/1.20.4/xplat/src/main/java/dev/emi/emi/api/EmiInitRegistry.java#L24 entrypoint for a little while which should be sufficient for the general case of removing stacks from integration, both the sidebar and inside of tags, supported by the mod itself rather than intrusive editing of existing recipe displays.

@rlnt
Copy link
Member

rlnt commented Feb 14, 2024

EMI has had this https://github.com/emilyploszaj/emi/blob/1.20.4/xplat/src/main/java/dev/emi/emi/api/EmiInitRegistry.java#L24 entrypoint for a little while which should be sufficient for the general case of removing stacks from integration, both the sidebar and inside of tags, supported by the mod itself rather than intrusive editing of existing recipe displays.

This is good to know but we still need the recipe decorator capabilities to fully support EMI. Changing recipes without indicating it has been a huge origin of drama and conflicts in the past and we want to avoid this. In the past, before we PRed that feature to JEI ourselves, we applied that via internal mixins but that is a maintenance burden, especially with how often its internals changed.

@emilyploszaj
Copy link

Oh, I was under the impression you wanted a more complex integration with EMI with the ability to mutate stuff like slots... I should've taken a closer look, recipe decorators like you wanted were quite simple, and are now available as an experimental API addition in 1.1.2, though, I do not anticipate them to change if they work for your use case, they'll be considered stable in 1.2.0. Sorry for the delay! You should have everything necessary for integration now.

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

No branches or pull requests

5 participants