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

Krypton incompatibility with *small* packets on Vanilla transport #1

Closed
Ampflower opened this issue Feb 20, 2022 · 1 comment
Closed

Comments

@Ampflower
Copy link

Ampflower commented Feb 20, 2022

Steps to Reproduce

  • Install both Krypton 0.1.6 and Raknet Fabric 0.1.0+alpha.1.4-all on the server.
  • Join with vanilla protocol & transport (i.e. no raknet;). Localhost vs. external server doesn't matter.
  • Get a Diamond Pickaxe with Unbreaking 1 from an enchanting table.
  • Get another Diamond Pickaxe with Efficiency 1 and Unbreaking 1 from an enchanting table.
    • Note, the order of enchantments may matter here.
  • Attempt to combine the Unbreaking 1 pickaxe with the Efficiency 1 & Unbreaking 1 pickaxe in an anvil.
  • Get immediately kicked due to badly compressed packet?

Notes

The server was with stock settings at the time of testing, which means the compression threshold of 256 was applied. There are no other configs available, for as LazyDFU (present purely to reduce boot time), Krypton and RaknetFabric has no user/admin-configurable options.

The full server.properties for reference.
#Minecraft server properties
#Sun Feb 20 12:57:52 CST 2022
enable-jmx-monitoring=false
rcon.port=25575
gamemode=survival
enable-command-block=false
enable-query=false
level-name=world
motd=A Minecraft Server
query.port=25565
pvp=true
difficulty=easy
network-compression-threshold=256
require-resource-pack=false
max-tick-time=60000
use-native-transport=true
max-players=20
online-mode=true
enable-status=true
allow-flight=false
broadcast-rcon-to-ops=true
view-distance=10
server-ip=
resource-pack-prompt=
allow-nether=true
server-port=25565
enable-rcon=false
sync-chunk-writes=true
op-permission-level=4
prevent-proxy-connections=false
hide-online-players=false
resource-pack=
entity-broadcast-range-percentage=100
simulation-distance=10
rcon.password=
player-idle-timeout=0
force-gamemode=false
rate-limit=0
hardcore=false
white-list=false
broadcast-console-to-ops=true
spawn-npcs=true
spawn-animals=true
function-permission-level=2
text-filtering-config=
spawn-monsters=true
enforce-whitelist=false
resource-pack-sha1=
spawn-protection=16
max-world-size=29999984

Logs

The full, unmodified logs with both the Vanilla and Raknet transports used. The same task was attempted with both, with only the Vanilla transport crashing.
[12:57:45 INFO]: Loading Minecraft 1.18.1 with Fabric Loader 0.13.2
[12:57:46 INFO]: Loading 7 mods:
	- com_velocitypowered_velocity-native 1.1.0-SNAPSHOT via krypton
	- fabricloader 0.13.2
	- java 17
	- krypton 0.1.6
	- lazydfu 0.1.2
	- minecraft 1.18.1
	- raknet-fabric 0.1.0+alpha.1.4
