AuthServer: Difference between revisions
From OuroDev
No edit summary |
|||
| Line 267: | Line 267: | ||
===GM Tools=== | ===GM Tools=== | ||
TCP Port 2108. | TCP Port 2108. Used for internal administration. | ||
==== Incoming Packets ==== | |||
{| class="wikitable" | |||
!Opcode | |||
!Description | |||
!Structure | |||
|- | |||
|IA_SERVER_VERSION | |||
| | |||
| | |||
|- | |||
|IA_IP_KIND | |||
| | |||
| | |||
|- | |||
|IA_IP_USE | |||
| | |||
| | |||
|- | |||
|IA_IP_START_OK | |||
| | |||
| | |||
|- | |||
|IA_IP_START_FAIL | |||
| | |||
| | |||
|- | |||
|IA_IP_USE_FAIL | |||
| | |||
| | |||
|- | |||
|IA_IP_SESSIONKEY | |||
| | |||
| | |||
|- | |||
|IA_IP_INSTANTLOGIN_OK | |||
| | |||
| | |||
|- | |||
|IA_IP_INSTANTLOGIN_FAIL | |||
| | |||
| | |||
|- | |||
|IA_IP_KICK | |||
| | |||
| | |||
|- | |||
|IA_IP_READY_FAIL | |||
| | |||
| | |||
|- | |||
|IA_IP_READY_OK | |||
| | |||
| | |||
|- | |||
|IA_IP_SET_STARTTIME_OK | |||
| | |||
| | |||
|- | |||
|IA_IP_SET_STARTTIME_FAIL | |||
| | |||
| | |||
|} | |||
==== Outgoing Packets ==== | |||
{| class="wikitable" | |||
!Opcode | |||
!Description | |||
!Structure | |||
|- | |||
|AI_SERVER_VERSION | |||
| | |||
| | |||
|- | |||
|AI_IP_KIND | |||
| | |||
| | |||
|- | |||
|AI_IP_ACQUIRE | |||
| | |||
| | |||
|- | |||
|AI_IP_RELEASE | |||
| | |||
| | |||
|- | |||
|AI_IP_START_CHARGE | |||
| | |||
| | |||
|- | |||
|AI_IP_STOP_CHARGE | |||
| | |||
| | |||
|- | |||
|AI_IP_INSTANT_START_GAME | |||
| | |||
| | |||
|- | |||
|AI_IP_INSTANT_STOP_GAME | |||
| | |||
| | |||
|- | |||
|AI_IP_KICKED | |||
| | |||
| | |||
|- | |||
|AI_IP_READY_GAME | |||
| | |||
| | |||
|- | |||
|AI_IP_SET_START_TIME | |||
| | |||
| | |||
|} | |||
Revision as of 23:37, 2 September 2020
Responsible for user authentication and session creation. Cross-shard capabilities.
Communication Protocols
In the sections below, the table column "Structure" is denoted in a similar format used by the server source. Minus the opcode, which is type c anyways.
| Type | Description |
|---|---|
| c | Char |
| w | Word / Short |
| d | DWord / Int |
| q | QWord / Long |
| b | Byte Array |
| s | NUL-terminated C String |
| [] | Array |
| () | Conditional, based on config |
Game Server
TCP Port 2104. AuthServer and DBServer communicate through this port.
Incoming Packets
| Opcode | Description | Structure |
|---|---|---|
| AS_PLAY_OK | dd | |
| AS_PLAY_FAIL | cd | |
| AS_PLAY_GAME | d | |
| AS_QUIT_GAME | dwd | |
| AS_KICK_ACCOUNT | dw | |
| - | - | |
| AS_BAN_USER | dw | |
| AS_VERSION | d | |
| AS_PING | d | |
| AS_WRITE_USERDATA | db | |
| AS_SET_CONNECT | d | |
| AS_PLAY_USER_LIST | dsddddd | |
| - | - | |
| - | - | |
| - | - | |
| AS_SET_LOGIN_FREQUENCY | - | - |
| AS_QUEUE_SIZES | - | - |
| - | - | |
| AS_WRITE_GAMEDATA | db | |
| AS_READ_GAMEDATA | d | |
| AS_SHARD_TRANSFER | dd |
Outgoing Packets
| Opcode | Description | Structure |
|---|---|---|
| SQ_ABOUT_TO_PLAY | dsdddd | |
| SQ_KICK_ACCOUNT | dcs | |
| - | - | |
| SQ_VERSION | sd(d) | |
| - | - | |
| SQ_COMPLETE_USERLIST | d | |
| SQ_USER_DATA | db | |
| SQ_GAME_DATA | db |
Game Client
TCP Port 2106. AuthServer and Game communicate through this port.
Incoming Packets
| Opcode | Description | Structure |
|---|---|---|
| AQ_LOGIN | dbdw(c) | |
| AQ_SERVER_LIST | ddc(c[d]) | |
| AQ_ABOUT_TO_PLAY | ddc | |
| AQ_LOGOUT | dd | |
| AQ_LOGIN_MD5 | dbdw(c) | |
| AQ_SERVER_LIST_EXT | ddc(c[d]) | |
| Asia auth only | - |
Outgoing Packets
| Opcode | Description | Structure |
|---|---|---|
| AC_PROTOCOL_VER | Exchange common protocol version with client | dddbdb |
| AC_LOGIN_FAIL | Reject client authentication | c |
| AC_BLOCKED_ACCOUNT | Account banned for X until Y | dd |
| AC_LOGIN_OK | Allow client authentication | dddddddddddd(dd) |
| AC_SEND_SERVERLIST | Send list of shards | c[cddccwwcc(cs)] |
| AC_SEND_SERVER_FAIL | Something unexpected happened | c |
| AC_PLAY_FAIL | Server selected, but down possibly? | c |
| AC_PLAY_OK | Server selected, continue | ddc |
| AC_ACCOUNT_KICKED | Account kicked for X | c |
| AC_BLOCKED_ACCOUNT_WITH_MSG | Account permabanned for X | s |
| - | - | |
| AC_QUEUE_SIZE | Queue length and wait time | c[ccdd] |
| AC_HANDOFF_TO_QUEUE | Wait in server queue | ddc |
| - | - |
GM Tools
TCP Port 2108. Used for internal administration.
Incoming Packets
| Opcode | Description | Structure |
|---|---|---|
| IA_SERVER_VERSION | ||
| IA_IP_KIND | ||
| IA_IP_USE | ||
| IA_IP_START_OK | ||
| IA_IP_START_FAIL | ||
| IA_IP_USE_FAIL | ||
| IA_IP_SESSIONKEY | ||
| IA_IP_INSTANTLOGIN_OK | ||
| IA_IP_INSTANTLOGIN_FAIL | ||
| IA_IP_KICK | ||
| IA_IP_READY_FAIL | ||
| IA_IP_READY_OK | ||
| IA_IP_SET_STARTTIME_OK | ||
| IA_IP_SET_STARTTIME_FAIL |
Outgoing Packets
| Opcode | Description | Structure |
|---|---|---|
| AI_SERVER_VERSION | ||
| AI_IP_KIND | ||
| AI_IP_ACQUIRE | ||
| AI_IP_RELEASE | ||
| AI_IP_START_CHARGE | ||
| AI_IP_STOP_CHARGE | ||
| AI_IP_INSTANT_START_GAME | ||
| AI_IP_INSTANT_STOP_GAME | ||
| AI_IP_KICKED | ||
| AI_IP_READY_GAME | ||
| AI_IP_SET_START_TIME |