diff --git a/Readme.txt b/Readme.txt index 2cb5174..b86222e 100644 --- a/Readme.txt +++ b/Readme.txt @@ -11,6 +11,20 @@ website at: http://partner.steamgames.com Revision History: +---------------------------------------------------------------- +v1.18 7th February 2012 +---------------------------------------------------------------- +Cloud +* Removed ISteamRemoteStorage::PublishFile() and consolidated the API to PublishWorkshopFile() +* Updated ISteamRemoteStorage::PublishWorkshopFile() to better define the type of workshop file being published +* Replaced ISteamRemoteStorage::UpdatePublishedFile() with a new mechanism to update existing files through CreatePublishedFileUpdateRequest() UpdatePublishedFile[Property](), and CommitPublishedFileUpdate() +* Increased the description field for a workshop file from 256 -> 8000 characters +* Added ISteamRemoteStorage::GetUGCDownloadProgress() +* Added file size limit of 100MB to ISteamRemoteStorage::FileWrite() + +Apps: +* Added ISteamApps::RequestAppProofOfPurchaseKey + ---------------------------------------------------------------- v1.17 2nd November 2011 ---------------------------------------------------------------- diff --git a/SteamworksExample/SpaceWarClient.cpp b/SteamworksExample/SpaceWarClient.cpp index 5b16fd5..7670d34 100644 --- a/SteamworksExample/SpaceWarClient.cpp +++ b/SteamworksExample/SpaceWarClient.cpp @@ -1521,7 +1521,7 @@ void CSpaceWarClient::DrawHUDText() rect.left -= nAvatarWidth + nSpaceBetweenAvatarAndScore; } - _snprintf( rgchBuffer, sizeof( rgchBuffer), "%s\nScore: %2u ", rgchPlayerName, m_rguPlayerScores[i], pszVoiceState ); + _snprintf( rgchBuffer, sizeof( rgchBuffer), "%s\nScore: %2u ", rgchPlayerName, m_rguPlayerScores[i] ); m_pGameEngine->BDrawString( m_hHUDFont, rect, g_rgPlayerColors[i], TEXTPOS_RIGHT|TEXTPOS_VCENTER, rgchBuffer ); break; case 2: diff --git a/public/steam/isteamapps.h b/public/steam/isteamapps.h index bbb0bf1..1637a03 100644 --- a/public/steam/isteamapps.h +++ b/public/steam/isteamapps.h @@ -10,6 +10,9 @@ #pragma once #endif +const int k_cubAppProofOfPurchaseKeyMax = 64; // max bytes of a legacy cd key we support + + //----------------------------------------------------------------------------- // Purpose: interface to app data //----------------------------------------------------------------------------- @@ -47,13 +50,20 @@ public: virtual void InstallDLC( AppId_t nAppID ) = 0; virtual void UninstallDLC( AppId_t nAppID ) = 0; + // Request cd-key for yourself or owned DLC. If you are interested in this + // data then make sure you provide us with a list of valid keys to be distributed + // to users when they purchase the game, before the game ships. + // You'll receive an AppProofOfPurchaseKeyResponse_t callback when + // the key is available (which may be immediately). + virtual void RequestAppProofOfPurchaseKey( AppId_t nAppID ) = 0; + #ifdef _PS3 // Result returned in a RegisterActivationCodeResponse_t callresult virtual SteamAPICall_t RegisterActivationCode( const char *pchActivationCode ) = 0; #endif }; -#define STEAMAPPS_INTERFACE_VERSION "STEAMAPPS_INTERFACE_VERSION004" +#define STEAMAPPS_INTERFACE_VERSION "STEAMAPPS_INTERFACE_VERSION005" // callbacks #pragma pack( push, 8 ) @@ -91,6 +101,17 @@ struct RegisterActivationCodeResponse_t uint32 m_unPackageRegistered; // package that was registered. Only set on success }; +//----------------------------------------------------------------------------- +// Purpose: response to RegisterActivationCode() +//----------------------------------------------------------------------------- +struct AppProofOfPurchaseKeyResponse_t +{ + enum { k_iCallback = k_iSteamAppsCallbacks + 13 }; + EResult m_eResult; + uint32 m_nAppID; + char m_rgchKey[ k_cubAppProofOfPurchaseKeyMax ]; +}; + #pragma pack( pop ) #endif // ISTEAMAPPS_H diff --git a/public/steam/isteamfriends.h b/public/steam/isteamfriends.h index 9417033..269c346 100644 --- a/public/steam/isteamfriends.h +++ b/public/steam/isteamfriends.h @@ -110,6 +110,17 @@ enum EUserRestriction k_nUserRestrictionVoiceChat = 4, // user is not allowed to (or can't) send/recv voice chat k_nUserRestrictionGroupChat = 8, // user is not allowed to (or can't) send/recv group chat k_nUserRestrictionRating = 16, // user is too young according to rating in current region + k_nUserRestrictionGameInvites = 32, // user cannot send or recv game invites (e.g. mobile) + k_nUserRestrictionTrading = 64, // user cannot participate in trading (console, mobile) +}; + +//----------------------------------------------------------------------------- +// Purpose: information about user sessions +//----------------------------------------------------------------------------- +struct FriendSessionStateInfo_t +{ + uint32 m_uiOnlineSessionInstances; + uint8 m_uiPublishedToFriendsSessionInstance; }; @@ -200,14 +211,14 @@ public: virtual void SetInGameVoiceSpeaking( CSteamID steamIDUser, bool bSpeaking ) = 0; // activates the game overlay, with an optional dialog to open - // valid options are "Friends", "Community", "Players", "Settings", "LobbyInvite", "OfficialGameGroup", "Stats", "Achievements" + // valid options are "Friends", "Community", "Players", "Settings", "OfficialGameGroup", "Stats", "Achievements" virtual void ActivateGameOverlay( const char *pchDialog ) = 0; // activates game overlay to a specific place // valid options are // "steamid" - opens the overlay web browser to the specified user or groups profile // "chat" - opens a chat window to the specified user, or joins the group chat - // "tradeinvite" - opens a chat window to the specified user and invites them to trade + // "jointrade" - opens a window to a Steam Trading session that was started with the ISteamEconomy/StartTrade Web API // "stats" - opens the overlay web browser to the specified user's stats // "achievements" - opens the overlay web browser to the specified user's achievements virtual void ActivateGameOverlayToUser( const char *pchDialog, CSteamID steamID ) = 0; @@ -224,7 +235,6 @@ public: virtual void SetPlayedWith( CSteamID steamIDUserPlayedWith ) = 0; // activates game overlay to open the invite dialog. Invitations will be sent for the provided lobby. - // You can also use ActivateGameOverlay( "LobbyInvite" ) to allow the user to create invitations for their current public lobby. virtual void ActivateGameOverlayInviteDialog( CSteamID steamIDLobby ) = 0; // gets the small (32x32) avatar of the current user, which is a handle to be used in IClientUtils::GetImageRGBA(), or 0 if none set diff --git a/public/steam/isteamgamestats.h b/public/steam/isteamgamestats.h deleted file mode 100644 index 09daee6..0000000 --- a/public/steam/isteamgamestats.h +++ /dev/null @@ -1,75 +0,0 @@ -//====== Copyright © 1996-2008, Valve Corporation, All rights reserved. ======= -// -// Purpose: interface to steam for game play statistics -// -//============================================================================= - -#ifndef ISTEAMGAMESTATS_H -#define ISTEAMGAMESTATS_H -#ifdef _WIN32 -#pragma once -#endif - -//----------------------------------------------------------------------------- -// Purpose: Functions for recording game play sessions and details thereof -//----------------------------------------------------------------------------- -class ISteamGameStats -{ -public: - virtual SteamAPICall_t GetNewSession( int8 nAccountType, uint64 ulAccountID, int32 nAppID, RTime32 rtTimeStarted ) = 0; - virtual SteamAPICall_t EndSession( uint64 ulSessionID, RTime32 rtTimeEnded, int nReasonCode ) = 0; - virtual EResult AddSessionAttributeInt( uint64 ulSessionID, const char* pstrName, int32 nData ) = 0; - virtual EResult AddSessionAttributeString( uint64 ulSessionID, const char* pstrName, const char *pstrData ) = 0; - virtual EResult AddSessionAttributeFloat( uint64 ulSessionID, const char* pstrName, float fData ) = 0; - - virtual EResult AddNewRow( uint64 *pulRowID, uint64 ulSessionID, const char *pstrTableName ) = 0; - virtual EResult CommitRow( uint64 ulRowID ) = 0; - virtual EResult CommitOutstandingRows( uint64 ulSessionID ) = 0; - virtual EResult AddRowAttributeInt( uint64 ulRowID, const char *pstrName, int32 nData ) = 0; - virtual EResult AddRowAtributeString( uint64 ulRowID, const char *pstrName, const char *pstrData ) = 0; - virtual EResult AddRowAttributeFloat( uint64 ulRowID, const char *pstrName, float fData ) = 0; - - virtual EResult AddSessionAttributeInt64( uint64 ulSessionID, const char *pstrName, int64 llData ) = 0; - virtual EResult AddRowAttributeInt64( uint64 ulRowID, const char *pstrName, int64 llData ) = 0; -}; - -#define STEAMGAMESTATS_INTERFACE_VERSION "SteamGameStats001" - - -//----------------------------------------------------------------------------- -// Purpose: nAccountType for GetNewSession -//----------------------------------------------------------------------------- -enum EGameStatsAccountType -{ - k_EGameStatsAccountType_Steam = 1, // ullAccountID is a 64-bit SteamID for a player - k_EGameStatsAccountType_Xbox = 2, // ullAccountID is a 64-bit XUID - k_EGameStatsAccountType_SteamGameServer = 3, // ullAccountID is a 64-bit SteamID for a game server -}; - - -//----------------------------------------------------------------------------- -// Purpose: callback for GetNewSession() method -//----------------------------------------------------------------------------- -struct GameStatsSessionIssued_t -{ - enum { k_iCallback = k_iSteamGameStatsCallbacks + 1 }; - - uint64 m_ulSessionID; - EResult m_eResult; - bool m_bCollectingAny; - bool m_bCollectingDetails; -}; - - -//----------------------------------------------------------------------------- -// Purpose: callback for EndSession() method -//----------------------------------------------------------------------------- -struct GameStatsSessionClosed_t -{ - enum { k_iCallback = k_iSteamGameStatsCallbacks + 2 }; - - uint64 m_ulSessionID; - EResult m_eResult; -}; - -#endif // ISTEAMGAMESTATS_H diff --git a/public/steam/isteamremotestorage.h b/public/steam/isteamremotestorage.h index 5e1d62c..e4bd312 100644 --- a/public/steam/isteamremotestorage.h +++ b/public/steam/isteamremotestorage.h @@ -12,6 +12,14 @@ #include "isteamclient.h" + +//----------------------------------------------------------------------------- +// Purpose: Defines the largest allowed file size. Cloud files cannot be +// larger than 100MB. +//----------------------------------------------------------------------------- +const uint32 k_unMaxCloudFileSize = 100 * 1024 * 1024; + + //----------------------------------------------------------------------------- // Purpose: Structure that contains an array of const char * strings and the number of those strings //----------------------------------------------------------------------------- @@ -25,11 +33,13 @@ struct SteamParamStringArray_t // A handle to a piece of user generated content typedef uint64 UGCHandle_t; +typedef uint64 PublishedFileUpdateHandle_t; typedef uint64 PublishedFileId_t; const UGCHandle_t k_UGCHandleInvalid = 0xffffffffffffffffull; +const PublishedFileUpdateHandle_t k_PublishedFileUpdateHandleInvalid = 0xffffffffffffffffull; const uint32 k_cchPublishedDocumentTitleMax = 128 + 1; -const uint32 k_cchPublishedDocumentDescriptionMax = 256 + 1; +const uint32 k_cchPublishedDocumentDescriptionMax = 8000; const uint32 k_unEnumeratePublishedFilesMaxResults = 50; const uint32 k_cchTagListMax = 1024 + 1; const uint32 k_cchFilenameMax = 260; @@ -61,115 +71,11 @@ enum ERemoteStoragePublishedFileVisibility }; -//----------------------------------------------------------------------------- -// Purpose: helper structure for making updates to published files. -// make sure to update serialization/deserialization in interfacemap.cpp if new properties are added -//----------------------------------------------------------------------------- -#pragma pack( push, 8 ) -struct RemoteStorageUpdatePublishedFileRequest_t +enum EWorkshopFileType { -public: - RemoteStorageUpdatePublishedFileRequest_t() - { - Initialize( k_GIDNil ); - } - - RemoteStorageUpdatePublishedFileRequest_t( PublishedFileId_t unPublishedFileId ) - { - Initialize( unPublishedFileId ); - } - - PublishedFileId_t GetPublishedFileId() { return m_unPublishedFileId; } - - void SetFile( const char *pchFile ) - { - m_pchFile = pchFile; - m_bUpdateFile = true; - } - - const char *GetFile() { return m_pchFile; } - bool BUpdateFile() { return m_bUpdateFile; } - - void SetPreviewFile( const char *pchPreviewFile ) - { - m_pchPreviewFile = pchPreviewFile; - m_bUpdatePreviewFile = true; - } - - const char *GetPreviewFile() { return m_pchPreviewFile; } - bool BUpdatePreviewFile() { return m_bUpdatePreviewFile; } - - void SetTitle( const char *pchTitle ) - { - m_pchTitle = pchTitle; - m_bUpdateTitle = true; - } - - const char *GetTitle() { return m_pchTitle; } - bool BUpdateTitle() { return m_bUpdateTitle; } - - void SetDescription( const char *pchDescription ) - { - m_pchDescription = pchDescription; - m_bUpdateDescription = true; - } - - const char *GetDescription() { return m_pchDescription; } - bool BUpdateDescription() { return m_bUpdateDescription; } - - void SetVisibility( ERemoteStoragePublishedFileVisibility eVisibility ) - { - m_eVisibility = eVisibility; - m_bUpdateVisibility = true; - } - - const ERemoteStoragePublishedFileVisibility GetVisibility() { return m_eVisibility; } - bool BUpdateVisibility() { return m_bUpdateVisibility; } - - void SetTags( SteamParamStringArray_t *pTags ) - { - m_pTags = pTags; - m_bUpdateTags = true; - } - - SteamParamStringArray_t *GetTags() { return m_pTags; } - bool BUpdateTags() { return m_bUpdateTags; } - SteamParamStringArray_t **GetTagsPointer() { return &m_pTags; } - - void Initialize( PublishedFileId_t unPublishedFileId ) - { - m_unPublishedFileId = unPublishedFileId; - m_pchFile = 0; - m_pchPreviewFile = 0; - m_pchTitle = 0; - m_pchDescription = 0; - m_pTags = 0; - - m_bUpdateFile = false; - m_bUpdatePreviewFile = false; - m_bUpdateTitle = false; - m_bUpdateDescription = false; - m_bUpdateTags = false; - m_bUpdateVisibility = false; - } - -private: - PublishedFileId_t m_unPublishedFileId; - const char *m_pchFile; - const char *m_pchPreviewFile; - const char *m_pchTitle; - const char *m_pchDescription; - ERemoteStoragePublishedFileVisibility m_eVisibility; - SteamParamStringArray_t *m_pTags; - - bool m_bUpdateFile; - bool m_bUpdatePreviewFile; - bool m_bUpdateTitle; - bool m_bUpdateDescription; - bool m_bUpdateVisibility; - bool m_bUpdateTags; + k_EWorkshopFileTypeCommunity = 0, + k_EWorkshopFileTypeMicrotransaction = 1, }; -#pragma pack( pop ) //----------------------------------------------------------------------------- // Purpose: Functions for accessing, reading and writing files stored remotely @@ -211,11 +117,21 @@ class ISteamRemoteStorage virtual void SetCloudEnabledForApp( bool bEnabled ) = 0; // user generated content + + // Downloads a UGC file virtual SteamAPICall_t UGCDownload( UGCHandle_t hContent ) = 0; + + // Gets the amount of data downloaded so far for a piece of content. pnBytesExpected can be 0 if function returns false + // or if the transfer hasn't started yet, so be careful to check for that before dividing to get a percentage + virtual bool GetUGCDownloadProgress( UGCHandle_t hContent, int32 *pnBytesDownloaded, int32 *pnBytesExpected ) = 0; + + // Gets metadata for a file after it has been downloaded. This is the same metadata given in the RemoteStorageDownloadUGCResult_t call result virtual bool GetUGCDetails( UGCHandle_t hContent, AppId_t *pnAppID, char **ppchName, int32 *pnFileSizeInBytes, CSteamID *pSteamIDOwner ) = 0; + + // After download, gets the content of the file virtual int32 UGCRead( UGCHandle_t hContent, void *pvData, int32 cubDataToRead ) = 0; - // user generated content iteration + // Functions to iterate through UGC that has finished downloading but has not yet been read via UGCRead() virtual int32 GetCachedUGCCount() = 0; virtual UGCHandle_t GetCachedUGCHandle( int32 iCachedContent ) = 0; @@ -238,9 +154,15 @@ class ISteamRemoteStorage #endif // publishing UGC - virtual SteamAPICall_t PublishFile( const char *pchFile, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t *pTags ) = 0; - virtual SteamAPICall_t PublishWorkshopFile( const char *pchFile, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, SteamParamStringArray_t *pTags ) = 0; - virtual SteamAPICall_t UpdatePublishedFile( RemoteStorageUpdatePublishedFileRequest_t updatePublishedFileRequest ) = 0; + virtual SteamAPICall_t PublishWorkshopFile( const char *pchFile, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t *pTags, EWorkshopFileType eWorkshopFileType ) = 0; + virtual PublishedFileUpdateHandle_t CreatePublishedFileUpdateRequest( PublishedFileId_t unPublishedFileId ) = 0; + virtual bool UpdatePublishedFileFile( PublishedFileUpdateHandle_t updateHandle, const char *pchFile ) = 0; + virtual bool UpdatePublishedFilePreviewFile( PublishedFileUpdateHandle_t updateHandle, const char *pchPreviewFile ) = 0; + virtual bool UpdatePublishedFileTitle( PublishedFileUpdateHandle_t updateHandle, const char *pchTitle ) = 0; + virtual bool UpdatePublishedFileDescription( PublishedFileUpdateHandle_t updateHandle, const char *pchDescription ) = 0; + virtual bool UpdatePublishedFileVisibility( PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility ) = 0; + virtual bool UpdatePublishedFileTags( PublishedFileUpdateHandle_t updateHandle, SteamParamStringArray_t *pTags ) = 0; + virtual SteamAPICall_t CommitPublishedFileUpdate( PublishedFileUpdateHandle_t updateHandle ) = 0; virtual SteamAPICall_t GetPublishedFileDetails( PublishedFileId_t unPublishedFileId ) = 0; virtual SteamAPICall_t DeletePublishedFile( PublishedFileId_t unPublishedFileId ) = 0; virtual SteamAPICall_t EnumerateUserPublishedFiles( uint32 unStartIndex ) = 0; @@ -249,7 +171,8 @@ class ISteamRemoteStorage virtual SteamAPICall_t UnsubscribePublishedFile( PublishedFileId_t unPublishedFileId ) = 0; }; -#define STEAMREMOTESTORAGE_INTERFACE_VERSION "STEAMREMOTESTORAGE_INTERFACE_VERSION005" +#define STEAMREMOTESTORAGE_INTERFACE_VERSION "STEAMREMOTESTORAGE_INTERFACE_VERSION006" + // callbacks #pragma pack( push, 8 ) @@ -343,31 +266,6 @@ struct RemoteStoragePublishFileResult_t }; -//----------------------------------------------------------------------------- -// Purpose: The result of a call to GetPublishedFileDetails() -//----------------------------------------------------------------------------- -struct RemoteStorageGetPublishedFileDetailsResult_t -{ - enum { k_iCallback = k_iClientRemoteStorageCallbacks + 10 }; - EResult m_eResult; // The result of the operation. - PublishedFileId_t m_nPublishedFileId; - AppId_t m_nCreatorAppID; // ID of the app that created this file. - AppId_t m_nConsumerAppID; // ID of the app that created this file. - char m_rgchTitle[k_cchPublishedDocumentTitleMax]; // title of document - char m_rgchDescription[k_cchPublishedDocumentDescriptionMax]; // description of document - UGCHandle_t m_hFile; // The handle of the primary file - UGCHandle_t m_hPreviewFile; // The handle of the preview file - uint64 m_ulSteamIDOwner; // Steam ID of the user who created this content. - uint32 m_rtimeCreated; // time when the published file was created - uint32 m_rtimeUpdated; // time when the published file was last updated - ERemoteStoragePublishedFileVisibility m_eVisibility; - bool m_bBanned; - char m_rgchTags[k_cchTagListMax]; // comma separated list of all tags associated with this file - bool m_bTagsTruncated; // whether the list of tags was too long to be returned in the provided buffer - char m_pchFileName[k_cchFilenameMax]; // The name of the primary file -}; - - //----------------------------------------------------------------------------- // Purpose: The result of a call to DeletePublishedFile() //----------------------------------------------------------------------------- @@ -427,7 +325,7 @@ struct RemoteStorageUnsubscribePublishedFileResult_t //----------------------------------------------------------------------------- -// Purpose: The result of a call to UpdatePublishedFile() +// Purpose: The result of a call to CommitPublishedFileUpdate() //----------------------------------------------------------------------------- struct RemoteStorageUpdatePublishedFileResult_t { @@ -452,6 +350,63 @@ struct RemoteStorageDownloadUGCResult_t }; +//----------------------------------------------------------------------------- +// Purpose: The result of a call to GetPublishedFileDetails() +//----------------------------------------------------------------------------- +struct RemoteStorageGetPublishedFileDetailsResult_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 18 }; + EResult m_eResult; // The result of the operation. + PublishedFileId_t m_nPublishedFileId; + AppId_t m_nCreatorAppID; // ID of the app that created this file. + AppId_t m_nConsumerAppID; // ID of the app that will consume this file. + char m_rgchTitle[k_cchPublishedDocumentTitleMax]; // title of document + char m_rgchDescription[k_cchPublishedDocumentDescriptionMax]; // description of document + UGCHandle_t m_hFile; // The handle of the primary file + UGCHandle_t m_hPreviewFile; // The handle of the preview file + uint64 m_ulSteamIDOwner; // Steam ID of the user who created this content. + uint32 m_rtimeCreated; // time when the published file was created + uint32 m_rtimeUpdated; // time when the published file was last updated + ERemoteStoragePublishedFileVisibility m_eVisibility; + bool m_bBanned; + char m_rgchTags[k_cchTagListMax]; // comma separated list of all tags associated with this file + bool m_bTagsTruncated; // whether the list of tags was too long to be returned in the provided buffer + char m_pchFileName[k_cchFilenameMax]; // The name of the primary file + int32 m_nFileSize; // Size of the primary file + int32 m_nPreviewFileSize; // Size of the preview file +}; + +// +// IMPORTANT! k_iClientRemoteStorageCallbacks + 19, 20 is used, see iclientremotestorage.h +// + + +//----------------------------------------------------------------------------- +// Purpose: User subscribed to a file for the app (from within the app or on the web) +//----------------------------------------------------------------------------- +struct RemoteStoragePublishedFileSubscribed_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 21 }; + PublishedFileId_t m_nPublishedFileId; // The published file id + AppId_t m_nAppID; // ID of the app that will consume this file. +}; + +//----------------------------------------------------------------------------- +// Purpose: User unsubscribed from a file for the app (from within the app or on the web) +//----------------------------------------------------------------------------- +struct RemoteStoragePublishedFileUnsubscribed_t +{ + enum { k_iCallback = k_iClientRemoteStorageCallbacks + 22 }; + PublishedFileId_t m_nPublishedFileId; // The published file id + AppId_t m_nAppID; // ID of the app that will consume this file. +}; + + +// +// IMPORTANT! k_iClientRemoteStorageCallbacks + 23 is used, see iclientremotestorage.h +// + + #pragma pack( pop ) diff --git a/public/steam/isteamutils.h b/public/steam/isteamutils.h index b41f6e8..ed3cb89 100644 --- a/public/steam/isteamutils.h +++ b/public/steam/isteamutils.h @@ -130,6 +130,7 @@ public: // strings will be used by Steam. virtual void SetPSNGameBootInviteStrings( const char *pchSubject, const char *pchBody ) = 0; #endif + }; #define STEAMUTILS_INTERFACE_VERSION "SteamUtils005" diff --git a/public/steam/lib/linux32/libsdkencryptedappticket.so b/public/steam/lib/linux32/libsdkencryptedappticket.so index 5fa23da..186a2d6 100644 Binary files a/public/steam/lib/linux32/libsdkencryptedappticket.so and b/public/steam/lib/linux32/libsdkencryptedappticket.so differ diff --git a/public/steam/lib/win32/sdkencryptedappticket.dll b/public/steam/lib/win32/sdkencryptedappticket.dll index 97253a6..d6fa7f0 100644 Binary files a/public/steam/lib/win32/sdkencryptedappticket.dll and b/public/steam/lib/win32/sdkencryptedappticket.dll differ diff --git a/public/steam/lib/win32/sdkencryptedappticket.lib b/public/steam/lib/win32/sdkencryptedappticket.lib index ec632e8..8f68a83 100644 Binary files a/public/steam/lib/win32/sdkencryptedappticket.lib and b/public/steam/lib/win32/sdkencryptedappticket.lib differ diff --git a/public/steam/lib/win64/sdkencryptedappticket64.dll b/public/steam/lib/win64/sdkencryptedappticket64.dll index e0d4971..d62f783 100644 Binary files a/public/steam/lib/win64/sdkencryptedappticket64.dll and b/public/steam/lib/win64/sdkencryptedappticket64.dll differ diff --git a/public/steam/lib/win64/sdkencryptedappticket64.lib b/public/steam/lib/win64/sdkencryptedappticket64.lib index 36accb9..4c6883c 100644 Binary files a/public/steam/lib/win64/sdkencryptedappticket64.lib and b/public/steam/lib/win64/sdkencryptedappticket64.lib differ diff --git a/public/steam/matchmakingtypes.h b/public/steam/matchmakingtypes.h index d49620c..b9eeb1a 100644 --- a/public/steam/matchmakingtypes.h +++ b/public/steam/matchmakingtypes.h @@ -30,7 +30,7 @@ const int k_cbMaxGameServerMapName = 32; const int k_cbMaxGameServerGameDescription = 64; const int k_cbMaxGameServerName = 64; const int k_cbMaxGameServerTags = 128; -const int k_cbMaxGameServerGameData = 128; +const int k_cbMaxGameServerGameData = 2048; struct MatchMakingKeyValuePair_t { @@ -190,7 +190,7 @@ public: char m_szMap[k_cbMaxGameServerMapName]; ///< current map char m_szGameDescription[k_cbMaxGameServerGameDescription]; ///< game description uint32 m_nAppID; ///< Steam App ID of this server - int m_nPlayers; ///< current number of players on the server + int m_nPlayers; ///< total number of players currently on the server. INCLUDES BOTS!! int m_nMaxPlayers; ///< Maximum players that can join this server int m_nBotPlayers; ///< Number of bots (i.e simulated players) on this server bool m_bPassword; ///< true if this server needs a password to join diff --git a/public/steam/steamclientpublic.h b/public/steam/steamclientpublic.h index 65a86cc..ad25b05 100644 --- a/public/steam/steamclientpublic.h +++ b/public/steam/steamclientpublic.h @@ -97,6 +97,8 @@ enum EResult k_EResultFacebookQueryError = 70, // Facebook query returned an error k_EResultExpiredLoginAuthCode = 71, // account login denied due to auth code expired k_EResultIPLoginRestrictionFailed = 72, + k_EResultAccountLocked = 73, + k_EResultAccountLogonDeniedVerifiedEmailRequired = 74, }; // Error codes for use with the voice functions @@ -255,6 +257,9 @@ enum EChatRoomEnterResponse k_EChatRoomEnterResponseCommunityBan = 9, // Attempt to join a chat when the user has a community lock on their account k_EChatRoomEnterResponseMemberBlockedYou = 10, // Join failed - some member in the chat has blocked you from joining k_EChatRoomEnterResponseYouBlockedMember = 11, // Join failed - you have blocked some member already in the chat + k_EChatRoomEnterResponseNoRankingDataLobby = 12, // There is no ranking data available for the lobby + k_EChatRoomEnterResponseNoRankingDataUser = 13, // There is no ranking data available for the user + k_EChatRoomEnterResponseRankOutOfRange = 14, // The user is out of the allowable ranking range }; diff --git a/redistributable_bin/Steam.dll b/redistributable_bin/Steam.dll index 19f5d4f..7b65d2c 100644 Binary files a/redistributable_bin/Steam.dll and b/redistributable_bin/Steam.dll differ diff --git a/redistributable_bin/linux32/libsteam_api.so b/redistributable_bin/linux32/libsteam_api.so index a2bb2fb..3c5f76b 100644 Binary files a/redistributable_bin/linux32/libsteam_api.so and b/redistributable_bin/linux32/libsteam_api.so differ diff --git a/redistributable_bin/linux32/libtier0_s.so b/redistributable_bin/linux32/libtier0_s.so index 95cb95e..14ac3c5 100644 Binary files a/redistributable_bin/linux32/libtier0_s.so and b/redistributable_bin/linux32/libtier0_s.so differ diff --git a/redistributable_bin/linux32/libvstdlib_s.so b/redistributable_bin/linux32/libvstdlib_s.so index 68dbe18..4e9e023 100644 Binary files a/redistributable_bin/linux32/libvstdlib_s.so and b/redistributable_bin/linux32/libvstdlib_s.so differ diff --git a/redistributable_bin/linux32/steamclient.so b/redistributable_bin/linux32/steamclient.so index c81f2af..63b10e6 100644 Binary files a/redistributable_bin/linux32/steamclient.so and b/redistributable_bin/linux32/steamclient.so differ diff --git a/redistributable_bin/osx32/libSteam.dylib b/redistributable_bin/osx32/libSteam.dylib index 7c47c02..4620436 100644 Binary files a/redistributable_bin/osx32/libSteam.dylib and b/redistributable_bin/osx32/libSteam.dylib differ diff --git a/redistributable_bin/osx32/libsteam_api.dylib b/redistributable_bin/osx32/libsteam_api.dylib index 1f16d60..fbf0a65 100644 Binary files a/redistributable_bin/osx32/libsteam_api.dylib and b/redistributable_bin/osx32/libsteam_api.dylib differ diff --git a/redistributable_bin/osx32/libtier0_s.dylib b/redistributable_bin/osx32/libtier0_s.dylib index cd21e39..cd3cba2 100644 Binary files a/redistributable_bin/osx32/libtier0_s.dylib and b/redistributable_bin/osx32/libtier0_s.dylib differ diff --git a/redistributable_bin/osx32/libvstdlib_s.dylib b/redistributable_bin/osx32/libvstdlib_s.dylib index 6623cbb..3420e91 100644 Binary files a/redistributable_bin/osx32/libvstdlib_s.dylib and b/redistributable_bin/osx32/libvstdlib_s.dylib differ diff --git a/redistributable_bin/osx32/steamclient.dylib b/redistributable_bin/osx32/steamclient.dylib index 8573353..8c94d90 100644 Binary files a/redistributable_bin/osx32/steamclient.dylib and b/redistributable_bin/osx32/steamclient.dylib differ diff --git a/redistributable_bin/steam_api.dll b/redistributable_bin/steam_api.dll index 66aaca3..fa1ee11 100644 Binary files a/redistributable_bin/steam_api.dll and b/redistributable_bin/steam_api.dll differ diff --git a/redistributable_bin/steam_api.lib b/redistributable_bin/steam_api.lib index b85a9bc..dd0557e 100644 Binary files a/redistributable_bin/steam_api.lib and b/redistributable_bin/steam_api.lib differ diff --git a/redistributable_bin/steamclient.dll b/redistributable_bin/steamclient.dll index 57028fb..e17fca5 100644 Binary files a/redistributable_bin/steamclient.dll and b/redistributable_bin/steamclient.dll differ diff --git a/redistributable_bin/tier0_s.dll b/redistributable_bin/tier0_s.dll index 0fd7ded..0a5a859 100644 Binary files a/redistributable_bin/tier0_s.dll and b/redistributable_bin/tier0_s.dll differ diff --git a/redistributable_bin/vstdlib_s.dll b/redistributable_bin/vstdlib_s.dll index 476d41d..04ec987 100644 Binary files a/redistributable_bin/vstdlib_s.dll and b/redistributable_bin/vstdlib_s.dll differ diff --git a/redistributable_bin/win64/steam_api64.dll b/redistributable_bin/win64/steam_api64.dll index 37fd087..1122cb9 100644 Binary files a/redistributable_bin/win64/steam_api64.dll and b/redistributable_bin/win64/steam_api64.dll differ diff --git a/redistributable_bin/win64/steam_api64.lib b/redistributable_bin/win64/steam_api64.lib index ff205fa..147fc9e 100644 Binary files a/redistributable_bin/win64/steam_api64.lib and b/redistributable_bin/win64/steam_api64.lib differ diff --git a/steamworksexample/steamworksexample.xcodeproj/project.pbxproj b/steamworksexample/steamworksexample.xcodeproj/project.pbxproj index 170297e..7be2e64 100644 --- a/steamworksexample/steamworksexample.xcodeproj/project.pbxproj +++ b/steamworksexample/steamworksexample.xcodeproj/project.pbxproj @@ -425,10 +425,10 @@ GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.5; + MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; PREBINDING = NO; - SDKROOT = macosx10.5; + SDKROOT = macosx10.6; USER_HEADER_SEARCH_PATHS = ../public; }; name = Debug; @@ -445,9 +445,9 @@ GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.5; + MACOSX_DEPLOYMENT_TARGET = 10.6; PREBINDING = NO; - SDKROOT = macosx10.5; + SDKROOT = macosx10.6; USER_HEADER_SEARCH_PATHS = ../public; }; name = Release; diff --git a/tools/goldmaster/disk_assets/resources/SteamInstall_English.msi b/tools/goldmaster/disk_assets/resources/SteamInstall_English.msi index f47c20b..bb60076 100644 Binary files a/tools/goldmaster/disk_assets/resources/SteamInstall_English.msi and b/tools/goldmaster/disk_assets/resources/SteamInstall_English.msi differ