AuthServer: Difference between revisions
From OuroDev
Line 141: | Line 141: | ||
!Opcode | !Opcode | ||
!Description | !Description | ||
!Structure | |||
|- | |- | ||
|AQ_LOGIN | |AQ_LOGIN | ||
| | | | ||
|dbdw(c) | |||
|- | |- | ||
|AQ_SERVER_LIST | |AQ_SERVER_LIST | ||
| | | | ||
|ddc(c[d]) | |||
|- | |- | ||
|AQ_ABOUT_TO_PLAY | |AQ_ABOUT_TO_PLAY | ||
| | | | ||
|ddc | |||
|- | |- | ||
|AQ_LOGOUT | |AQ_LOGOUT | ||
| | | | ||
|dd | |||
|- | |- | ||
|AQ_LOGIN_MD5 | |AQ_LOGIN_MD5 | ||
| | | | ||
|dbdw(c) | |||
|- | |- | ||
|AQ_SERVER_LIST_EXT | |AQ_SERVER_LIST_EXT | ||
| | | | ||
|ddc(c[d]) | |||
|- | |||
|AQ_LOGIN_MD5_MD5 | |||
|Unused; Asia only | |||
|dbdw(c) | |||
|} | |} | ||
Revision as of 23:18, 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 the same format used in the server source. Minus the opcode, which is type "c."
Type | Description |
---|---|
c | Char |
w | Word / Short |
d | DWord / Int |
b | Byte Array |
s | NUL-terminated C String |
Game Server
TCP Port 2104. AuthServer and DBServer communicate through this port.
Incoming Packets
Opcode | Description |
---|---|
AS_PLAY_OK | |
AS_PLAY_FAIL | |
AS_PLAY_GAME | |
AS_QUIT_GAME | |
AS_KICK_ACCOUNT | |
AS_SERVER_USERNUM | |
AS_BAN_USER | |
AS_VERSION | |
AS_PING | |
AS_WRITE_USERDATA | |
AS_SET_CONNECT | |
AS_PLAY_USER_LIST | |
AS_SET_SERVER_ID | |
AS_SERVER_USER_NUM_BY_QUEUE_LEVEL | |
AS_FINISHED_QUEUE | |
AS_SET_LOGIN_FREQUENCY | |
AS_QUEUE_SIZES | |
AS_READ_USERDATA | |
AS_WRITE_GAMEDATA | |
AS_READ_GAMEDATA | |
AS_SHARD_TRANSFER |
Outgoing Packets
Opcode | Description | Structure |
---|---|---|
SQ_ABOUT_TO_PLAY | dsdddd | |
SQ_KICK_ACCOUNT | dcs | |
SQ_SERVER_NUM | - | |
SQ_VERSION | sd(d) | |
SQ_PING | - | |
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]) | |
AQ_LOGIN_MD5_MD5 | Unused; Asia only | dbdw(c) |
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. Unknown.