The [doclink=sdk]Steamworks SDK[/doclink] comes with a great example application called [doclink=sdk/api/example]Spacewar[/doclink] that shows off the full breadth of Steam features and should be your first stop to see all Steam features in action. This tutorial distills that information found in Spacewar and the leaderboards API found within [api]ISteamUserStats[/api] down to just the necessary information required for Steam Leaderboards to keep things as straightforward as possible. …
To fully enable achievements and complete your release checklist, you also need to check the [b]Steam Achievements[/b] option under [b]Supported Features[/b] in your store page's basic info. To pass the release checklist, every achievement must have a name in each of the languages you've configured, and must have an icon. …
[/b] Set names are shown to players in many places, including in the Steam Client. [*] [b]Localize set names[/b] for each language your game supports, using the set localization CSV or the editor. [*] [b]Test with developer-only sets[/b] before releasing new achievements to players. …
When all of the beacon slots are occupied - either by reservations for users still launching the game, or completed slots for users in the party - Steam will hide and disable the beacon. To cancel the beacon - for instance when the party is full and the game begins - call [api]ISteamParties::DestroyBeacon[/api]. The client side of this operation - seeing and following beacons - can also be managed by your game. …
For instance the Name, or the URL for an icon if the location type supports icons (for example, the icon for a Steam Chat Room Group). [b]Returns:[/b] bool [section=callbacks]Callbacks[/section] These are callbacks which can be fired by calling [api]steam_api::SteamAPI_RunCallbacks[/api]. …
Do not enter your Doing Business As (“DBA”) or “friendly name” or alias/nickname. Please enter your full legal name. The name you enter here must match the name as written on official documents with your bank and on United States IRS tax documents or foreign tax documents, if applicable. [*][h4]Q. …
[/td][/tr] [tr][td][b]usDurationMicroSec[/b][/td][td]unsigned short[/td][td]Duration of the pulse, in microseconds (1/1,000,000th of a second)[/td][/tr] [/table] Triggers a (low-level) haptic pulse on supported controllers. [b]Notes:[/b] Currently only the VSC supports haptic pulses. This API call will be ignored for all other controller models. …
[/td][/tr] [tr][td][b]nFlags[/b][/td][td]unsigned int[/td][td]Currently unused and reserved for future use.[/td][/tr] [/table] Triggers a repeated haptic pulse on supported controllers. [b]Notes:[/b] Currently only the VSC supports haptic pulses. This API call will be ignored for incompatible controller models. …
It is suggested that you call this function only when you are about to display the user's full inventory, or if you expect that the inventory may have changed. [b]Returns:[/b] bool This function always returns [b]true[/b] when called by a regular user, and always returns [b]false[/b] when called from SteamGameServer. …
[b]false[/b] under the following conditions: [list] [*] The function was not called by a regular user. This call is not supported on GameServers. [*] [code-inline]resultHandle[/code-inline] is invalid or the inventory result handle is not ready. [*] The value passed into [code-inline]punOutBufferSize[/code-inline] was smaller then expected and [code-inline]pOutBuffer[/code-inline] was not [b]NULL[/b]. …
The [doclink=sdk]Steamworks SDK[/doclink] comes with a great example application called [doclink=sdk/api/example]Spacewar[/doclink] that shows off the full breadth of Steam features and should be your first stop to see all Steam features in action. This tutorial distills the information found in Spacewar and the Stats and Achievements API down to just the necessary information required for Steam Stats to keep things as straightforward as possible. …
[subsection]Microsoft Windows[/subsection] Steam officially supports Windows 7 and above. As of January 2019, [url=https://support.steampowered.com/kb_article.php?ref=1558-AFCM-4577]Steam no longer supports Windows XP and Windows Vista[/url]. …
If your Mac application already supports 64-bit, please login to Steamworks and select the "macOS -> 64 Bit Binaries Included" checkbox in the "Supported Operating Systems" section for your application. …
There are two ways that Workshop items can get version information set: Mod authors can set this information, or your uploader tool can set this information. [olist] [*][b]Mod authors can set supported versions[/b] - Mod authors in the Steam Workshop can set version support by visiting the item history page and using the UI to configure which versions of the game work for each version of their Workshop item. [*][b]Your Workshop uploader can set supported versions[/b] - If your Workshop item uploader tool can validate support for an item, you can automatically mark it as supporting the appropriate versions, or you can build UI to make it easy for the mod author to choose supported versions and ranges at time of upload. …
You can even get the list of subscribed Workshop items for the user and check the supported game versions for each so you can warn the user if the newest version of the game doesn't work with one or more of their mods. …
If you are running under the debugger and stop the process, the clock might not advance the full wall clock time that has elapsed between calls. If the process is not blocked from normal operation, the timestamp values will track wall clock time, even if you don't call the function frequently. …
[section]Overview[/section] SteamVR Input is an API that makes it easy to support a variety of controllers and input devices in your VR application, without needing to think about supporting each controller separately. For device makers, SteamVR Input enables you to support many SteamVR applications without needing developers to build support for your device. You can read more about SteamVR Input [url=https://steamcommunity.com/games/250820/announcements/detail/3809361199426010680]here.…
The following controller profiles should have customized bindings, due to the difficulty in automatically rebinding them: [list] [*] HTC Vive wands [*] Valve Index controllers [*] Windows Mixed Reality controllers [/list] If you build with OpenVR, your application will automatically support any current and future OpenVR-supported head-mounted displays (HMDs), such as the HTC Vive, Oculus Rift, or Windows Mixed Reality family of devices. …
To get started, select "Edit Store Page" on the App Landing Page, then select the "Basic Info" tab and scroll down to "Supported Platforms". [docimg=SystemRequirementsVRFields.png]SystemRequirementsVRFields.png[/docimg] In the fields under "VR Devices and Support" you should describe both the SDKs and the specific devices that your game supports. …
[section=GetServerInfo]GetServerInfo[/section] [code=http]GET https://api.steampowered.com/ISteamWebAPIUtil/GetServerInfo/v1/[/code] This call has no additional parameters. [section=GetSupportedAPIList]GetSupportedAPIList[/section] [code=http]GET https://api.steampowered.com/ISteamWebAPIUtil/GetSupportedAPIList/v1/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td][/td][td]The Steamworks Web API authentication key which is required to receive restricted methods.[/td][/tr] [/table] Gets the list of supported API calls. This is used to build this documentation.…
More information on OpenVR and SteamVR can be found at http://steamvr.com. [subsection]Engine Support[/subsection] SteamVR implements OpenVR and is natively supported by Unreal Engine 4, and is also natively supported in Unity version 5.4+. …
[section]OpenVR Drivers[/section] Hardware device makers can develop OpenVR drivers to easily enable support for VR content on [url=https://store.steampowered.com]Steam[/url]. Steam is one of the largest digital distribution platforms worldwide, with thousands of games available. …
While you can lower recurring pricing over time as necessary, we do not support increasing the price of a recurring subscription. [section=FAQ]Frequently Asked Questions[/section] [b]Q: What payment methods does recurring billing support?…
[b]Q: What do customers need to know about recurring subscriptions?[/b] [b]A:[/b] There is a customer support FAQ [url=https://support.steampowered.com/kb_article.php?ref=8018-TAJK-6238]here[/url] with some additional information. …
However, ISteamUGC provides two methods for programmatically subscribing and unsubscribing to workshop items to support in-game item subscription management. [list] [*] [api]ISteamUGC::SubscribeItem[/api] - Subscribe to a workshop item. It will be downloaded and installed as soon as possible. [*] [api]ISteamUGC::UnsubscribeItem[/api] - Unsubscribe from a workshop item. …
This is useful for when you don't need all the information (e.g. you just want to get the IDs of the items a user has in their favorites list.) [*] [api]ISteamUGC::SetReturnKeyValueTags[/api] - Sets whether to return any key-value tags for the items on a pending UGC Query. [*] [api]ISteamUGC::SetReturnLongDescription[/api] - Sets whether to return the full description for the items on a pending UGC Query. [*] [api]ISteamUGC::SetReturnMetadata[/api] - Sets whether to return the developer specified metadata for the items on a pending UGC Query. [*] [api]ISteamUGC::SetReturnChildren[/api] - Sets whether to return the IDs of the child items of the items on a pending UGC Query. [*] [api]ISteamUGC::SetReturnAdditionalPreviews[/api] - Sets whether to return any additional images/videos attached to the items on a pending UGC Query. [*] [api]ISteamUGC::SetReturnTotalOnly[/api] - Sets whether to only return the total number of matching items on a pending UGC Query. -- The actual items will not be returned when [api]ISteamUGC::SteamUGCQueryCompleted_t[/api] is called. [*] [api]ISteamUGC::SetLanguage[/api] - Sets the language to return the title and description in for the items on a pending UGC Query. [*] [api]ISteamUGC::SetAllowCachedResponse[/api] - Sets whether results to be will be returned from the cache for the specific period of time on a pending UGC Query. …
Requires the method such as GET or POST and the absolute URL for the request. Both http and https are supported, so this string must start with "http://" or "https://" and should look like "http://store.steampowered.com/app/10/" or similar. …
[/td][/tr] [/table] Set a request header value for the HTTP request. Must be called before sending the request. A full list of standard request fields are available here on [url=https://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Request_fields]wikipedia[/url]. …
(The boundaries between the messages are maintained by the API.) [*] Both reliable and unreliable messages are supported. [*] Large messages are split into multiple packets, small messages are combined into fewer packets. [*] A robust ACK / reassembly / retransmission strategy. [*] Strong encryption and authentication. …
Eavesdropping / tampering requires hacking into the VAC-secured process. Impersonation requires access to the target's computer. [*] Supports relayed connections through the Valve network. This prevents IP addresses from being revealed, protecting your players and gameservers from attack. [*] Also supports standard connectivity over plain UDP using IPv4 or IPv6. …
Steam does not contain any paid advertising, nor are advertising models supported in games distributed on Steam. There are varying interpretations for what constitutes ‘advertising’ in a game, so the examples below are meant to help guide developers as to what is and is not supported on Steam. [section]Supported[/section] [list] [*][subsection]Product Placement[/subsection] Games may contain real brands, products, personalities, etc as part of gameplay, provided such portrayals are not disruptive and are appropriate within the context of the game. …
[docimg=steamworks_settings.png]steamworks_settings.png[/docimg] [section]Step 2 - Set Supported Operating Systems[/section] Navigate to the [b]Application > General[/b] tab for your app, and check [b]Android [/b] under [b]Supported Operating Systems[/b]. …
[docimg=steam_app_general.png]steam_app_general.png[/docimg] [docimg=android_supported_platforms.png]android_supported_platforms.png[/docimg] [section]Step 3 - Configure Depot[/section] Navigate to the [b]SteamPipe > Depots[/b] tab for your app. …