How it works
Client
-
Client is connecting to the server
Mod sends protocol version and token(if exists)
-
Packet received
Mod puts it into it’s config
Server
-
Player is logging in
-
Adding player nick to outdated list
-
Server schedules next operations
if Player still online:
- Player nick still in outdated list
- tokengen.enabled is "true" and there is no db and player nick not in tokens.yml file
- tokengen.enabled is "true" and there is db and player nick not in storage.mysql.tableName table
- Player nick not in verified list
- tokenDisabling.enabled is "true" and there is no db and player nick in disabled_tokens.yml file
- tokenDisabling.enabled is "true" and there is db and player nick in tokenDisabling.tableName table
- Else
Kick player with kick.outdated message
- Generate random token
- Send token to player
- Save player’s token in tokens.yml file
- Generate random token
- Send token to player
- Save player’s token in storage.mysql.tableName table
- Kick player with kick.message message
- Kick player with message from disabled_tokens.yml file (if specified)
- Kick player with message from tokenDisabling.tableName table (if specified)
- Pass player
- Parse all placeholders
-
- Remove player nick from outdated and verified lists
-
-
Packet received
- Parse client protocol version and player’s token from packet
- Remove player nick from outdated list
- If name in tokens.yml file and token is valid:
- Add player nick to verified list
- If name in storage.mysql.tableName table and token is valid:
- Add player nick to verified list
- Parse client protocol version and player’s token from packet