ProtocolLib
Use the latest dev build for Minecraft 1.19.3
Use build 606 for Minecraft 1.19-1.19.2
Use the latest release for all other recent Minecraft versions
Thanks for over 1 million downloads everyone!
If you love ProtocolLib or it has made your life significantly easier, consider a one-time donation, sponsoring the project or leaving a positive review below. It really means a lot!
Certain tasks are impossible to perform with the standard Bukkit API and may require working with and even modifying Minecraft directly. A common technique is to modify incoming and outgoing packets or to inject custom packets into the stream. This is quite cumbersome to do, however, and most implementations will break as soon as a new version of Minecraft has been released, mostly due to obfuscation.
ProtocolLib is a library that allows read and write access to the Minecraft protocol. It handles most of the overhead required with reflection and channel injection and provides wrappers to simplify packet modification. It is updated with most Minecraft updates so, ideally, individual plugins don't have to. ProtocolLib often doesn't need to be updated for minor updates, especially if there are few code changes (i.e. the 1.8 security updates)
Useful Links
Support
Before reporting a bug:
- Look for an update for ProtocolLib, there's a good chance your error or bug has already been fixed.
- Read the stack trace and make sure it's an error with ProtocolLib. ProtocolLib's package is com.comphenix.protocol. If you don't see that anywhere, it's not ProtocolLib.
- Check the common errors wiki page.
- Use the issue tracker! Don't report bugs in the reviews. Please search for duplicates before reporting a new issue!
- Provide as much information as possible. Provide your ProtocolLib version and Spigot version.
- Provide any stack traces or "errors" using pastebin.