Reborn Protocol Reference Documentationο
Welcome to the comprehensive reference documentation for the Reborn protocol. This documentation provides detailed packet structure specifications, encoding formats, and implementation guidelines for developers working with Reborn servers and clients.
Note
New to the protocol? Start with Protocol Overview to understand why everything adds 32, why there are three string types, and other architectural decisions from the late 1990s.
Protocol Specification:
- Protocol Overview
- Data Types Reference
- String Types: A Tragedy in Three Acts
- Encryption and Packet Processing
- Reborn Protocol v2 - Packet Structure Reference
- Overview
- Protocol Architecture
- Data Encoding Types
- Client-to-Server Packets (PLI_*)
- Player Properties (PLI_PLAYERPROPS Data)
- Remote Control Packets (PLI_RC_*)
- NPC Control Packets (PLI_NC_*)
- Special Packets
- Encryption Details (ENCRYPT_GEN_5)
- Data Type Reference
- Implementation Notes
- Server-to-Client Packets (PLO_*)
- Encryption Implementation Details
- GServer Behavior Reference
- Level Link Implementation Guide
- Server-Side Behavior and Level Links
About This Documentationο
This documentation is derived from deep analysis of the GServer-v2 codebase and provides:
Complete packet structure specifications (100+ packets documented)
Primitive-level encoding details for cross-language implementation
The infamous G-type encoding explained with visual diagrams
The three string types (yes, three) and their gotchas
ENCRYPT_GEN_5 protocol implementation with flow diagrams
PyReborn library conformance analysis
Implementation examples in Python, JavaScript, and C++
The documentation is maintained as part of the OpenGraal2 project and is designed to enable developers to create compatible Graal clients and servers in any programming language.
Reading Orderο
For newcomers to the Reborn protocol:
Protocol Overview - The big picture and common pitfalls
Data Types Reference - G-type encoding (the +32 obsession)
String Types: A Tragedy in Three Acts - The three string types and the PLO_LEVELLINK trap
Encryption and Packet Processing - Packet bundling, compression, and βencryptionβ
Reborn Protocol v2 - Packet Structure Reference - Individual packet formats
For existing developers:
GServer Behavior Reference - How GServer-v2 actually implements things
PyReborn Protocol Conformance Analysis - Conformance issues and fixes
Contributingο
This documentation is open source and contributions are welcome. The source is available on GitHub as part of the OpenGraal2 project.