[12:57:46 INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=file:/home/kjp12/Downloads/raknet/libraries/net/fabricmc/sponge-mixin/0.11.2+mixin.0.8.5/sponge-mixin-0.11.2+mixin.0.8.5.jar Service=Knot/Fabric Env=SERVER
[12:57:46 INFO]: Compatibility level set to JAVA_16
[12:57:46 WARN]: Error loading class: net/fabricmc/fabric/impl/networking/server/ServerLoginNetworkAddon (java.lang.ClassNotFoundException: net/fabricmc/fabric/impl/networking/server/ServerLoginNetworkAddon)
[12:57:51 INFO]: Compression will use libdeflate (Linux x86_64), encryption will use OpenSSL 1.1.x (Linux x86_64)
[12:57:51 INFO]: Krypton is now accelerating your Minecraft server's networking stack 🚀
[12:57:52 INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[12:57:52 WARN]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0]
[12:57:52 WARN]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0]
[12:57:52 WARN]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498]
[12:57:52 WARN]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498]
[12:57:52 WARN]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0]
[12:57:52 INFO]: Reloading ResourceManager: Default
[12:57:53 INFO]: Loaded 7 recipes
[12:57:53 INFO]: Loaded 1141 advancements
[12:57:56 INFO]: Starting minecraft server version 1.18.1
[12:57:56 INFO]: Loading properties
[12:57:56 INFO]: Default game type: SURVIVAL
[12:57:56 INFO]: Generating keypair
[12:57:56 INFO]: Starting Minecraft server on *:25565
[12:57:56 INFO]: Using epoll channel type
[12:57:56 INFO]: Using epoll channel type
[12:57:56 INFO]: Preparing level "world"
[12:57:56 INFO]: Preparing start region for dimension minecraft:overworld
[12:57:57 INFO]: [STDOUT]: Krypton detected, applying compatibility
[12:57:58 INFO]: Preparing spawn area: 0%
[12:57:58 INFO]: UUID of player _KJP12 is 82fe072f-b2d9-4005-b8a6-9284195a576e
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:01 INFO]: Preparing spawn area: 0%
[12:58:02 INFO]: Preparing spawn area: 4%
[12:58:02 INFO]: Preparing spawn area: 10%
[12:58:03 INFO]: Preparing spawn area: 17%
[12:58:03 INFO]: Preparing spawn area: 33%
[12:58:04 INFO]: Preparing spawn area: 42%
[12:58:04 INFO]: Preparing spawn area: 55%
[12:58:05 INFO]: Preparing spawn area: 69%
[12:58:05 INFO]: Preparing spawn area: 79%
[12:58:06 INFO]: Preparing spawn area: 79%
[12:58:06 INFO]: Preparing spawn area: 83%
[12:58:07 INFO]: Preparing spawn area: 85%
[12:58:07 INFO]: Preparing spawn area: 88%
[12:58:08 INFO]: Preparing spawn area: 91%
[12:58:08 INFO]: Preparing spawn area: 96%
[12:58:09 INFO]: Preparing spawn area: 98%
[12:58:09 INFO]: Time elapsed: 12561 ms
[12:58:09 INFO]: Done (12.780s)! For help, type "help"
[12:58:09 INFO]: _KJP12[/[0:0:0:0:0:0:0:1%0]:45814] logged in with entity id 200 at (-32.127683096115916, 71.0, -73.60408038656982)
[12:58:09 INFO]: _KJP12 joined the game
[12:58:12 INFO]: [STDERR]: io.netty.handler.codec.DecoderException: Badly compressed packet - size of 259 is below server threshold of 512
[12:58:12 INFO]: [STDERR]: io.netty.handler.codec.DecoderException: Badly compressed packet - size of 120 is below server threshold of 512
[12:58:12 INFO]: _KJP12 lost connection: Internal Exception: io.netty.handler.codec.DecoderException: Badly compressed packet - size of 259 is below server threshold of 512
[12:58:12 INFO]: _KJP12 left the game
[13:01:06 INFO]: [STDOUT]: Krypton detected, applying compatibility
[13:01:06 INFO]: UUID of player _KJP12 is 82fe072f-b2d9-4005-b8a6-9284195a576e
[13:01:06 INFO]: [STDOUT]: _KJP12 logged in via RakNet, mtu 1398
[13:01:06 INFO]: _KJP12[/[0:0:0:0:0:0:0:1%0]:44051] logged in with entity id 214 at (-32.127683096115916, 71.0, -73.60408038656982)
[13:01:06 INFO]: _KJP12 joined the game
[13:01:06 INFO]: [STDOUT]: [MultiChannellingDataCodec] Started multichannel

Minimal reproducible world

The world contains a chest with both pickaxes in the required order to reproduce the same error.

@Ampflower Ampflower changed the title Krypton incompatibility with *small* packets Krypton incompatibility with *small* packets on Vanilla transport Feb 20, 2022
ishland added a commit that referenced this issue Feb 26, 2022
@ishland
Copy link
Contributor

ishland commented Feb 27, 2022

Fixed in 1e46f5c

@ishland ishland closed this as completed Feb 27, 2022
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

2 participants