diff --git a/Generator/steam_sdk/isteamhttp.h b/Generator/steam_sdk/isteamhttp.h index 0d0cdcc..fb034ca 100644 --- a/Generator/steam_sdk/isteamhttp.h +++ b/Generator/steam_sdk/isteamhttp.h @@ -174,10 +174,6 @@ struct HTTPRequestCompleted_t // It will be false if we failed due to an internal error or client side network failure. bool m_bRequestSuccessful; - bool m_TMP_bSuccessfulA; - bool m_TMP_bSuccessfulB; - - // Will be the HTTP status code value returned by the server, k_EHTTPStatusCode200OK is the normal // OK response, if you get something else you probably need to treat it as a failure. EHTTPStatusCode m_eStatusCode; diff --git a/Generator/steam_sdk/isteaminput.h b/Generator/steam_sdk/isteaminput.h index 48a23ab..1c18f03 100644 --- a/Generator/steam_sdk/isteaminput.h +++ b/Generator/steam_sdk/isteaminput.h @@ -555,6 +555,7 @@ enum ESteamInputType k_ESteamInputType_MobileTouch, // Steam Link App On-screen Virtual Controller k_ESteamInputType_PS3Controller, // Currently uses PS4 Origins k_ESteamInputType_PS5Controller, // Added in SDK 151 + k_ESteamInputType_SteamDeckController, // Added in SDK 153 k_ESteamInputType_Count, k_ESteamInputType_MaximumPossibleValue = 255, }; @@ -581,23 +582,24 @@ enum ESteamInputLEDFlag // These values are passed into GetGlyphPNGForActionOrigin enum ESteamInputGlyphSize { - k_ESteamInputGlyphSize_Small, - k_ESteamInputGlyphSize_Medium, - k_ESteamInputGlyphSize_Large, + k_ESteamInputGlyphSize_Small, // 32x32 pixels + k_ESteamInputGlyphSize_Medium, // 128x128 pixels + k_ESteamInputGlyphSize_Large, // 256x256 pixels k_ESteamInputGlyphSize_Count, }; enum ESteamInputGlyphStyle { // Base-styles - cannot mix - ESteamInputGlyphStyle_Standard = 0x0, + ESteamInputGlyphStyle_Knockout = 0x0, // Face buttons will have colored labels/outlines on a knocked out background + // Rest of inputs will have white detail/borders on a knocked out background ESteamInputGlyphStyle_Light = 0x1, // Black detail/borders on a white background ESteamInputGlyphStyle_Dark = 0x2, // White detail/borders on a black background // Modifiers // Default ABXY/PS equivalent glyphs have a solid fill w/ color matching the physical buttons on the device ESteamInputGlyphStyle_NeutralColorABXY = 0x10, // ABXY Buttons will match the base style color instead of their normal associated color - ESteamInputGlyphStyle_OutlineOnlyABXY = 0x20, // ABXY Buttons will have colored outline and label text without fill + ESteamInputGlyphStyle_SolidABXY = 0x20, // ABXY Buttons will have a solid fill }; enum ESteamInputActionEventType @@ -895,7 +897,7 @@ public: virtual uint16 GetSessionInputConfigurationSettings() = 0; }; -#define STEAMINPUT_INTERFACE_VERSION "SteamInput005" +#define STEAMINPUT_INTERFACE_VERSION "SteamInput006" // Global interface accessor inline ISteamInput *SteamInput(); diff --git a/Generator/steam_sdk/isteamnetworkingsockets.h b/Generator/steam_sdk/isteamnetworkingsockets.h index e167506..157e12c 100644 --- a/Generator/steam_sdk/isteamnetworkingsockets.h +++ b/Generator/steam_sdk/isteamnetworkingsockets.h @@ -834,18 +834,20 @@ public: /// may often occur in practice. /// /// Returns false if a request was already in progress, true if a new request - /// was started. A SteamNetworkingFakeIP_t will be posted when the request + /// was started. A SteamNetworkingFakeIPResult_t will be posted when the request /// completes. /// - /// You can call this before you are logged in. For gameservers, doing so is - /// *required*, and all places where your public IP appears (such as the server - /// browser) will be replaced by the FakeIP, and the fake port at index 0. - /// A failure will not be posted (using SteamNetworkingFakeIP_t) unless we get - /// logged in, and then the request fails. Furthermore, it is assumed that - /// FakeIP allocation is essential for your application to function, and so - /// failure will not be reported until *several* retries have been attempted, - /// possibly lasting several minutes. It is highly recommended to treat failure - /// as fatal. + /// For gameservers, you *must* call this after initializing the SDK but before + /// beginning login. Steam needs to know in advance that FakeIP will be used. + /// Everywhere your public IP would normally appear (such as the server browser) will be + /// replaced by the FakeIP, and the fake port at index 0. The request is actually queued + /// until the logon completes, so you must not wait until the allocation completes + /// before logging in. Except for trivial failures that can be detected locally + /// (e.g. invalid parameter), a SteamNetworkingFakeIPResult_t callback (whether success or + /// failure) will not be posted until after we have logged in. Furthermore, it is assumed + /// that FakeIP allocation is essential for your application to function, and so failure + /// will not be reported until *several* retries have been attempted. This process may + /// last several minutes. It is *highly* recommended to treat failure as fatal. /// /// To communicate using a connection-oriented (TCP-style) API: /// - Server creates a listen socket using CreateListenSocketP2PFakeIP diff --git a/Generator/steam_sdk/steam_api.json b/Generator/steam_sdk/steam_api.json index d6361c4..a848b79 100644 --- a/Generator/steam_sdk/steam_api.json +++ b/Generator/steam_sdk/steam_api.json @@ -1129,8 +1129,6 @@ { "fieldname":"m_hRequest", "fieldtype":"HTTPRequestHandle" }, { "fieldname":"m_ulContextValue", "fieldtype":"uint64" }, { "fieldname":"m_bRequestSuccessful", "fieldtype":"bool" }, - { "fieldname":"m_TMP_bSuccessfulA", "fieldtype":"bool" }, - { "fieldname":"m_TMP_bSuccessfulB", "fieldtype":"bool" }, { "fieldname":"m_eStatusCode", "fieldtype":"EHTTPStatusCode" }, { "fieldname":"m_unBodySize", "fieldtype":"uint32" } ], @@ -3340,7 +3338,8 @@ { "name":"k_ESteamInputType_MobileTouch", "value":"11" }, { "name":"k_ESteamInputType_PS3Controller", "value":"12" }, { "name":"k_ESteamInputType_PS5Controller", "value":"13" }, - { "name":"k_ESteamInputType_Count", "value":"14" }, + { "name":"k_ESteamInputType_SteamDeckController", "value":"14" }, + { "name":"k_ESteamInputType_Count", "value":"15" }, { "name":"k_ESteamInputType_MaximumPossibleValue", "value":"255" } ] }, @@ -3373,11 +3372,11 @@ { "enumname": "ESteamInputGlyphStyle", "values": [ - { "name":"ESteamInputGlyphStyle_Standard", "value":"0" }, + { "name":"ESteamInputGlyphStyle_Knockout", "value":"0" }, { "name":"ESteamInputGlyphStyle_Light", "value":"1" }, { "name":"ESteamInputGlyphStyle_Dark", "value":"2" }, { "name":"ESteamInputGlyphStyle_NeutralColorABXY", "value":"16" }, - { "name":"ESteamInputGlyphStyle_OutlineOnlyABXY", "value":"32" } + { "name":"ESteamInputGlyphStyle_SolidABXY", "value":"32" } ] }, { @@ -3969,6 +3968,16 @@ { "name":"k_ESteamNetworkingIdentityType__Force32bit", "value":"2147483647" } ] }, + { + "enumname": "ESteamNetworkingFakeIPType", + "values": [ + { "name":"k_ESteamNetworkingFakeIPType_Invalid", "value":"0" }, + { "name":"k_ESteamNetworkingFakeIPType_NotFake", "value":"1" }, + { "name":"k_ESteamNetworkingFakeIPType_GlobalIPv4", "value":"2" }, + { "name":"k_ESteamNetworkingFakeIPType_LocalIPv4", "value":"3" }, + { "name":"k_ESteamNetworkingFakeIPType__Force32Bit", "value":"2147483647" } + ] + }, { "enumname": "ESteamNetworkingConnectionState", "values": [ @@ -4083,6 +4092,7 @@ { "name":"k_ESteamNetworkingConfig_Callback_MessagesSessionRequest", "value":"204" }, { "name":"k_ESteamNetworkingConfig_Callback_MessagesSessionFailed", "value":"205" }, { "name":"k_ESteamNetworkingConfig_Callback_CreateConnectionSignaling", "value":"206" }, + { "name":"k_ESteamNetworkingConfig_Callback_FakeIPResult", "value":"207" }, { "name":"k_ESteamNetworkingConfig_P2P_STUN_ServerList", "value":"103" }, { "name":"k_ESteamNetworkingConfig_P2P_Transport_ICE_Enable", "value":"104" }, { "name":"k_ESteamNetworkingConfig_P2P_Transport_ICE_Penalty", "value":"105" }, @@ -8838,7 +8848,7 @@ { "kind": "user", "name": "SteamInput", - "name_flat": "SteamAPI_SteamInput_v005" + "name_flat": "SteamAPI_SteamInput_v006" } ], "classname": "ISteamInput", @@ -9278,7 +9288,7 @@ "returntype": "uint16" } ], - "version_string": "SteamInput005" + "version_string": "SteamInput006" }, { "accessors": [ @@ -11770,33 +11780,6 @@ ], "returntype": "HSteamListenSocket" }, - { - "methodname": "GetFakeIP", - "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetFakeIP", - "params": [ - { "paramname":"idxFirstPort", "paramtype":"int" }, - { "paramname":"pInfo", "paramtype":"SteamNetworkingFakeIPResult_t *" } - ], - "returntype": "void" - }, - { - "methodname": "BeginAsyncRequestFakeIP", - "methodname_flat": "SteamAPI_ISteamNetworkingSockets_BeginAsyncRequestFakeIP", - "params": [ - { "paramname":"nNumPorts", "paramtype":"int" } - ], - "returntype": "bool" - }, - { - "methodname": "CreateListenSocketP2PFakeIP", - "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2PFakeIP", - "params": [ - { "paramname":"idxFakePort", "paramtype":"int" }, - { "paramname":"nOptions", "paramtype":"int" }, - { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } - ], - "returntype": "HSteamListenSocket" - }, { "methodname": "ConnectP2P", "methodname_flat": "SteamAPI_ISteamNetworkingSockets_ConnectP2P", @@ -12155,6 +12138,42 @@ "params": [], "returntype": "void" }, + { + "methodname": "BeginAsyncRequestFakeIP", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_BeginAsyncRequestFakeIP", + "params": [ + { "paramname":"nNumPorts", "paramtype":"int" } + ], + "returntype": "bool" + }, + { + "methodname": "GetFakeIP", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetFakeIP", + "params": [ + { "paramname":"idxFirstPort", "paramtype":"int" }, + { "paramname":"pInfo", "paramtype":"SteamNetworkingFakeIPResult_t *" } + ], + "returntype": "void" + }, + { + "methodname": "CreateListenSocketP2PFakeIP", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateListenSocketP2PFakeIP", + "params": [ + { "paramname":"idxFakePort", "paramtype":"int" }, + { "paramname":"nOptions", "paramtype":"int" }, + { "paramname":"pOptions", "paramtype":"const SteamNetworkingConfigValue_t *" } + ], + "returntype": "HSteamListenSocket" + }, + { + "methodname": "GetRemoteFakeIPForConnection", + "methodname_flat": "SteamAPI_ISteamNetworkingSockets_GetRemoteFakeIPForConnection", + "params": [ + { "paramname":"hConn", "paramtype":"HSteamNetConnection" }, + { "paramname":"pOutAddr", "paramtype":"SteamNetworkingIPAddr *" } + ], + "returntype": "EResult" + }, { "methodname": "CreateFakeUDPPort", "methodname_flat": "SteamAPI_ISteamNetworkingSockets_CreateFakeUDPPort", @@ -12298,6 +12317,31 @@ ], "returntype": "void" }, + { + "methodname": "IsFakeIPv4", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_IsFakeIPv4", + "params": [ + { "paramname":"nIPv4", "paramtype":"uint32" } + ], + "returntype": "bool" + }, + { + "methodname": "GetIPv4FakeIPType", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetIPv4FakeIPType", + "params": [ + { "paramname":"nIPv4", "paramtype":"uint32" } + ], + "returntype": "ESteamNetworkingFakeIPType" + }, + { + "methodname": "GetRealIdentityForFakeIP", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_GetRealIdentityForFakeIP", + "params": [ + { "paramname":"fakeIP", "paramtype":"const SteamNetworkingIPAddr &" }, + { "paramname":"pOutRealIdentity", "paramtype":"SteamNetworkingIdentity *" } + ], + "returntype": "EResult" + }, { "methodname": "SetGlobalConfigValueInt32", "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalConfigValueInt32", @@ -12388,6 +12432,14 @@ ], "returntype": "bool" }, + { + "methodname": "SetGlobalCallback_FakeIPResult", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_FakeIPResult", + "params": [ + { "paramname":"fnCallback", "paramtype":"FnSteamNetworkingFakeIPResult" } + ], + "returntype": "bool" + }, { "methodname": "SetGlobalCallback_MessagesSessionRequest", "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SetGlobalCallback_MessagesSessionRequest", @@ -12478,6 +12530,14 @@ ], "returntype": "bool" }, + { + "methodname": "SteamNetworkingIPAddr_GetFakeIPType", + "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIPAddr_GetFakeIPType", + "params": [ + { "paramname":"addr", "paramtype":"const SteamNetworkingIPAddr &" } + ], + "returntype": "ESteamNetworkingFakeIPType" + }, { "methodname": "SteamNetworkingIdentity_ToString", "methodname_flat": "SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ToString", @@ -13399,6 +13459,18 @@ { "paramname":"x", "paramtype":"const SteamNetworkingIPAddr &" } ], "returntype": "bool" + }, + { + "methodname": "GetFakeIPType", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_GetFakeIPType", + "params": [], + "returntype": "ESteamNetworkingFakeIPType" + }, + { + "methodname": "IsFakeIP", + "methodname_flat": "SteamAPI_SteamNetworkingIPAddr_IsFakeIP", + "params": [], + "returntype": "bool" } ], "struct": "SteamNetworkingIPAddr" @@ -13528,6 +13600,18 @@ "params": [], "returntype": "uint32" }, + { + "methodname": "GetFakeIPType", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_GetFakeIPType", + "params": [], + "returntype": "ESteamNetworkingFakeIPType" + }, + { + "methodname": "IsFakeIP", + "methodname_flat": "SteamAPI_SteamNetworkingIdentity_IsFakeIP", + "params": [], + "returntype": "bool" + }, { "methodname": "SetLocalHost", "methodname_flat": "SteamAPI_SteamNetworkingIdentity_SetLocalHost", @@ -13837,6 +13921,7 @@ { "typedef":"FnSteamRelayNetworkStatusChanged", "type":"void (*)(SteamRelayNetworkStatus_t *)" }, { "typedef":"FnSteamNetworkingMessagesSessionRequest", "type":"void (*)(SteamNetworkingMessagesSessionRequest_t *)" }, { "typedef":"FnSteamNetworkingMessagesSessionFailed", "type":"void (*)(SteamNetworkingMessagesSessionFailed_t *)" }, + { "typedef":"FnSteamNetworkingFakeIPResult", "type":"void (*)(SteamNetworkingFakeIPResult_t *)" }, { "typedef":"HSteamNetConnection", "type":"unsigned int" }, { "typedef":"HSteamListenSocket", "type":"unsigned int" }, { "typedef":"HSteamNetPollGroup", "type":"unsigned int" }, diff --git a/Generator/steam_sdk/steam_api_flat.h b/Generator/steam_sdk/steam_api_flat.h index 84ebc34..5b213f7 100644 --- a/Generator/steam_sdk/steam_api_flat.h +++ b/Generator/steam_sdk/steam_api_flat.h @@ -652,9 +652,9 @@ S_API bool SteamAPI_ISteamHTTP_GetHTTPRequestWasTimedOut( ISteamHTTP* self, HTTP // ISteamInput // A versioned accessor is exported by the library -S_API ISteamInput *SteamAPI_SteamInput_v005(); +S_API ISteamInput *SteamAPI_SteamInput_v006(); // Inline, unversioned accessor to get the current version. Essentially the same as SteamInput(), but using this ensures that you are using a matching library. -inline ISteamInput *SteamAPI_SteamInput() { return SteamAPI_SteamInput_v005(); } +inline ISteamInput *SteamAPI_SteamInput() { return SteamAPI_SteamInput_v006(); } S_API bool SteamAPI_ISteamInput_Init( ISteamInput* self, bool bExplicitlyCallRunFrame ); S_API bool SteamAPI_ISteamInput_Shutdown( ISteamInput* self ); S_API bool SteamAPI_ISteamInput_SetInputActionManifestFilePath( ISteamInput* self, const char * pchInputActionManifestAbsolutePath ); diff --git a/Generator/steam_sdk/steam_api_internal.h b/Generator/steam_sdk/steam_api_internal.h index 5c56c3e..fcebd7b 100644 --- a/Generator/steam_sdk/steam_api_internal.h +++ b/Generator/steam_sdk/steam_api_internal.h @@ -269,6 +269,7 @@ enum { k_iSteam2AsyncCallbacks = 1900 }; enum { k_iSteamGameStatsCallbacks = 2000 }; enum { k_iSteamHTTPCallbacks = 2100 }; enum { k_iSteamScreenshotsCallbacks = 2300 }; +// NOTE: 2500-2599 are reserved enum { k_iSteamStreamLauncherCallbacks = 2600 }; enum { k_iSteamControllerCallbacks = 2800 }; enum { k_iSteamUGCCallbacks = 3400 };