Jump to content

Packets

This page aims to explain how packets are handled in terms of structure and functionality

 

Properties

A packet has several data properties, them being game and networking information as:

  • Header - A byte that identifies the packet
  • Data - The data that is being sent/received
  • Sequence - A byte that signs if the packet is sequenced

On sending/receiving packets may be encrypted, check Network Encryption for more information

 

Structure

The packets have two different structures, constant and dynamic The goals of each type is predefined by the type of data handled

  • Note: The sequence byte is always the last byte in a packet, no matter the structure and its optional

 

Constant

The constant packet structure follows the expected order of data:

Structure
Type Size (bytes) Description
Header 1 Byte The number identifier of the packet
Data X Bytes The expected constant data values
Sequence 1 Byte The sequence value which defines if this packet is sequenced (optional)

 

Dynamic

The dynamic packet structure follows the expected order of data:

Structure
Type Size (bytes) Description
Header 1 Byte The number identifier of the packet
Size 2 Bytes The size of the entire packet, Header + Size + Data (excluding sequence)
Data ? Bytes The expected dynamic data values
Sequence 1 Byte The sequence value which defines if this packet is sequenced (optional)

 

Flow/Direction

The packets have different type denominations of directions regarding from who to who they are sent:

  • CG(Client Game) - Client to Server
  • GC(Game Client) - Server to Client
  • GG(Game Game) - Server to Server
  • GD(Game Database - Server to Database
  • DG(Database Game) - Database to Server

Note: The meaning of 'Server' in this case is a server core such authentication/game core and the meaning of 'Database' is the database core

 

Known Packets

Here is a list table of the known packets and its directions:

Client to Server

Client to Game - CG
Header Identification - Byte (Hex) Description Sequenced Structure
1 (0x01) Holds account credentials to perform a login True #CG Packet Login
2 (0x02) Holds target, attack and cube information to perform several actions True #CG Packet Attack
3 (0x03) Holds length and type of a chat string to perform a chat command True #CG Packet Chat
4 (0x04) Holds information to create a new character True #CG Packet Player Create
5 (0x05) Holds an index and a key to delete an existing character True #CG Packet Player Destroy
6 (0x06) Holds an index to select an existing character True #CG Packet Player Select
7 (0x07) Holds movement, positional and duration information to move the main character True #CG Packet Player Move
8 (0x08) Holds identification and positional information of entities to perform synchronization True #CG Packet Sync Position
9 (0x09) Holds account credentials and character index to perform a direct entrance in the game True #CG Packet Direct Enter
10 (0xA) Signals the server to enter the game world True #CG Packet Enter Game
11 (0xB) Holds inventory position to perform an item use True #CG Packet Item Use
12 (0xC) Holds inventory position and Elk(game currency) to perform an item/elk drop in the game world True #CG Packet Item Drop
13 (0xD) Holds source, target position and count to perform a item move inside the inventory True #CG Packet Item Move
15 (0xF) Holds position of game world item to perform a pickup True #CG Packet Pickup
16 (0x10) Holds position and quickslot information to perform a quickslot addition True #CG Packet Quickslot Add
17 (0x11) Holds position to perform a quickslot removal True #CG Packet Quickslot Delete
18 (0x12) Holds source and target position to perform a quickslot swap True #CG Packet Quickslot Swap
19 (0x13) Holds a chat string to perform a whisper action True #CG Packet Whisper
20 (0x14) Holds inventory position and Gold(game currency) to perform an item/gold drop in the game world True #CG Packet Item Drop 2
26 (0x1A) Holds entity information to perform a click action True #CG Packet On Click
28 (0x1C) Holds character position information (undefined reason) True #CG Packet Character Position
29 (0x1D) Holds answer information for a script/quest True #CG Packet Script Answer
30 (0x1E) Holds an input string for a quest response True #CG Packet Quest Input String
31 (0x1F) Holds answer information for a quest confirmation True #CG Packet Quest Confirm

  Report Doc

×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.