rename client and lobby flags

This commit is contained in:
Martin Michelsen
2022-09-22 22:50:14 -07:00
parent 7bcb040e8d
commit 29fc74470d
9 changed files with 106 additions and 94 deletions
+31 -23
View File
@@ -22,38 +22,46 @@ extern const uint64_t CLIENT_CONFIG_MAGIC;
struct Client {
enum Flag {
// This flag has two meanings. If set on a client with GameVersion::DC, then
// IS_DC_V1 is also set. In this case, the client is DC Network Trial
// Edition, which uses several commands that no other version uses. If this
// flag is set without IS_DC_V1, then the client is GC Episodes 1 & 2 Trial
// Edition, and therefore uses V2 encryption instead of V3 encryption, and
// doesn't support some commands.
// Note that this flag is NOT set for Episode 3 Trial Edition clients, since
// that version is similar enough to the release version of Episode 3 that
// newserv does not have to change its behavior at all.
IS_TRIAL_EDITION = 0x2000,
// Client is DC v1
IS_DC_V1 = 0x0010,
// For patch server clients, client is Blue Burst rather than PC
BB_PATCH = 0x0001,
IS_BB_PATCH = 0x0001,
// After joining a lobby, client will no longer send D6 commands when they
// close message boxes
NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN = 0x0002,
NO_D6_AFTER_LOBBY = 0x0002,
// Client has the above flag and has already joined a lobby, or is not GC
NO_MESSAGE_BOX_CLOSE_CONFIRMATION = 0x0004,
NO_D6 = 0x0004,
// Client is Episode 3, should be able to see CARD lobbies, and should only
// be able to see/join games with the IS_EPISODE_3 flag
EPISODE_3 = 0x0008,
// Client is DC v1 (disables some features)
DCV1 = 0x0010,
// Client is loading into a game
LOADING = 0x0020,
// Client is loading a quest
LOADING_QUEST = 0x0040,
// Client is in the information menu (login server only)
IN_INFORMATION_MENU = 0x0080,
// Client is at the welcome message (login server only)
AT_WELCOME_MESSAGE = 0x0100,
// be able to see/join games with the EPISODE_3_ONLY flag
IS_EPISODE_3 = 0x0008,
// Client disconnects if it receives B2 (send_function_call)
DOES_NOT_SUPPORT_SEND_FUNCTION_CALL = 0x0200,
// Client has already received a 97 (enable saves) command, so don't show
// the programs menu anymore
SAVE_ENABLED = 0x0400,
NO_SEND_FUNCTION_CALL = 0x0200,
// Client requires doubly-encrypted code section in send_function_call
ENCRYPTED_SEND_FUNCTION_CALL = 0x0800,
ENCRYPTED_SEND_FUNCTION_CALL = 0x0800,
// Client supports send_function_call but does not actually run the code
SEND_FUNCTION_CALL_CHECKSUM_ONLY = 0x1000,
// Client is GC Trial Edition, and therefore uses V2 encryption instead of
// V3, and doesn't support some commands
GC_TRIAL_EDITION = 0x2000,
// Client is loading into a game
LOADING = 0x0020,
// Client is loading a quest
LOADING_QUEST = 0x0040,
// Client is in the information menu (login server only)
IN_INFORMATION_MENU = 0x0080,
// Client is at the welcome message (login server only)
AT_WELCOME_MESSAGE = 0x0100,
// Client has already received a 97 (enable saves) command, so don't show
// the programs menu anymore
SAVE_ENABLED = 0x0400,
};
uint64_t id;