Prerequisites
What do we expect of you?
Previously, we mentioned that PacketEvents is a library that facilitates the transmission and processing of packets on Minecraft. Thus, some knowledge of the Minecraft Protocol is definitely necessary. PacketEvents simply wraps the protocol; it is not here to explain the intricacies of the protocol to you. The Minecraft Protocol constantly changes, and therefore requires you to frequently follow up and stay up to date.
Moreover, this is a Minecraft networking library, hence networking knowledge is also a prerequisite. Minecraft Java Edition uses the TCP/IP protocol, and thus, it would be great to have some knowledge about that. Developers utilize packets for direct communication with clients. This is powerful because it lets you provide each player with a unique experience.
Furthermore, experience with threading and concurrency is essential. It is well known that packets are typically processed asynchronously. Slow transmission of packets are not supposed to make your game stutter. If Minecraft was actually implemented on just one thread, having high ping would drop your framerate. Since we're working with a multi-threaded system, this mandates you to design your project with caution.
Basic Networking
Minecraft Java Edition Protocol
Java's Threading and Concurrency.
Last updated