Imprex-Development / orebfuscator

Orebfuscator - High-Performance Anti X-Ray plugin
https://modrinth.com/plugin/orebfuscator
GNU General Public License v3.0
126 stars 25 forks source link

deobfuscation on teleport and join #339

Closed kforbro closed 10 months ago

kforbro commented 10 months ago

Description

there is no deobfuscation when teleporting and joining to server

Reproduction Steps

build an obsidian (or other hidden block) platform in the sky

Expected Behaviour

deobfuscation should be instant on teleport and join

Orebfuscator Dump

"versions": { "java": "17", "nms": "v1_20_R1", "bukkit": "1.20.1-R0.1-SNAPSHOT", "protocolLib": "ProtocolLib v5.1.0-SNAPSHOT-652", "orebfuscator": "Orebfuscator v5.4.1-b272" },

Extra Details

https://youtu.be/Taxd4WcyWWo

Ingrim4 commented 10 months ago

Since you didn't provide the whole dump file I will assume you are using an older config with frustum culling turned off:

As far as I can see this looks totally normal, we only update proximity blocks if your position (or rotation, if frustum culling and or useRayCastCheck is enabled) changes. Since the teleport happens before or at the same time as the chunk packets the first update will not deobfuscate blocks (timing issue) so we added proximityPlayerCheckInterval option which is by default configured to update the player every 5 seconds even if the position didn't change. You could decrease this value to something like 1sec to account for obfuscation/networking delays and it should feel pretty much instant.