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

In 1.20.5, the stackableShulkerBoxes rule causes stacked shulker boxes' stack size to appear incorrectly outside of the player's inventory #1899

Open
DorkOrc opened this issue Apr 19, 2024 · 9 comments

Comments

@DorkOrc
Copy link

DorkOrc commented Apr 19, 2024

Issue

In 1.20.5, there is a bug (MC-270846, marked as "Won't Fix") that causes items with a stack size higher than their max_stack_size component, to display their count incorrectly outside of the player's inventory.

This affects stackableShulkerBoxes as it does not modify the max_stack_size component for the client.

Steps for how to reproduce

  1. Enable the stackableShulkerBoxes carpet rule
  2. Stack some shulker boxes in your inventory. Observe that it displays the count correctly.
  3. Open a container, such as a chest, and move it into the container. Observe that it does not display the count correctly.
@sakura-ryoko
Copy link

This issue can be fixed using Tweakeroo's Stackable Shulker boxes feature in addition to the carpet rule; because the behavior you are referring to is Client side.

@manchesterjm
Copy link

Is there an updated to Tweakeroo? The only version I can find is for 1.20.4

@sakura-ryoko
Copy link

Is there an updated to Tweakeroo? The only version I can find is for 1.20.4

See the Masa Modding discord for more information, as this is the Carpet GitHub.

@ch-yx
Copy link
Contributor

ch-yx commented Apr 28, 2024

looks like this is just a special case of #1903 .
i tried to use the method mentioned in #1903, and this bug disappeared too.

@altrisi
Copy link
Collaborator

altrisi commented Apr 28, 2024

Wondering how feasible it'd be to make it play nicer with vanilla clients with the new stack size stuff.

@ch-yx
Copy link
Contributor

ch-yx commented Apr 28, 2024

Wondering how feasible it'd be to make it play nicer with vanilla clients with the new stack size stuff.

i tried that before realizing this BUG is just a special case of 1903, and tried to fix it by rewriting the encoding of items, to sent a extra max size tag to the client side when the default max size of shulker box is changed.

and found that the issue of this fixing method is that: if the client is in creative mode, and the user take the item out of the box to his/her inventory, the fake tag becomes real and will stay with the item forever....

maybe that is doable , maybe after digging the code of screen and editing it a lot? 🤔

@sakura-ryoko
Copy link

sakura-ryoko commented Apr 29, 2024

It could be the network rules being out of sync, but I have noticed this issue myself testing tweakeroo switching it's related settings on and off, when the server is carpet, and also on the client and wondered why it wasn't working....

I was primarily testing to see how "nice" the setting plays with Carpet Mod, and noticed that re-enabling the tweakeroo settings fixed it because it was all a Client-side problem.

You're always welcome to download my "sakura" builds for 1.20.5+, if you want to test these things for mod compatibility reasons ...

@Daniel99j2
Copy link

Wondering how feasible it'd be to make it play nicer with vanilla clients with the new stack size stuff.

i tried that before realizing this BUG is just a special case of 1903, and tried to fix it by rewriting the encoding of items, to sent a extra max size tag to the client side when the default max size of shulker box is changed.

and found that the issue of this fixing method is that: if the client is in creative mode, and the user take the item out of the box to his/her inventory, the fake tag becomes real and will stay with the item forever....

maybe that is doable , maybe after digging the code of screen and editing it a lot? 🤔

Here’s a proposed solution for that:
If the player is in creative, send an additional client side tag like “stackableShulkerBox, and if any items have that tag on the server side as well as the custom stack size, then remove both tags.

@ch-yx
Copy link
Contributor

ch-yx commented May 12, 2024

Wondering how feasible it'd be to make it play nicer with vanilla clients with the new stack size stuff.

i tried that before realizing this BUG is just a special case of 1903, and tried to fix it by rewriting the encoding of items, to sent a extra max size tag to the client side when the default max size of shulker box is changed.
and found that the issue of this fixing method is that: if the client is in creative mode, and the user take the item out of the box to his/her inventory, the fake tag becomes real and will stay with the item forever....
maybe that is doable , maybe after digging the code of screen and editing it a lot? 🤔

Here’s a proposed solution for that: If the player is in creative, send an additional client side tag like “stackableShulkerBox, and if any items have that tag on the server side as well as the custom stack size, then remove both tags.

i write some code to do the things you said.
https://github.com/ch-yx/fabric-carpet/actions/runs/9054860589/job/24875193573
but i have no time to test it.

i m looking forward to some advices.

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

No branches or pull requests

6 participants