mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-23 06:36:54 +00:00
612 lines
26 KiB
C
612 lines
26 KiB
C
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
// Purpose:
|
||
|
//
|
||
|
// $NoKeywords: $
|
||
|
//=============================================================================
|
||
|
|
||
|
#ifndef CLIENTENUMS_H
|
||
|
#define CLIENTENUMS_H
|
||
|
#ifdef _WIN32
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
|
||
|
enum ELogonState
|
||
|
{
|
||
|
k_ELogonStateNotLoggedOn = 0,
|
||
|
k_ELogonStateLoggingOn = 1,
|
||
|
k_ELogonStateLoggingOff = 2,
|
||
|
k_ELogonStateLoggedOn = 3
|
||
|
};
|
||
|
|
||
|
|
||
|
// Enums for all personal questions supported by the system.
|
||
|
enum EPersonalQuestion
|
||
|
{
|
||
|
// Never ever change these after initial release.
|
||
|
k_EPSMsgNameOfSchool = 0, // Question: What is the name of your school?
|
||
|
k_EPSMsgFavoriteTeam = 1, // Question: What is your favorite team?
|
||
|
k_EPSMsgMothersName = 2, // Question: What is your mother's maiden name?
|
||
|
k_EPSMsgNameOfPet = 3, // Question: What is the name of your pet?
|
||
|
k_EPSMsgChildhoodHero = 4, // Question: Who was your childhood hero?
|
||
|
k_EPSMsgCityBornIn = 5, // Question: What city were you born in?
|
||
|
|
||
|
k_EPSMaxPersonalQuestion
|
||
|
};
|
||
|
|
||
|
|
||
|
// account flags (stored in DB)
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASEd
|
||
|
enum EAccountFlags
|
||
|
{
|
||
|
m_EAccountFlagNormalUser = 0, // Standard user level (yes, this is meant to be zero)
|
||
|
k_EAccountFlagPersonaNameSet = ( 1 << 0 ), // true if the user has set the persona name they really want, instead of the auto-generated one
|
||
|
k_EAccountFlagUnbannable = ( 1 << 1 ), // whatever happens, this account can't be banned
|
||
|
k_EAccountFlagPasswordSet = ( 1 << 2 ), // we've set the password at least once on this account
|
||
|
k_EAccountFlagSupport = ( 1 << 3 ), // Enables use of web support tool
|
||
|
k_EAccountFlagAdmin = ( 1 << 4 ), // The name says it all, can do everything
|
||
|
k_EAccountFlagSupervisor = ( 1 << 5 ), // support supervisory role
|
||
|
k_EAccountFlagAppEditor = ( 1 << 6 ), // Can edit app info
|
||
|
k_EAccountFlagHWIDSet = ( 1 << 7 ), // Set HWID once
|
||
|
k_EAccountFlagPersonalQASet = ( 1 << 8 ), // user has personal Question & anser set
|
||
|
k_EAccountFlagVacBeta = ( 1 << 9 ), // user participates in VAC beta tests
|
||
|
k_EAccountFlagDebug = ( 1 << 10 ), // user is in debug mode, eg VAC doesn't kick etc
|
||
|
k_EAccountFlagDisabled = ( 1 << 11 ), // account is disabled.
|
||
|
k_EAccountFlagLimitedUser = ( 1 << 12 ), // account is limited user account because it doesnt own anything
|
||
|
k_EAccountFlagLimitedUserForce = ( 1 << 13 ), // account is limited user account because we forced it to be
|
||
|
k_EAccountFlagEmailValidated = ( 1 << 14 ), // user has verified email address via WG
|
||
|
k_EAccountFlagMarketingTreatment = ( 1 << 15), // account is flagged as being in a treatment for marketing/sales experiments
|
||
|
};
|
||
|
|
||
|
// profile state (stored in DB)
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ECommunityProfileState
|
||
|
{
|
||
|
k_ECommunityProfileNotCreated = 0, // user hasn't setup community account yet
|
||
|
k_ECommunityProfileActive = 1, // user joined community, site is public
|
||
|
k_ECommunityProfilePrivate = 2, // user joined community, site is private
|
||
|
k_ECommunityProfileLocked = 3, // user got locked, content can't be changed but is still accessible
|
||
|
k_ECommunityProfileDisabled = 4, // user got disabled, site not accessible anymore
|
||
|
};
|
||
|
|
||
|
|
||
|
// profile privacy option setting (stored in DB)
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ECommunityPrivacyState
|
||
|
{
|
||
|
k_ECommunityPrivacyInvalid = 0,
|
||
|
k_ECommunityPrivacyPrivate = 1, // ain't nobody can see it
|
||
|
k_ECommunityPrivacyFriendsOnly = 2, // only your friends can see it
|
||
|
k_ECommunityPrivacyPublic = 3, // anybody could see it
|
||
|
};
|
||
|
|
||
|
enum ECommunityVisibilityState
|
||
|
{
|
||
|
k_ECommunityVisibilityPrivate = 1, // private, requester see only public fields
|
||
|
k_ECommunityVisibilityFriendsOnly = 2, // friends only, requester sees only public fields
|
||
|
k_ECommunityVisibilityOpen = 3, // it is visible to requester; they are owner or friend or public
|
||
|
k_ECommunityVisibilitySupportPrivate = 4, // was private, but it's a support account asking
|
||
|
k_ECommunityVisibilitySupportFriendsOnly = 5,// was friends only, but it's a support account asking
|
||
|
};
|
||
|
|
||
|
enum ECommentPermission
|
||
|
{
|
||
|
k_ECommentPermissionFriendsOnly = 0, // only friends can leave a comment
|
||
|
k_ECommentPermissionAnyone = 1, // anybody can leave a comment
|
||
|
k_ECommentPermissionSelfOnly = 2, // only the account owner can leave a comment
|
||
|
};
|
||
|
|
||
|
// Payment methods for purchases - BIT FLAGS so can be used to indicate
|
||
|
// acceptable payment methods for packages
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum EPaymentMethod
|
||
|
{
|
||
|
k_EPaymentMethodNone = 0x000, // user got the license for free
|
||
|
k_EPaymentMethodActivationCode = 0x001, // user paid by entering unused CD-Key or other activation code
|
||
|
k_EPaymentMethodCreditCard = 0x002, // user paid with credit card
|
||
|
k_EPaymentMethodPayPal = 0x004, // user paid with via paypal
|
||
|
k_EPaymentMethodGuestPass = 0x008, // user paid by redeeming a guest pass
|
||
|
k_EPaymentMethodHardwarePromo = 0x010, // user presented machine credentials
|
||
|
k_EPaymentMethodClickAndBuy = 0x020, // ClickandBuy
|
||
|
k_EPaymentMethodAutoGrant = 0x040, // server side purchased package, things like German specific TF2 free weekend
|
||
|
k_EPaymentMethodWallet = 0x080, // user paid with wallet
|
||
|
k_EPaymentMethodOEMTicket = 0x100, // user paid by redeeming a OEM license ticket
|
||
|
k_EPaymentMethodSplit = 0x200, // user paid with wallet AND a provider
|
||
|
};
|
||
|
|
||
|
// Sources for WalletTxn records
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum EWalletSource
|
||
|
{
|
||
|
k_EWalletSourceInvalid = 0,
|
||
|
k_EWalletSourcePurchase = 1, // Created from a purchase, refund, chargeback, or reverse chargeback (PurchaseRefGID -> TransID)
|
||
|
k_EWalletSourceGuestPass = 2, // Created from a guest pass (PurchaseRefGID -> GuestPassID)
|
||
|
k_EWalletSourceConversion = 3, // Created from a wallet conversion (PurchaseRefGID -> GID shared between debit & credit records)
|
||
|
k_EWalletSourceRebate = 4, // Created from a rebate (PurchaseRefGID -> TransID)
|
||
|
};
|
||
|
|
||
|
// License types
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ELicenseType
|
||
|
{
|
||
|
k_ENoLicense = 0, // for shipped goods
|
||
|
k_ESinglePurchase = 1, // single purchase
|
||
|
k_ESinglePurchaseLimitedUse = 2, // single purchase w/ expiration
|
||
|
k_ERecurringCharge = 3, // recurring subscription
|
||
|
k_ERecurringChargeLimitedUse = 4, // recurring subscription w/ limited minutes per period
|
||
|
k_ERecurringChargeLimitedUseWithOverages = 5, // like above but w/ soft limit and overage charges
|
||
|
};
|
||
|
|
||
|
// Flags for licenses - BITS
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ELicenseFlags
|
||
|
{
|
||
|
k_ELicenseFlagNone = 0x00, // just a place holder
|
||
|
k_ELicenseFlagRenew = 0x01, // Renew this license next period
|
||
|
k_ELicenseFlagRenewalFailed = 0x02, // Auto-renew failed
|
||
|
k_ELicenseFlagPending = 0x04, // Purchase or renewal is pending
|
||
|
k_ELicenseFlagExpired = 0x08, // Set if no longer active (whatever the reason)
|
||
|
k_ELicenseFlagCancelledByUser = 0x10, // Cancelled by the user
|
||
|
k_ELicenseFlagCancelledByAdmin = 0x20, // Cancelled by customer support
|
||
|
k_ELicenseFlagLowViolenceContent = 0x40,// license is for low violence content
|
||
|
};
|
||
|
|
||
|
// Status of a package
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum EPackageStatus
|
||
|
{
|
||
|
k_EPackageAvailable = 0, // Available for purchase and use
|
||
|
k_EPackagePreorder = 1, // Available for purchase, as a pre-order
|
||
|
k_EPackageUnavailable = 2, // Not available for new purchases, may still be owned
|
||
|
k_EPackageInvalid = 3, // Either an unknown package or a deleted one that nobody should own
|
||
|
};
|
||
|
|
||
|
// Purchase status
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum EPurchaseStatus
|
||
|
{
|
||
|
k_EPurchasePending = 0, // purchase is pending, valid but pending subscription
|
||
|
k_EPurchaseSucceeded = 1, // purchase successful, valid subscription
|
||
|
k_EPurchaseFailed = 2, // purchase failed, no subscription
|
||
|
k_EPurchaseRefunded = 3, // we refunded the purchase and removed subscription
|
||
|
k_EPurchaseInit = 4, // user started purchase
|
||
|
k_EPurchaseChargedback = 5, // the user issued a chargeback, we removed subscription
|
||
|
k_EPurchaseRevoked = 6, // we revoked the purchase and removed subscription. Usually stolen CD-Keys
|
||
|
k_EPurchaseInDispute = 7, // the purchase is being disputed by the user, preliminary to a chargeback
|
||
|
};
|
||
|
|
||
|
// LineItemTypes
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASEd
|
||
|
enum ELineItemType
|
||
|
{
|
||
|
k_ELineItemTypeInvalid = 0, // Unknown - load all purchase line items
|
||
|
k_ELineItemTypeMicroTxn = ( 1 << 0 ), // Transaction has data in MicroTxnLineItem table
|
||
|
k_ELineItemTypeWallet = ( 1 << 1 ), // Transaction has data in WalletLineItem table
|
||
|
k_ELineItemTypePkg = ( 1 << 2 ), // Transaction has data in PurchaseLineItem table
|
||
|
};
|
||
|
|
||
|
// Enum for the types of news push items you can get
|
||
|
enum ENewsUpdateType
|
||
|
{
|
||
|
k_EAppNews = 0, // news about a particular app
|
||
|
k_ESteamAds = 1, // Marketing messages
|
||
|
k_ESteamNews = 2, // EJ's corner and the like
|
||
|
k_ECDDBUpdate = 3, // backend has a new CDDB for you to load
|
||
|
k_EClientUpdate = 4, // new version of the steam client is available
|
||
|
};
|
||
|
|
||
|
// Detailed purchase result codes for the client
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum EPurchaseResultDetail
|
||
|
{
|
||
|
k_EPurchaseResultNoDetail = 0,
|
||
|
k_EPurchaseResultAVSFailure = 1,
|
||
|
k_EPurchaseResultInsufficientFunds = 2,
|
||
|
k_EPurchaseResultContactSupport = 3,
|
||
|
k_EPurchaseResultTimeout = 4,
|
||
|
|
||
|
k_EPurchaseResultInvalidPackage = 5,
|
||
|
k_EPurchaseResultInvalidPaymentMethod = 6,
|
||
|
k_EPurchaseResultInvalidData = 7,
|
||
|
k_EPurchaseResultOthersInProgress = 8,
|
||
|
k_EPurchaseResultAlreadyPurchased = 9,
|
||
|
k_EPurchaseResultWrongPrice = 10,
|
||
|
k_EPurchaseResultFraudCheckFailed = 11,
|
||
|
k_EPurchaseResultCancelledByUser = 12,
|
||
|
k_EPurchaseResultRestrictedCountry = 13,
|
||
|
k_EPurchaseResultBadActivationCode = 14, // this code gives no receipt
|
||
|
k_EPurchaseResultDuplicateActivationCode = 15,
|
||
|
|
||
|
k_EPurchaseResultUseOtherPaymentMethod = 16, // User should try a different payment method
|
||
|
k_EPurchaseResultUseOtherFundingSource = 17, // Select a different funding source (paypal)
|
||
|
k_EPurchaseResultInvalidShippingAddress = 18, // Shipping address is invalid (paypal)
|
||
|
k_EPurchaseResultRegionNotSupported = 19, // This region is not supported with this payment type
|
||
|
|
||
|
k_EPurchaseResultAcctIsBlocked = 20, // Acct has been blocked by provider - user should contact provider to resolve
|
||
|
k_EPurchaseResultAcctNotVerified = 21, // Provider indicated account needs to be verified for transaction to complete
|
||
|
|
||
|
k_EPurchaseResultInvalidAccount = 22, // Provider indicated the account is invalid or no longer usable
|
||
|
k_EPurchaseResultStoreBillingCountryMismatch = 23, // store country code & billing country code do not match
|
||
|
k_EPurchaseResultDoesNotOwnRequiredApp = 24, // user does not own one of the apps required for purchase
|
||
|
k_EPurchaseResultCanceledByNewTransaction = 25, // user made a new transaction which canceled an old, pending transaction
|
||
|
k_EPurchaseResultForceCanceledPending = 26, // A pending transaction was force canceled (no response from provider)
|
||
|
k_EPurchaseResultFailCurrencyTransProvider = 27, // selected transaction provider does not support calculated currency
|
||
|
k_EPurchaseResultFailedCyberCafe = 28, // cybercafe account tried to purchase or use an activation code
|
||
|
|
||
|
k_EPurchaseResultNeedsPreApproval = 29, // Transaction needs approval from support
|
||
|
k_EPurchaseResultPreApprovalDenied = 30, // Transaction was denied by support
|
||
|
k_EPurchaseResultWalletCurrencyMismatch = 31, // Currency of purchase does not match currency of wallet
|
||
|
};
|
||
|
|
||
|
// Type of system IM. The client can use this to do special UI handling in specific circumstances
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ESystemIMType
|
||
|
{
|
||
|
k_ESystemIMRawText = 0,
|
||
|
k_ESystemIMInvalidCard = 1,
|
||
|
k_ESystemIMRecurringPurchaseFailed = 2,
|
||
|
k_ESystemIMCardWillExpire = 3,
|
||
|
k_ESystemIMSubscriptionExpired = 4,
|
||
|
k_ESystemIMGuestPassReceived = 5, // User has received a guest pass from a friend
|
||
|
k_ESystemIMGuestPassGranted = 6, // System has granted a user a guest pass to give out
|
||
|
k_ESystemIMGiftRevoked = 7, // We revoked a gift due to chargeback, etc
|
||
|
|
||
|
//
|
||
|
k_ESystemIMTypeMax
|
||
|
};
|
||
|
|
||
|
// Ways an external cd key can be munged onto a users PC
|
||
|
enum ELegacyKeyRegistrationMethod
|
||
|
{
|
||
|
eLegacyKeyRegistrationMethodNone = 0, // doesn't support legacy cd keys
|
||
|
eLegacyKeyRegistrationMethodRegistry, // just place it into the registry
|
||
|
eLegacyKeyRegistrationMethodDisk, // put it in a file on disk
|
||
|
};
|
||
|
|
||
|
// Support events, generated by system or support input
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ESupportEvent
|
||
|
{
|
||
|
// support activity
|
||
|
eSupportNote = 0, // a generic support note
|
||
|
eSupportLogin = 1, // support account logged in out, data: IP:Port
|
||
|
eSupportLogoff = 2, // support account logged out, text: IP:Port
|
||
|
eSupportTicketCreated = 3, // a support ticket was created
|
||
|
eSupportTicketClosed = 4, // problem was solved, ticket closed
|
||
|
|
||
|
// account changes
|
||
|
eSupportEnableAccount = 5, // support enabled account, text: reason
|
||
|
eSupportDisableAccount = 6, // support disabled account, text: reason
|
||
|
eSupportChangeAccountPassword = 7, // support or user changed password, data: DONT include old password
|
||
|
eSupportChangeAccountEmail = 8, // support or user changed email, data: old email
|
||
|
eSupportChangeAccountName = 9, // support or user changed name, data: old name
|
||
|
eSupportChangeAccountPlayer = 10, // support or user changed player name, data: old name
|
||
|
|
||
|
eSupportPurchaseChargedback = 11, // a charge back was issued
|
||
|
eSupportPurchaseRefunded = 12, // a refund was issued
|
||
|
eSupportPurchaseForcedCompletion = 13, // support forced a pending purchase to complete
|
||
|
|
||
|
// license handling
|
||
|
eSupportLicenseAdded = 14, // support added a license, text: reason
|
||
|
eSupportLicenseCanceled = 15, // support or user cancel a license
|
||
|
eSupportLicenseChanged = 16, // support removed a license, text: reason
|
||
|
eSupportBannedGame = 17, // support banned game for an account
|
||
|
eSupportUnbannedGame = 18, // support unbanned game for an account
|
||
|
|
||
|
// purchase activity
|
||
|
eSupportRunPurchase = 19,
|
||
|
eSupportChangedCreditCard = 20, // support updated a credit card
|
||
|
eSupportSetNoFraudCheckFlag = 21, // support disabled fraud check, data: reason
|
||
|
|
||
|
// banning
|
||
|
eSupportBannedCreditCard = 22, // support banned a credit card
|
||
|
eSupportBannedIP = 23, // support banned an IP
|
||
|
eSupportBannedCDKey = 24, // support banned an CDKey
|
||
|
eSupportBannedCountry = 25, // support banned a country
|
||
|
eSupportBannedPayPalAccount = 26,
|
||
|
|
||
|
eSupportPurchaseCanceled = 27, // support forced a pending purchase to cancel
|
||
|
|
||
|
eSupportChangeAvatar = 28,
|
||
|
eSupportChangeProfileURL = 29,
|
||
|
|
||
|
eSupportRegisterCDKey = 30, // support added a CD key to this account
|
||
|
eSupportGrantGuestPass = 31, // support granted a guest pass to this account
|
||
|
eSupportResubmitTransaction = 32, // support resubmitted a transaction
|
||
|
|
||
|
eSupportResetContent = 33, // reset user content based on abuse reports
|
||
|
eSupportLockProfile = 34, // temp block a user from modifying community content
|
||
|
eSupportSetCommunityState = 35, // perm lock a user profile, can't be modified
|
||
|
eSupportDeleteAbuseReports = 36, // deleted abuse reports for the SteamID
|
||
|
eSupportSetAccountFlags = 37, // changed account flags
|
||
|
|
||
|
eSupportChargebackStatusUpdate = 38, // support updated the pending chargeback status
|
||
|
|
||
|
eSupportRefundForcedCompletion = 39, // support forced a pending refund to complete
|
||
|
eSupportRefundCanceled = 40, // support forced a pending refund to cancel
|
||
|
|
||
|
eSupportRevokeActivationKey = 41, // support revoked and unlocked activation key
|
||
|
eSupportReverseChargeback = 42, // a charge back was reversed
|
||
|
eSupportRejectedActivationKey = 43, // activation key was rejected (invalid or already used)
|
||
|
|
||
|
eSupportPurchaseError = 44, // Purchase error
|
||
|
eSupportAudited = 45,
|
||
|
|
||
|
// items
|
||
|
eSupportBanItems = 46, // support banned a user's items
|
||
|
eSupportRestoreBannedItems = 47, // support restored banned items
|
||
|
eSupportRestoreDeletedItems = 48, // support restored deleted items
|
||
|
|
||
|
// comments
|
||
|
eSupportDeleteComments = 49, // cleared comments on this account (not written by this account)
|
||
|
|
||
|
eSupportDeleteItems = 50, // support deleted a user's items
|
||
|
eSupportDeleteCachedCard = 51, // support deleted a user's cached credit card
|
||
|
|
||
|
eSupportConvertedWallet = 52, // user's wallet was converted
|
||
|
|
||
|
eSupportTxnApproved = 53, // PreApproval granted
|
||
|
eSupportTxnDenied = 54, // PreApproval denied
|
||
|
|
||
|
eSupportGCAction = 55, // used for all support actions from the GC
|
||
|
};
|
||
|
|
||
|
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ESupportTicket
|
||
|
{
|
||
|
// all kinds of problems tickets that have to be handled by support
|
||
|
k_ETicketUnknown = 0, // an unknown problem. yay.
|
||
|
k_ETicketManual = 1, // a problem manually entered by support.
|
||
|
k_ETicketFraudRedFlag = 2, // fraud detection marked this account
|
||
|
k_ETicketPurchaseError = 3, // a purchase error happened
|
||
|
k_ETicketChargeback = 4, // a chargeback needs attention
|
||
|
};
|
||
|
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ESupportTicketState
|
||
|
{
|
||
|
// all kinds of problems tickets that have to be handled by support
|
||
|
k_ETicketStateUnknown = 0, // support issue state is unknown
|
||
|
k_ETicketStateUnassigned = 1, // support issue is 'open' but not assigned yet
|
||
|
k_ETicketStateInProcess = 2, // support issue is assigned to an support actor
|
||
|
k_ETicketStateResolved = 3, // support issue is fixed and closed
|
||
|
k_ETicketStateUnresolved = 4, // support issue couldn't be fixed. closed anyway
|
||
|
k_ETicketStateAutoClosed = 5, // System closed the ticket automatically
|
||
|
};
|
||
|
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// types of content that can be reported as abused
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
//-----------------------------------------------------------------------------
|
||
|
enum ECommunityContentType
|
||
|
{
|
||
|
k_EContentUnspecified = 0,
|
||
|
k_EContentAll = 1, // reset all community content
|
||
|
k_EContentAvatarImage = 2, // clear avatar image
|
||
|
k_EContentProfileText = 3, // reset profile text
|
||
|
k_EContentWebLinks = 4, // delete web links
|
||
|
k_EContentAnnouncement = 5,
|
||
|
k_EContentEventText = 6,
|
||
|
k_EContentCustomCSS = 7,
|
||
|
k_EContentProfileURL = 8, // delete community URL ID
|
||
|
k_EContentComments = 9, // just comments this guy has written
|
||
|
};
|
||
|
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// types of reasons why a violation report was issued
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
//-----------------------------------------------------------------------------
|
||
|
enum EAbuseReportType
|
||
|
{
|
||
|
k_EAbuseUnspecified = 0,
|
||
|
k_EAbuseInappropriate = 1, // just not ok to post
|
||
|
k_EAbuseProhibited = 2, // prohibited by EULA or general law
|
||
|
k_EAbuseSpamming = 3, // excessive spamming
|
||
|
k_EAbuseAdvertisement = 4, // unwanted advertisement
|
||
|
k_EAbuseExploit = 5, // content data attempts to exploit code issue
|
||
|
k_EAbuseSpoofing = 6, // user/group is impersonating an official contact
|
||
|
k_EAbuseLanguage = 7, // bad language
|
||
|
k_EAbuseAdultContent = 8, // any kind of adult material, references etc
|
||
|
k_EAbuseHarassment = 9, // harassment, discrimination, racism etc
|
||
|
};
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// actions for a user within a clan for logging in the ClanHistory table
|
||
|
//-----------------------------------------------------------------------------
|
||
|
|
||
|
enum EClanAction
|
||
|
{
|
||
|
k_EJoined = 1, // joined the clan
|
||
|
k_ELeft = 2, // left the clan
|
||
|
k_EPromoted = 3, // promoted to officer
|
||
|
k_EDemoted = 4, // demoted from officer
|
||
|
k_EKicked = 5, // kicked off the clan
|
||
|
k_ECreated = 6, // clan was created
|
||
|
k_EInvited = 7, // invited someone
|
||
|
k_EEventCreated = 8, // clan event created
|
||
|
k_EEventUpdated = 9, // clan event updated
|
||
|
k_EEventDeleted = 10, // clan event deleted
|
||
|
k_EPermissionsChanged = 11, // clan permissions were changed
|
||
|
k_EAnnouncementCreated = 12, // clan announcement created
|
||
|
k_EAnnouncementUpdated = 13, // clan announcement updated
|
||
|
k_EAnnouncementDeleted = 14, // clan announcement deleted
|
||
|
k_EPOTWChanged = 15, // changed the POTW
|
||
|
k_ELinksChanged = 16, // links changed
|
||
|
k_EDetailsChanged = 17, // details changed
|
||
|
k_ESupportResetContent = 18, // support reset some or all of the clan content
|
||
|
k_ESupportLockedGroup = 19, // support locked this clan, it can't be modified anymore
|
||
|
k_ESupportUnlockedGroup = 20, // support unlocked this clan
|
||
|
k_ESupportChangedOwner = 21, // support transfered ownership
|
||
|
k_EMadePublic = 22, // made from private into public
|
||
|
k_EMadePrivate = 23, // made from public into private
|
||
|
k_ESupportDisabledGroup = 24, // support disabled this group, nobody can see it anymore
|
||
|
k_EKickedChat = 25, // kicked from chat
|
||
|
k_EBannedChat = 26, // banned from chat
|
||
|
k_EUnBannedChat = 27, // un-banned from chat
|
||
|
|
||
|
k_EHighestValidAction // keep me updated, please!
|
||
|
};
|
||
|
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// types of events for use in the Clan Event Type table
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
//-----------------------------------------------------------------------------
|
||
|
enum EClanEventType
|
||
|
{
|
||
|
k_EOtherEvent = 1,
|
||
|
k_EGameEvent = 2,
|
||
|
k_EPartyEvent = 3,
|
||
|
k_EMeetingEvent = 4,
|
||
|
k_ESpecialCauseEvent = 5,
|
||
|
k_EMusicAndArtsEvent = 6,
|
||
|
k_ESportsEvent = 7,
|
||
|
k_ETripEvent = 8,
|
||
|
k_EChatEvent = 9,
|
||
|
k_EGameReleaseEvent = 10,
|
||
|
};
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// types of marketing messages displayed to users
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
//-----------------------------------------------------------------------------
|
||
|
enum EMarketingMessageType
|
||
|
{
|
||
|
k_EMarketingMessageNowAvailable = 1,
|
||
|
k_EMarketingMessageWeekendDeal = 2,
|
||
|
k_EMarketingMessagePrePurchase = 3,
|
||
|
k_EMarketingMessagePlayNow = 4,
|
||
|
k_EMarketingMessagePreloadNow = 5,
|
||
|
k_EMarketingMessageGeneral = 6,
|
||
|
k_EMarketingMessageDemoQuit = 7,
|
||
|
k_EMarketingMessageGifting = 8,
|
||
|
k_EMarketingMessageEJsKorner = 9,
|
||
|
};
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// types of associations a marketing message may have
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
//-----------------------------------------------------------------------------
|
||
|
enum EMarketingMessageAssociationType
|
||
|
{
|
||
|
k_EMarketingMessageNoAssociation = 0,
|
||
|
k_EMarketingMessageAppAssociation = 1,
|
||
|
k_EMarketingMessageSubscriptionAssociation = 2,
|
||
|
k_EMarketingMessagePublisherAssociation = 3,
|
||
|
k_EMarketingMessageGenreAssociation = 4,
|
||
|
};
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// Marketing message visibility
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
//-----------------------------------------------------------------------------
|
||
|
enum EMarketingMessageVisibility
|
||
|
{
|
||
|
k_EMarketingMessageVisibleBeta = 1,
|
||
|
k_EMarketingMessageVisiblePublic = 2,
|
||
|
};
|
||
|
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// Structures used in multiple messages
|
||
|
//-----------------------------------------------------------------------------
|
||
|
// Purchase message constants
|
||
|
// WARNING: Do not change these if an instance of this record may exist in a database!!!
|
||
|
// BUGBUG derrick - Since these also define schema, they should be moved into steamschema.h
|
||
|
const int k_cchCCNumMax = 16 + 1;
|
||
|
const int k_cchHolderNameMax = 100 + 1;
|
||
|
const int k_cchExpYearMax = 4 + 1;
|
||
|
const int k_cchExpMonthMax = 2 + 1;
|
||
|
const int k_cchCVV2Max = 4 + 1;
|
||
|
const int k_cchAddressMax = 128 + 1;
|
||
|
const int k_cchAddress2Max = k_cchAddressMax;
|
||
|
const int k_cchCityMax = 50 + 1;
|
||
|
const int k_cchPostcodeMax = 16 + 1;
|
||
|
const int k_cchStateMax = 32 + 1;
|
||
|
const int k_cchPhoneMax = 20 + 1;
|
||
|
const int k_cchEmailMax = 100 + 1;
|
||
|
const int k_cchCountryCodeMax = 2 + 1;
|
||
|
const int k_cchPayPalCheckoutTokenMax = 20 + 1;
|
||
|
const int k_cchStateCodeMax = 3 + 1;
|
||
|
const int k_cchCurrencyCodeMax = 3 + 1;
|
||
|
|
||
|
const int k_cubMaxDfsURL = 128; // Max size for URL descriptors on DFS
|
||
|
|
||
|
|
||
|
// License information
|
||
|
struct LicenseInfo_t
|
||
|
{
|
||
|
PackageId_t m_unPackageID;
|
||
|
RTime32 m_RTime32Created;
|
||
|
RTime32 m_RTime32NextProcess;
|
||
|
int32 m_nMinuteLimit;
|
||
|
int32 m_nMinutesUsed;
|
||
|
EPaymentMethod m_ePaymentMethod;
|
||
|
uint32 m_nFlags;
|
||
|
char m_rgchPurchaseCountryCode[k_cchCountryCodeMax];
|
||
|
int32 m_nTerritoryCode;
|
||
|
};
|
||
|
|
||
|
// Supported Currency Codes
|
||
|
// WARNING: DO NOT RENUMBER EXISTING VALUES - STORED IN DATABASE
|
||
|
enum ECurrencyCode
|
||
|
{
|
||
|
k_ECurrencyCodeInvalid = 0,
|
||
|
k_ECurrencyCodeUSD = 1,
|
||
|
k_ECurrencyCodeGBP = 2,
|
||
|
k_ECurrencyCodeEUR = 3,
|
||
|
|
||
|
k_ECurrencyCodeMax = 4
|
||
|
};
|
||
|
|
||
|
enum ETaxType
|
||
|
{
|
||
|
k_ETaxTypeInvalid = 0,
|
||
|
k_ETaxTypeUSState = 1,
|
||
|
k_ETaxTypeVAT = 2
|
||
|
};
|
||
|
|
||
|
// client stat list
|
||
|
// needs to be kept in the same order, since it's part of the protocol
|
||
|
enum EClientStat
|
||
|
{
|
||
|
k_EClientStatP2PConnectionsUDP = 0,
|
||
|
k_EClientStatP2PConnectionsRelay = 1,
|
||
|
k_EClientStatP2PGameConnections = 2,
|
||
|
k_EClientStatP2PVoiceConnections = 3,
|
||
|
|
||
|
k_EClientStatBytesDownloaded = 4,
|
||
|
|
||
|
k_EClientStatMax, // must be last, used as array's of data
|
||
|
};
|
||
|
|
||
|
enum EP2PState
|
||
|
{
|
||
|
k_EP2PStateNotConnected,
|
||
|
k_EP2PStateUDP,
|
||
|
k_EP2PStateRelay,
|
||
|
};
|
||
|
|
||
|
// User response for authentication request
|
||
|
enum EMicroTxnAuthResponse
|
||
|
{
|
||
|
k_EMicroTxnAuthResponseInvalid = 0, // Invalid value
|
||
|
k_EMicroTxnAuthResponseAuthorize = 1, // user accepted microtransaction
|
||
|
k_EMicroTxnAuthResponseDeny = 2, // user denied microtransaction
|
||
|
k_EMicroTxnAuthResponseAutoDeny = 3, // client automatically denied microtransaction (user wasn't in game, etc.)
|
||
|
};
|
||
|
|
||
|
// Result of authorization request, returned to client
|
||
|
enum EMicroTxnAuthResult
|
||
|
{
|
||
|
k_EMicroTxnAuthResultInvalid = 0, // Invalid value
|
||
|
k_EMicroTxnAuthResultOK = 1, // Successfully authorized
|
||
|
k_EMicroTxnAuthResultFail = 2, // An error occurred
|
||
|
k_EMicroTxnAuthResultInsufficientFunds = 3, // User has insufficient funds to complete microtransaction
|
||
|
};
|
||
|
|
||
|
#endif
|