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

Leaves no-decay and check-decay flags are the wrong way round #4789

Open
dktapps opened this issue Feb 2, 2022 · 1 comment
Open

Leaves no-decay and check-decay flags are the wrong way round #4789

dktapps opened this issue Feb 2, 2022 · 1 comment
Labels
Category: Core Related to internal functionality Category: Gameplay Related to Minecraft gameplay experience Status: Debugged Cause of the bug has been found, but not fixed

Comments

@dktapps
Copy link
Member

dktapps commented Feb 2, 2022

Issue description

Java uses 0x08 for check-decay and 0x04 for no-decay. Bedrock uses the opposite.

PM currently implements the Java way, which is problematic when importing worlds from vanilla, since it means that player-placed leaves will decay on world load.

This is further complicated by the inability to distinguish between a converted Java world and a converted Bedrock world in PM 4.0, since this makes it impossible to determine how the states should be decoded.

This problem was discovered during blockstates migration.

Several possible solutions come to mind:

  • Leave it as-is; this means that only imported Bedrock worlds will be influenced by the bug, but also means that the same problem will occur if the world is exported from PM to a Bedrock client.
  • Fix it to Bedrock standard; this fixes problems with imported Bedrock worlds, but transfers the player-placed leaf decay problem to any Java or PM-based world, which is almost all of them
  • Mark all leaves as no-decay when loading from metadata. This would result in some annoying artifacts when destroying trees.

There doesn't seem to be any good solution to this problem.

Steps to reproduce the issue

  1. Place some leaves in a PM world
  2. Export the world to Bedrock
  3. Notice the leaves decay on the client

OS and versions

  • PocketMine-MP: 4.0.8
  • Game version: 1.12.0
@dktapps dktapps added Category: Gameplay Related to Minecraft gameplay experience Category: Core Related to internal functionality Category: Client Related to Mojang client (usually client-caused bugs) Status: Debugged Cause of the bug has been found, but not fixed labels Feb 2, 2022
@dktapps
Copy link
Member Author

dktapps commented Jun 10, 2023

Due to the use of Bedrock conversion schema for PM5, this means that player-placed leaves in PM4 worlds will start decaying when used in PM5. There is still no clear solution to this problem, due to the inability to tell the difference between vanilla Bedrock 1.12 blocks vs PM4 1.12 blocks.

@dktapps dktapps removed the Category: Client Related to Mojang client (usually client-caused bugs) label Jun 10, 2023
@dktapps dktapps pinned this issue Jun 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Category: Core Related to internal functionality Category: Gameplay Related to Minecraft gameplay experience Status: Debugged Cause of the bug has been found, but not fixed
Projects
None yet
Development

No branches or pull requests

1 participant