How It Fits Together
From OuroDev
Server Architecture
An attempt to explain the purpose of each part, and how they all fit together.
Components
Based on the source directories, it seems like a full CoX system (that is, all servers, and the game client) is made up of these items:
- accountserver
- arenaserver
- auctionserver
- authserver
- chatserver - chatadmin, chatclient
- cmdrelay
- dbserver - DB Server is the actual "shard" (and does surprisingly little database work).
- game - Game Client
- launcher - Launch (and update) the game client.
- mapserver
- missionserver
- queueserver
- raidserver
- statserver
- turnstileserver
Note: I'm probably slightly off, and will update this as I investigate further. Feel free to correct any lies in here!
Player's POV
From the player's point of view:
- Run Launcher. This is being replaced by things like Cream Soda.
- Launcher runs Game Client.
- Game Client connects to Auth Server, receives auth token of some sort.
- Game Client connects to DB Server, which is the actual "Shard". See Client-to-dbserver for info about how the client and DB Server interac
The Game Client also connects directly to ????TODO??? during play.
For more info about the Game Client, see Client Architecture.
Server's POV
??? TODO ???
See Dbserver-protocols for info about how the DB Server talks to things.