Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-172659

Improper fix for x-ray resource packs break player's custom resource packs

XMLWordPrintable

    • Unconfirmed
    • Rendering

      the bug

      In brief, the current way of fixing x-ray resource packs does not work as expected, it did not eliminate cheating packs, but instead, hurt the player's ability to create custom resource packs. 

      I spent two days to investigate the bug, and searching for other bug reports and patch notes, I am sure to present something new, so please don't set the report as a duplicate before you finish reading, thanks for your patience!

      History of the bug

      Dear Mojang developer, in Minecraft Java Edition 14w04a, Rendering & performance changes:

      • Only transparent blocks will now render as transparent (eliminates the use of x-ray texture packs).

       That change was aimed to eliminate the use of x-ray resource packs, and it worked for the snapshot itself.

      But, only 3 snapshots later, which is in snapshot 14w06a

      Resource packs

      • Block models in resource packs can now be customized.
      • Replaces the files in /assets/minecraft/models/.
      • After loading the resource pack, the game may have to be reloaded.

      The introduction of custom models allows the player to directly bypass the texture ban, directly create x-ray packs without using any transparent or semi-transparent textures.

      I'll leave an x-ray resource pack that I made in the attachments. That's why I set the issue to private.

      What does the texture ban cost

      It is obvious that MC-164001 is caused by the texture ban.
      MC-165182 is also caused by the ban.
      MC-142906 and also that one.
      MC-45199 
      MC-17802

      As you can see, that was considered as "intended", but now the ban had failed, and became unnecessary and useless. It only causes problems rather than preventing cheating.

      All x-ray packs above version 1.8 rely on custom block models to achieve cheating, not alpha channel or texture transparency.



      I made the custom X-ray pack for demonstrating in under an hour, and I didn't even include any custom textures in my pack.

      Why the texture ban is "not intended"

      as I've shown above, the ban is aimed to eliminate the use of X-ray cheating packs. And the intention here is to anti-cheat, not to eliminate possibilities. Now with the ban, x-ray packs can still be made with ease, while custom resources with no intention of cheating are influenced seriously. I am sure that is not your original intention.

      Therefore, it is a bug that needs to be fixed

      Demo X-ray pack [for1.16 snapshots] in attachments

      Conclusion: The ban for alpha channel support of textures did not perform as the way it is intended, the ban causes more lag for custom texture packs [due to the compromises required to make up for the loss of the alpha channel], causes bugs [the related bugs already got 89 votes] and eliminates possibilities [for cool custom block textures, like transparent TV screens.ect].

      so it's time to fix the bug and implement a better way of banning x-ray texture packs.

      Possible alternative fixes

      The easiest fix I can come up with is to ban the alpha channel as well as custom models that are smaller than a full cube for the following blocks only:

      • Grass and dirt block
      • stone and netherrack
      • sand and snow

      Since the majority of the world is made up of these blocks, that should be enough to ban easy-to-make x-ray packs, without influencing normal custom packs at the same time.

      As for PVP servers, they usually have more advanced anty-cheating plugins, so no need to worry about that. I think that would be a good fix to the current bug.

      Thanks for reading through!

      Appreciate your time.

            Unassigned Unassigned
            2404037558 闫懋杰
            Votes:
            6 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: