SteamConstants.cs 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. // This file is provided under The MIT License as part of Steamworks.NET.
  2. // Copyright (c) 2013-2019 Riley Labrecque
  3. // Please see the included LICENSE.txt for additional information.
  4. // This file is automatically generated.
  5. // Changes to this file will be reverted when you update Steamworks.NET
  6. #if UNITY_ANDROID || UNITY_IOS || UNITY_TIZEN || UNITY_TVOS || UNITY_WEBGL || UNITY_WSA || UNITY_PS4 || UNITY_WII || UNITY_XBOXONE || UNITY_SWITCH
  7. #define DISABLESTEAMWORKS
  8. #endif
  9. #if !DISABLESTEAMWORKS
  10. using System.Runtime.InteropServices;
  11. using IntPtr = System.IntPtr;
  12. namespace Steamworks {
  13. public static class Constants {
  14. public const string STEAMAPPLIST_INTERFACE_VERSION = "STEAMAPPLIST_INTERFACE_VERSION001";
  15. public const string STEAMAPPS_INTERFACE_VERSION = "STEAMAPPS_INTERFACE_VERSION008";
  16. public const string STEAMAPPTICKET_INTERFACE_VERSION = "STEAMAPPTICKET_INTERFACE_VERSION001";
  17. public const string STEAMCLIENT_INTERFACE_VERSION = "SteamClient019";
  18. public const string STEAMCONTROLLER_INTERFACE_VERSION = "SteamController007";
  19. public const string STEAMFRIENDS_INTERFACE_VERSION = "SteamFriends017";
  20. public const string STEAMGAMECOORDINATOR_INTERFACE_VERSION = "SteamGameCoordinator001";
  21. public const string STEAMGAMESERVER_INTERFACE_VERSION = "SteamGameServer012";
  22. public const string STEAMGAMESERVERSTATS_INTERFACE_VERSION = "SteamGameServerStats001";
  23. public const string STEAMHTMLSURFACE_INTERFACE_VERSION = "STEAMHTMLSURFACE_INTERFACE_VERSION_005";
  24. public const string STEAMHTTP_INTERFACE_VERSION = "STEAMHTTP_INTERFACE_VERSION003";
  25. public const string STEAMINPUT_INTERFACE_VERSION = "SteamInput001";
  26. public const string STEAMINVENTORY_INTERFACE_VERSION = "STEAMINVENTORY_INTERFACE_V003";
  27. public const string STEAMMATCHMAKING_INTERFACE_VERSION = "SteamMatchMaking009";
  28. public const string STEAMMATCHMAKINGSERVERS_INTERFACE_VERSION = "SteamMatchMakingServers002";
  29. public const string STEAMGAMESEARCH_INTERFACE_VERSION = "SteamMatchGameSearch001";
  30. public const string STEAMPARTIES_INTERFACE_VERSION = "SteamParties002";
  31. public const string STEAMMUSIC_INTERFACE_VERSION = "STEAMMUSIC_INTERFACE_VERSION001";
  32. public const string STEAMMUSICREMOTE_INTERFACE_VERSION = "STEAMMUSICREMOTE_INTERFACE_VERSION001";
  33. public const string STEAMNETWORKING_INTERFACE_VERSION = "SteamNetworking005";
  34. public const string STEAMPARENTALSETTINGS_INTERFACE_VERSION = "STEAMPARENTALSETTINGS_INTERFACE_VERSION001";
  35. public const string STEAMREMOTEPLAY_INTERFACE_VERSION = "STEAMREMOTEPLAY_INTERFACE_VERSION001";
  36. public const string STEAMREMOTESTORAGE_INTERFACE_VERSION = "STEAMREMOTESTORAGE_INTERFACE_VERSION014";
  37. public const string STEAMSCREENSHOTS_INTERFACE_VERSION = "STEAMSCREENSHOTS_INTERFACE_VERSION003";
  38. public const string STEAMUGC_INTERFACE_VERSION = "STEAMUGC_INTERFACE_VERSION013";
  39. public const string STEAMUSER_INTERFACE_VERSION = "SteamUser020";
  40. public const string STEAMUSERSTATS_INTERFACE_VERSION = "STEAMUSERSTATS_INTERFACE_VERSION011";
  41. public const string STEAMUTILS_INTERFACE_VERSION = "SteamUtils009";
  42. public const string STEAMVIDEO_INTERFACE_VERSION = "STEAMVIDEO_INTERFACE_V002";
  43. public const int k_cubAppProofOfPurchaseKeyMax = 240; // max supported length of a legacy cd key
  44. // maximum length of friend group name (not including terminating nul!)
  45. public const int k_cchMaxFriendsGroupName = 64;
  46. // maximum number of groups a single user is allowed
  47. public const int k_cFriendsGroupLimit = 100;
  48. public const int k_cEnumerateFollowersMax = 50;
  49. // maximum number of characters in a user's name. Two flavors; one for UTF-8 and one for UTF-16.
  50. // The UTF-8 version has to be very generous to accomodate characters that get large when encoded
  51. // in UTF-8.
  52. public const int k_cchPersonaNameMax = 128;
  53. public const int k_cwchPersonaNameMax = 32;
  54. // size limit on chat room or member metadata
  55. public const int k_cubChatMetadataMax = 8192;
  56. // size limits on Rich Presence data
  57. public const int k_cchMaxRichPresenceKeys = 30;
  58. public const int k_cchMaxRichPresenceKeyLength = 64;
  59. public const int k_cchMaxRichPresenceValueLength = 256;
  60. // game server flags
  61. public const int k_unServerFlagNone = 0x00;
  62. public const int k_unServerFlagActive = 0x01; // server has users playing
  63. public const int k_unServerFlagSecure = 0x02; // server wants to be secure
  64. public const int k_unServerFlagDedicated = 0x04; // server is dedicated
  65. public const int k_unServerFlagLinux = 0x08; // linux build
  66. public const int k_unServerFlagPassworded = 0x10; // password protected
  67. public const int k_unServerFlagPrivate = 0x20; // server shouldn't list on master server and
  68. // game server flags
  69. public const int k_unFavoriteFlagNone = 0x00;
  70. public const int k_unFavoriteFlagFavorite = 0x01; // this game favorite entry is for the favorites list
  71. public const int k_unFavoriteFlagHistory = 0x02; // this game favorite entry is for the history list
  72. //-----------------------------------------------------------------------------
  73. // Purpose: Defines the largest allowed file size. Cloud files cannot be written
  74. // in a single chunk over 100MB (and cannot be over 200MB total.)
  75. //-----------------------------------------------------------------------------
  76. public const int k_unMaxCloudFileChunkSize = 100 * 1024 * 1024;
  77. public const int k_cchPublishedDocumentTitleMax = 128 + 1;
  78. public const int k_cchPublishedDocumentDescriptionMax = 8000;
  79. public const int k_cchPublishedDocumentChangeDescriptionMax = 8000;
  80. public const int k_unEnumeratePublishedFilesMaxResults = 50;
  81. public const int k_cchTagListMax = 1024 + 1;
  82. public const int k_cchFilenameMax = 260;
  83. public const int k_cchPublishedFileURLMax = 256;
  84. public const int k_nScreenshotMaxTaggedUsers = 32;
  85. public const int k_nScreenshotMaxTaggedPublishedFiles = 32;
  86. public const int k_cubUFSTagTypeMax = 255;
  87. public const int k_cubUFSTagValueMax = 255;
  88. // Required with of a thumbnail provided to AddScreenshotToLibrary. If you do not provide a thumbnail
  89. // one will be generated.
  90. public const int k_ScreenshotThumbWidth = 200;
  91. public const int kNumUGCResultsPerPage = 50;
  92. public const int k_cchDeveloperMetadataMax = 5000;
  93. // size limit on stat or achievement name (UTF-8 encoded)
  94. public const int k_cchStatNameMax = 128;
  95. // maximum number of bytes for a leaderboard name (UTF-8 encoded)
  96. public const int k_cchLeaderboardNameMax = 128;
  97. // maximum number of details int32's storable for a single leaderboard entry
  98. public const int k_cLeaderboardDetailsMax = 64;
  99. //
  100. // Max size (in bytes of UTF-8 data, not in characters) of server fields, including null terminator.
  101. // WARNING: These cannot be changed easily, without breaking clients using old interfaces.
  102. //
  103. public const int k_cbMaxGameServerGameDir = 32;
  104. public const int k_cbMaxGameServerMapName = 32;
  105. public const int k_cbMaxGameServerGameDescription = 64;
  106. public const int k_cbMaxGameServerName = 64;
  107. public const int k_cbMaxGameServerTags = 128;
  108. public const int k_cbMaxGameServerGameData = 2048;
  109. //-----------------------------------------------------------------------------
  110. // Purpose: Base values for callback identifiers, each callback must
  111. // have a unique ID.
  112. //-----------------------------------------------------------------------------
  113. public const int k_iSteamUserCallbacks = 100;
  114. public const int k_iSteamGameServerCallbacks = 200;
  115. public const int k_iSteamFriendsCallbacks = 300;
  116. public const int k_iSteamBillingCallbacks = 400;
  117. public const int k_iSteamMatchmakingCallbacks = 500;
  118. public const int k_iSteamContentServerCallbacks = 600;
  119. public const int k_iSteamUtilsCallbacks = 700;
  120. public const int k_iClientFriendsCallbacks = 800;
  121. public const int k_iClientUserCallbacks = 900;
  122. public const int k_iSteamAppsCallbacks = 1000;
  123. public const int k_iSteamUserStatsCallbacks = 1100;
  124. public const int k_iSteamNetworkingCallbacks = 1200;
  125. public const int k_iSteamNetworkingSocketsCallbacks = 1220;
  126. public const int k_iSteamNetworkingMessagesCallbacks = 1250;
  127. public const int k_iSteamNetworkingUtilsCallbacks = 1280;
  128. public const int k_iClientRemoteStorageCallbacks = 1300;
  129. public const int k_iClientDepotBuilderCallbacks = 1400;
  130. public const int k_iSteamGameServerItemsCallbacks = 1500;
  131. public const int k_iClientUtilsCallbacks = 1600;
  132. public const int k_iSteamGameCoordinatorCallbacks = 1700;
  133. public const int k_iSteamGameServerStatsCallbacks = 1800;
  134. public const int k_iSteam2AsyncCallbacks = 1900;
  135. public const int k_iSteamGameStatsCallbacks = 2000;
  136. public const int k_iClientHTTPCallbacks = 2100;
  137. public const int k_iClientScreenshotsCallbacks = 2200;
  138. public const int k_iSteamScreenshotsCallbacks = 2300;
  139. public const int k_iClientAudioCallbacks = 2400;
  140. public const int k_iClientUnifiedMessagesCallbacks = 2500;
  141. public const int k_iSteamStreamLauncherCallbacks = 2600;
  142. public const int k_iClientControllerCallbacks = 2700;
  143. public const int k_iSteamControllerCallbacks = 2800;
  144. public const int k_iClientParentalSettingsCallbacks = 2900;
  145. public const int k_iClientDeviceAuthCallbacks = 3000;
  146. public const int k_iClientNetworkDeviceManagerCallbacks = 3100;
  147. public const int k_iClientMusicCallbacks = 3200;
  148. public const int k_iClientRemoteClientManagerCallbacks = 3300;
  149. public const int k_iClientUGCCallbacks = 3400;
  150. public const int k_iSteamStreamClientCallbacks = 3500;
  151. public const int k_IClientProductBuilderCallbacks = 3600;
  152. public const int k_iClientShortcutsCallbacks = 3700;
  153. public const int k_iClientRemoteControlManagerCallbacks = 3800;
  154. public const int k_iSteamAppListCallbacks = 3900;
  155. public const int k_iSteamMusicCallbacks = 4000;
  156. public const int k_iSteamMusicRemoteCallbacks = 4100;
  157. public const int k_iClientVRCallbacks = 4200;
  158. public const int k_iClientGameNotificationCallbacks = 4300;
  159. public const int k_iSteamGameNotificationCallbacks = 4400;
  160. public const int k_iSteamHTMLSurfaceCallbacks = 4500;
  161. public const int k_iClientVideoCallbacks = 4600;
  162. public const int k_iClientInventoryCallbacks = 4700;
  163. public const int k_iClientBluetoothManagerCallbacks = 4800;
  164. public const int k_iClientSharedConnectionCallbacks = 4900;
  165. public const int k_ISteamParentalSettingsCallbacks = 5000;
  166. public const int k_iClientShaderCallbacks = 5100;
  167. public const int k_iSteamGameSearchCallbacks = 5200;
  168. public const int k_iSteamPartiesCallbacks = 5300;
  169. public const int k_iClientPartiesCallbacks = 5400;
  170. public const int k_iSteamSTARCallbacks = 5500;
  171. public const int k_iClientSTARCallbacks = 5600;
  172. public const int k_iSteamRemotePlayCallbacks = 5700;
  173. public const int k_unSteamAccountIDMask = -1;
  174. public const int k_unSteamAccountInstanceMask = 0x000FFFFF;
  175. // we allow 3 simultaneous user account instances right now, 1= desktop, 2 = console, 4 = web, 0 = all
  176. public const int k_unSteamUserDesktopInstance = 1;
  177. public const int k_unSteamUserConsoleInstance = 2;
  178. public const int k_unSteamUserWebInstance = 4;
  179. public const int k_cchGameExtraInfoMax = 64;
  180. public const int k_nSteamEncryptedAppTicketSymmetricKeyLen = 32;
  181. public const int k_cubSaltSize = 8;
  182. public const ulong k_GIDNil = 0xffffffffffffffff;
  183. public const ulong k_TxnIDNil = k_GIDNil;
  184. public const ulong k_TxnIDUnknown = 0;
  185. public const int k_uPackageIdInvalid = -1;
  186. public const ulong k_ulAssetClassIdInvalid = 0x0;
  187. public const int k_uPhysicalItemIdInvalid = 0x0;
  188. public const int k_uCellIDInvalid = -1;
  189. public const int k_uPartnerIdInvalid = 0;
  190. public const ulong k_ulPartyBeaconIdInvalid = 0;
  191. public const int STEAM_CONTROLLER_MAX_COUNT = 16;
  192. public const int STEAM_CONTROLLER_MAX_ANALOG_ACTIONS = 16;
  193. public const int STEAM_CONTROLLER_MAX_DIGITAL_ACTIONS = 128;
  194. public const int STEAM_CONTROLLER_MAX_ORIGINS = 8;
  195. public const int STEAM_CONTROLLER_MAX_ACTIVE_LAYERS = 16;
  196. // When sending an option to a specific controller handle, you can send to all controllers via this command
  197. public const ulong STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS = 0xFFFFFFFFFFFFFFFF;
  198. public const float STEAM_CONTROLLER_MIN_ANALOG_ACTION_DATA = -1.0f;
  199. public const float STEAM_CONTROLLER_MAX_ANALOG_ACTION_DATA = 1.0f;
  200. public const ushort MASTERSERVERUPDATERPORT_USEGAMESOCKETSHARE = 0xFFFF;
  201. public const int INVALID_HTTPREQUEST_HANDLE = 0;
  202. public const int STEAM_INPUT_MAX_COUNT = 16;
  203. public const int STEAM_INPUT_MAX_ANALOG_ACTIONS = 16;
  204. public const int STEAM_INPUT_MAX_DIGITAL_ACTIONS = 128;
  205. public const int STEAM_INPUT_MAX_ORIGINS = 8;
  206. public const int STEAM_INPUT_MAX_ACTIVE_LAYERS = 16;
  207. // When sending an option to a specific controller handle, you can send to all devices via this command
  208. public const ulong STEAM_INPUT_HANDLE_ALL_CONTROLLERS = 0xFFFFFFFFFFFFFFFF;
  209. public const float STEAM_INPUT_MIN_ANALOG_ACTION_DATA = -1.0f;
  210. public const float STEAM_INPUT_MAX_ANALOG_ACTION_DATA = 1.0f;
  211. // maximum number of characters a lobby metadata key can be
  212. public const byte k_nMaxLobbyKeyLength = 255;
  213. public const int k_SteamMusicNameMaxLength = 255;
  214. public const int k_SteamMusicPNGMaxLength = 65535;
  215. //-----------------------------------------------------------------------------
  216. // Constants used for query ports.
  217. //-----------------------------------------------------------------------------
  218. public const int QUERY_PORT_NOT_INITIALIZED = 0xFFFF; // We haven't asked the GS for this query port's actual value yet.
  219. public const int QUERY_PORT_ERROR = 0xFFFE; // We were unable to get the query port for this server.
  220. }
  221. }
  222. #endif // !DISABLESTEAMWORKS