Facepunch.Steamworks Wiki

Revision Difference

SteamInventory.DeserializeAsync#519333

<member type="method" namespace="Steamworks" parent="SteamInventory" name="DeserializeAsync" async="true" static="true">⤶ <args>⤶ <arg name="data" type="byte[]"></arg>⤶ <arg name="dataLength" type="int" default="-1"></arg>⤶ </args>⤶ <return type="Task<Nullable<Steamworks.InventoryResult>>"></return>⤶ <summary>Deserializes a result set and verifies the signature bytes. ⤶ This call has a potential soft-failure mode where the Result is expired, it will ⤶ still succeed in this mode.The "expired" ⤶ result could indicate that the data may be out of date - not just due to timed ⤶ expiration( one hour ), but also because one of the items in the result set may ⤶ have been traded or consumed since the result set was generated.You could compare ⤶ the timestamp from GetResultTimestamp to ISteamUtils::GetServerRealTime to determine⤶ how old the data is. You could simply ignore the "expired" result code and ⤶ continue as normal, or you could request the player with expired data to send ⤶ an updated result set.⤶ You should call CheckResultSteamID on the result handle when it completes to verify ⤶ that a remote player is not pretending to have a different user's inventory.</summary>⤶ </member>⤶