44tim44 Posted October 12, 2017 Posted October 12, 2017 (edited) I've implemented a simple Jetpack in my mod, which utilizes the damagevalue of the item to hold it's batterycharge. The majority of the code is executed client-side, since it requires KeyInput from the player, hence I update the charge drained on the server with a custom Packet. However, at seemingly random times, the charge of the item is reset to a higher value, for seemingly no reason. (Only tested during Multiplayer-play.) Something that might be related is the fact that I sometime get a "ByteBuf.release() was not called before it's garbage-collected.", which I've been unable to find the reason for. Code: https://github.com/44tim44/BetterThanElectricity_1.12.2 The jetpack itself is in item>ItemJetpack.java The jetpack-packet is in network/PacketToServerJetpack.java Thanks! Edited October 12, 2017 by 44tim44 Quote
44tim44 Posted October 13, 2017 Author Posted October 13, 2017 (edited) I thought I was handling the packet on the main thread by using serverPlayer.getServerWorld().addScheduledTask(() -> { //Insert code here } ? So basically, in ItemJetpack, the only thing that should happen inside if(Minecraft.getMinecraft().gameSettings.keyBindJump.isKeyDown()) { //Insert code here } is sending a packet saying "Space is pressed" and let onMessage() handle everything? EDIT: Okay, nevermind. I just do it like I did before, but let the packet handle the decreasing of the charge, instead of settingCharge to what is clientSide. Thanks! Edited October 13, 2017 by 44tim44 Quote
44tim44 Posted October 13, 2017 Author Posted October 13, 2017 (edited) 3 minutes ago, diesieben07 said: I am not sure why I missed that... That should be alright. Just don't trust the client I do think my main problem, for the bug itself, was the fact that I didn't have a unique id when registering the Packet&Handler. *facepalm* But I still get "ByteBuf.release() was not called before it's garbage-collected." in my stacktrace from time to time. Is that because of something I did wrong? Because I can't find anyone else with the same problem on google (relating to minecraft). Edited October 13, 2017 by 44tim44 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.