-
Notifications
You must be signed in to change notification settings - Fork 423
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
[1.21.1] CustomIngredientPacketCodec always falls back. #4225
Comments
If anybody is curious on how I found this. I was implementing an EMI plugin that required the custom ingredient data to be sent to the client, so that the remainder stack may be updated. |
The mixin is correct and the set is supposed to be cleared unconditionally. |
This may be because |
I hope it's okay if I add this here, if not I can make a new issue for it. I'm investigating the issue currently because in the Sophisticated Storage port I need a CustomIngredient and also ran into this issue. So far I found out that the EncoderHandler where the synced ingredients are stored is getting removed from the pipeline every so often. In the EncoderHandler class the encode functions finally block calls into Unfortunately before the recipes are being synced a This is a problem in 1.21.1 and I believe all the way to 1.21.4 but I only checked and debugged 1.21.1. |
The linked commit was not backported to 1.21.1. |
I'm aware, I looked into the commit and wanted to backport it but quickly found out that the commit would not fix the issue. As mentioned when the server is syncing the recipes with the client the list of supportedCustomIngredients is already lost due to the EncoderHandler being removed from the channel pipeline. Therefore the server is never even considering sending the Ingredients as CustomIngredients but always doing the fallback instead. If you set a breakpoint in the I also tested it against 1.21.4 and it is affected by this too. |
Thanks, good to know. |
Fabric Loader: 0.16.9
Fabric API: 0.108.0+1.21.1
Hello, I've found a bit of an edge case with the class I mentioned in the title.
Whenever a custom ingredient is attempted to be synced, it will always fall back.
I think that this might be because of the current supported ingredients set being cleared unconditionally.
fabric/fabric-recipe-api-v1/src/main/java/net/fabricmc/fabric/mixin/recipe/ingredient/EncoderHandlerMixin.java
Lines 57 to 76 in 5197d62
The text was updated successfully, but these errors were encountered: