Skip to content

Alicia protocol

Maroš Prejsa edited this page Mar 16, 2024 · 2 revisions

Alicia Protocol

Reverse engineered communication protocol between Alicia Server and Alicia Client. Protocol is based on the TCP/IP protocol.

Server Desc
Lobby Synchronous
Relay Asynchronous, (ranch, ...)
Race Asynchronous
Guild Chat

Network Messages

Codec

The format of the network messages transmitted between the client and the server.

Type Name Note
uint32 Message magic Encoded message information
uint8[x] Message data Actual message data

Message magic is encoded information about the message identifier, message "jumbo" (with default value of 16384), message data lenth and "message buffer size" (with default value of 4092).

Example of how to encode and decode message information

Serverbound

Messages from the client to the server.

CmdCLLogin

Type Name Note
uint16_t
uint16_t
string[52]
uint32_t Game ID
string[260]

Clientbound

Messages from the server to the client.

CmdCLLogin OK

Clientbound

Type Name Note

CmdCLLogin CANCEL

Clientbound

Type Name Note
uint8_t Enum response code

If responde code value is outside the enum range, default login fail message is shown to the user.

Response code ordinal Name Note
1 CR_INVALID_USER
2 CR_DUPLICATED
3 CR_INVALID_VERSION
4 CR_INVALID_EQUIPMENTS
5 CR_INVALID_LOGIN_ID
6 CR_DISCONNECT_YOURSELF
Clone this wiki locally