#import "header.steamd" #import "gamecoordinator.steamd" class MsgClientJustStrings { }; class MsgClientGenericResponse { EResult result; }; class MsgChannelEncryptRequest { const uint PROTOCOL_VERSION = 1; uint protocolVersion = MsgChannelEncryptRequest::PROTOCOL_VERSION; EUniverse universe = EUniverse::Invalid; }; class MsgChannelEncryptResponse { uint protocolVersion = MsgChannelEncryptRequest::PROTOCOL_VERSION; uint keySize = 128; }; class MsgChannelEncryptResult { EResult result = EResult::Invalid; }; class MsgClientNewLoginKey removed { uint uniqueID; byte<20> loginKey; }; class MsgClientNewLoginKeyAccepted removed { uint uniqueID; }; class MsgClientLogon { const uint ObfuscationMask = 0xBAADF00D; const uint CurrentProtocol = 65580; const uint ProtocolVerMajorMask = 0xFFFF0000; const uint ProtocolVerMinorMask = 0xFFFF; const ushort ProtocolVerMinorMinGameServers = 4; const ushort ProtocolVerMinorMinForSupportingEMsgMulti = 12; const ushort ProtocolVerMinorMinForSupportingEMsgClientEncryptPct = 14; const ushort ProtocolVerMinorMinForExtendedMsgHdr = 17; const ushort ProtocolVerMinorMinForCellId = 18; const ushort ProtocolVerMinorMinForSessionIDLast = 19; const ushort ProtocolVerMinorMinForServerAvailablityMsgs = 24; const ushort ProtocolVerMinorMinClients = 25; const ushort ProtocolVerMinorMinForOSType = 26; const ushort ProtocolVerMinorMinForCegApplyPESig = 27; const ushort ProtocolVerMinorMinForMarketingMessages2 = 27; const ushort ProtocolVerMinorMinForAnyProtoBufMessages = 28; const ushort ProtocolVerMinorMinForProtoBufLoggedOffMessage = 28; const ushort ProtocolVerMinorMinForProtoBufMultiMessages = 28; const ushort ProtocolVerMinorMinForSendingProtocolToUFS = 30; const ushort ProtocolVerMinorMinForMachineAuth = 33; const ushort ProtocolVerMinorMinForSessionIDLastAnon = 36; const ushort ProtocolVerMinorMinForEnhancedAppList = 40; const ushort ProtocolVerMinorMinForSteamGuardNotificationUI = 41; const ushort ProtocolVerMinorMinForProtoBufServiceModuleCalls = 42; const ushort ProtocolVerMinorMinForGzipMultiMessages = 43; const ushort ProtocolVerMinorMinForNewVoiceCallAuthorize = 44; const ushort ProtocolVerMinorMinForClientInstanceIDs = 44; }; class MsgClientVACBanStatus { uint numBans; }; class MsgClientAppUsageEvent { EAppUsageEvent appUsageEvent; gameidmarshal ulong gameID; ushort offline; }; class MsgClientEmailAddrInfo removed { uint passwordStrength; uint flagsAccountSecurityPolicy; boolmarshal byte validated; }; class MsgClientUpdateGuestPassesList { EResult result; int countGuestPassesToGive; int countGuestPassesToRedeem; }; class MsgClientRequestedClientStats removed { int countStats; }; class MsgClientP2PIntroducerMessage { steamidmarshal ulong steamID; EIntroducerRouting routingType; byte<1450> data; uint dataLen; }; class MsgClientOGSBeginSession { byte accountType; steamidmarshal ulong accountId; uint appId; uint timeStarted; }; class MsgClientOGSBeginSessionResponse { EResult result; boolmarshal byte collectingAny; boolmarshal byte collectingDetails; ulong sessionId; }; class MsgClientOGSEndSession { ulong sessionId; uint timeEnded; int reasonCode; int countAttributes; }; class MsgClientOGSEndSessionResponse { EResult result; }; class MsgClientOGSWriteRow { ulong sessionId; int countAttributes; }; class MsgClientGetFriendsWhoPlayGame { gameidmarshal ulong gameId; }; class MsgClientGetFriendsWhoPlayGameResponse { EResult result; gameidmarshal ulong gameId; uint countFriends; }; class MsgGSPerformHardwareSurvey { uint flags; }; class MsgGSGetPlayStatsResponse { EResult result; int rank; uint lifetimeConnects; uint lifetimeMinutesPlayed; }; class MsgGSGetReputationResponse { EResult result; uint reputationScore; boolmarshal byte banned; uint bannedIp; ushort bannedPort; ulong bannedGameId; uint timeBanExpires; }; class MsgGSDeny { steamidmarshal ulong steamId; EDenyReason denyReason; }; class MsgGSApprove { steamidmarshal ulong steamId; }; class MsgGSKick { steamidmarshal ulong steamId; EDenyReason denyReason; int waitTilMapChange; }; class MsgGSGetUserGroupStatus { steamidmarshal ulong steamIdUser; steamidmarshal ulong steamIdGroup; }; class MsgGSGetUserGroupStatusResponse { steamidmarshal ulong steamIdUser; steamidmarshal ulong steamIdGroup; EClanRelationship clanRelationship; EClanRank clanRank; }; class MsgClientJoinChat { steamidmarshal ulong steamIdChat; boolmarshal byte isVoiceSpeaker; }; class MsgClientChatEnter { steamidmarshal ulong steamIdChat; steamidmarshal ulong steamIdFriend; EChatRoomType chatRoomType; steamidmarshal ulong steamIdOwner; steamidmarshal ulong steamIdClan; byte chatFlags; EChatRoomEnterResponse enterResponse; int numMembers; }; class MsgClientChatMsg { steamidmarshal ulong steamIdChatter; steamidmarshal ulong steamIdChatRoom; EChatEntryType chatMsgType; }; class MsgClientChatMemberInfo { steamidmarshal ulong steamIdChat; EChatInfoType type; }; class MsgClientChatAction { steamidmarshal ulong steamIdChat; steamidmarshal ulong steamIdUserToActOn; EChatAction chatAction; }; class MsgClientChatActionResult { steamidmarshal ulong steamIdChat; steamidmarshal ulong steamIdUserActedOn; EChatAction chatAction; EChatActionResult actionResult; }; class MsgClientChatRoomInfo { steamidmarshal ulong steamIdChat; EChatInfoType type; }; class MsgClientSetIgnoreFriend { steamidmarshal ulong mySteamId; steamidmarshal ulong steamIdFriend; byte ignore; }; class MsgClientSetIgnoreFriendResponse { steamidmarshal ulong friendId; EResult result; }; class MsgClientLoggedOff { EResult result; int secMinReconnectHint; int secMaxReconnectHint; }; class MsgClientLogOnResponse { EResult result; int outOfGameHeartbeatRateSec; int inGameHeartbeatRateSec; steamidmarshal ulong clientSuppliedSteamId; uint ipPublic; uint serverRealTime; }; class MsgClientSendGuestPass removed { ulong giftId; byte giftType; uint accountId; }; class MsgClientSendGuestPassResponse removed { EResult result; }; class MsgClientServerUnavailable { ulong jobidSent; uint eMsgSent; EServerType eServerTypeUnavailable; }; class MsgClientCreateChat { EChatRoomType chatRoomType; gameidmarshal ulong gameId; steamidmarshal ulong steamIdClan; EChatPermission permissionOfficer; EChatPermission permissionMember; EChatPermission permissionAll; uint membersMax; byte chatFlags; steamidmarshal ulong steamIdFriendChat; steamidmarshal ulong steamIdInvited; }; class MsgClientCreateChatResponse { EResult result; steamidmarshal ulong steamIdChat; EChatRoomType chatRoomType; steamidmarshal ulong steamIdFriendChat; }; class MsgClientMarketingMessageUpdate2 { uint marketingMessageUpdateTime; uint count; }; class MsgClientGetLegacyGameKey { uint appId; }; class MsgClientGetLegacyGameKeyResponse { uint appId; EResult result; uint length; };