[subsection=RequestAppProofOfPurchaseKey]RequestAppProofOfPurchaseKey[/subsection] [code=cpp]void RequestAppProofOfPurchaseKey( AppId_t nAppID );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]nAppID[/b][/td][td][apitype]steam_api::AppId_t[/apitype][/td][td][/td][/tr] [/table] Deprecated. [subsection=SetGamePerformanceSetting]SetGamePerformanceSetting[/subsection] [code=cpp]void SetGamePerformanceSetting();[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]setting[/b][/td][td][apitype]ISteamApps::EGamePerformanceSetting[/apitype][/td][td]The relative performance level.…
[/td][/tr] [/table] [b]See Also:[/b] [api]ISteamApps::BIsTimedTrial[/api] [section=enums]Enums[/section] These are enums which are defined for use with ISteamApps. [subsection=EGamePerformanceSetting]EGamePerformanceSetting[/subsection] Game performance levels. [table] [tr][th]Name[/th][th]Value[/th][th]Description[/th][/tr] [tr=k_EGamePerformanceSetting_NotSet][td][b]k_EGamePerformanceSetting_NotSet[/b][/td][td]0[/td][td][/td][/tr] [tr=k_EGamePerformanceSetting_Low][td][b]k_EGamePerformanceSetting_Low[/b][/td][td]1[/td][td][/td][/tr] [tr=k_EGamePerformanceSetting_Medium][td][b]k_EGamePerformanceSetting_Medium[/b][/td][td]2[/td][td][/td][/tr] [tr=k_EGamePerformanceSetting_High][td][b]k_EGamePerformanceSetting_High[/b][/td][td]3[/td][td][/td][/tr] [tr=k_EGamePerformanceSetting_Ultra][td][b]k_EGamePerformanceSetting_Ultra[/b][/td][td]4[/td][td][/td][/tr] [tr=k_EGamePerformanceSetting_Custom][td][b]k_EGamePerformanceSetting_Custom[/b][/td][td]4[/td][td][/td][/tr] [/table] [subsection=ERegisterActivationCodeResult]ERegisterActivationCodeResult[/subsection] Only used internally in Steam. …
Any keynames and values stored in the "string" or "dword" keys will be the registry names and values that get set. To set the [url=https://msdn.microsoft.com/en-us/library/aa266441(v=vs.60).aspx]default value[/url] for a registry key, you should enter the key name as [code-inline](Default)[/code-inline]. …
If the program's ExitCode is 0, then the install script assumes it was successful and writes your keyname as 1 in the registry. Steam customers love a quick and silent install. Add silent or quiet parameters to all run process commands and only add what you absolutely need for the game. …
[url=https://store.steampowered.com/news/group/4145017/view/668369251018476379]Learn more and set a reminder here[/url]. [/list] [b]January 2027[/b] [*][b]January 10, 11:59pm PST - Registration Deadline[/b] [list] [*]This is also when we recommend you have your marketing materials up-to-date to ensure you can be considered for potential inclusion in official Steam Next Fest marketing materials, in particular the official event trailer. …
All demos that have opted in to be available for press preview will be included. [*][b]February 22[/b] -[b] Steam Next Fest: February 2027 begins at 10am PST[/b]; set your demo live (or opt out if your plans have changed) before 10am PST. [*][b]March 1[/b] - Steam Next Fest: February 2027 concludes. [*][b]March 1[/b] - Steam Next Fest: February 2027 Wrap-Up (featuring games with the most played demos of the Fest) launches. …
If you need to transfer a game or other application to another Steamworks partner account, it can be done entirely through a set of tools built into the Steamworks website. These tools manages the approval process and keeps a history of transfers. Transfers may be useful in cases such as when a game changes ownership, or if an individual forms a corporation and needs to move the game to be distributed under the new corporation. …
Please note that only the partner who has payment rights for the game will be able to set pricing and discounts for shared apps. [section]Transfer of Attached Data[/section] All data, including sales, wishlists, followers, user reviews, etc. are associated with the game and will always be associated with the game. …
The information provided here will determine how your game appears relative to each customer's preferences. Because mature content such as depictions of violence and sex can be sensitive in nature, it is important that you make honest and accurate disclosures. …
Through the content survey and our own pre-release review, Valve attempts to meet three goals regarding Adult Only Sexual Content: enforce legal limits, respect game makers' creative freedom, and fulfill the expectations of customers. Having Live-Generated AI Adult Only Sexual Content during gameplay could affect our ability to meet these goals. The legal and customer risks are substantial enough that we don't want to ship Live-Generated AI Adult Only Sexual Content at this time. …
Once they've done so, you should see their event name and the organizer's contact info appear in your Steamworks dashboard. [subsection]2. Set Your Discount (Optional)[/subsection] Consider whether you'd like your game to be on discount during the event. This can be a good idea since events can often bring extra visibility to your game. If interested, you may set up your own discount event that includes some or all of the dates of the event, or, for your convenience, the event organizer may be able to share a (purely optional) custom discount event that will appear directly in your Discount Management Tool. …
If you find yourself using this feature for more than just fixing a few rare edge cases, you're probably overusing it. [/callout] [subsection]Action Set Layers[/subsection] In addition to Action Sets you can also overlay incremental changes to the active Action Set with an Action Set Layer. …
If your game did not have any controller and there's players who are using Steam Input, it would be better practice to call [url=https://partner.steamgames.com/doc/api/isteaminput#GetDeviceBindingRevision]GetDeviceBindingRevision[/url] or look at the configuration loaded callback and prompt the user rather than force players who've constructed custom configurations to rebuild them in the new action set structure. [section]Localization[/section] The master IGA file should include a localization section alongside the action set definitions. …
[url=https://store.steampowered.com/points/shop/c/stickers](Click here to see examples live in the Points Shop.)[/url][/h4] Sticker sets have been designed and animated in the past by the following animators (feel free to reach out to them for their availability and interest!)…
This image will be used to represent your startup movie in a user's inventory and in Steam client settings. [list] [*]No alpha is permitted. [*]No animation is permitted - it must be a single frame image. [*].png, .jpg and .webp are all accepted. …
[subsection]Invitation Process[/subsection] From the resulting list of eligible games, we will send email invitations to the developers associated with each game. This invitation will go out to Steamworks users who have set "Receive Steamworks communications" permission for eligible games. Reference the [doclink=#faq]Frequently Asked Questions[/doclink] below to ensure your communication preferences are set to permit these communications, or for details on how to access key information if opted out. …
You can edit per user here: https://partner.steamgames.com/pub/users/ Note that accounts with this permission setting must also have completed or must newly complete the additional confirmation request sent via email authentication in order to fully enable permission. …
. [*][b]June 14[/b] - [b]Steam Next Fest: June 2027 begins at 10am PDT[/b]; set your demo live (or opt out if your plans have changed) before 10am PDT. [*][b]June 21[/b] - Steam Next Fest: June 2027 concludes. [*][b]June 21[/b] - Steam Next Fest: June 2027 Wrap-Up (featuring games with the most played demos of the Fest) launches. [/list] [section=eligibility]Eligibility[/section] Steam Next Fest: June 2027 is open to upcoming games that meet all of the following criteria: [list] [*]Associated with a Steamworks developer account in good standing [*]Store page must be published and public [*]Is not a prologue, chapter 1, or otherwise 'demo' version of existing content available to customers [*]Includes a publicly playable demo by the time the festival begins [*]Released any time after the conclusion of the fest on June 21, 2027 [/list] [b]Please Note:[/b] [list] [*]All upcoming games may participate with a playable demo in Steam Next Fest, regardless of release date. [*]A game may only appear once in Steam Next Fest. …
You can also set the distance from the specified corner by using [api]ISteamUtils::SetOverlayNotificationInset[/api]. This position is per-game and is reset each launch. [subsection=SetVRHeadsetStreamingEnabled]SetVRHeadsetStreamingEnabled[/subsection] [code=cpp]void SetVRHeadsetStreamingEnabled( bool bEnabled );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]bEnabled[/b][/td][td]bool[/td][td]Turns VR HMD Streaming on ([b]true[/b]) or off ([b]false[/b]).…
[/td][/tr] [tr][td][doclink=sitelicense/users][/doclink][/td][td]Click here if you are a PC Cafe or VR Arcade customer and would like more information.[/td][/tr]…
[section]Steam Deck™ Branding Requirements and Logos[/section] Last Updated: May 2,2022 [docimg=300.jpg]300.jpg[/docimg] [docfile=steamDeck_guidelines_042922.pdf]Click here[/docfile] to view the Steam Deck Brand Guidelines [docfile=Steam_Deck_Logo_TM.eps]Click here[/docfile] to download Steam Deck logo files [section]Steam Early Access Branding Requirements[/section] We work hard to make sure that customers understand what they are buying when they get an Early Access title on Steam. We feel it is equally important that customers buying Steam Early Access titles in other places also understand what they are getting. …
Returns false if passed an invalid poll group handle. [subsection=SetConnectionPollGroup]SetConnectionPollGroup[/subsection] [code=cpp]bool SetConnectionPollGroup( HSteamNetConnection hConn, HSteamNetPollGroup hPollGroup );[/code] Assign a connection to a poll group. …
Try again with a buffer of at least N bytes. [/list] [subsection=SetConnectionUserData]SetConnectionUserData[/subsection] [code=cpp]bool SetConnectionUserData( HSteamNetConnection hPeer, int64 nUserData );[/code] Set connection user data. …
It runs SteamOS, Valve's operating system that's optimized for gaming, with fast suspend / resume and cloud saves. Steam Machine has a discrete semi-custom AMD desktop class CPU and GPU, and is roughly 6 times more powerful than Steam Deck. Steam Machine dev-kit units are not currently available. …
\n" ); break; } } else { // Device is not a controller through Steam Input - use your normal controller ID logic continue; } } } free(devices); } [/code] [section]Setting the Steamworks Settings[/section] The first step is to setup which controllers will use Steam Input in the Opt-in section on the Steamworks settings under Application->Steam Input. …
[/list] [docimg=steam_input_gamepad_templates.png]steam_input_gamepad_templates.png[/docimg] Steps for setting the template live for your game in Steamworks can be found [url=https://partner.steamgames.com/doc/features/steam_controller/getting_started_for_devs#23]here[/url] [subsection]Creating a custom configuration[/subsection] Configurations can be auto-converted between most controller types, but you'll at a minimum want to make a Steam Controller and Xbox controller configuration. …
The client should install their certificate using [api]ISteamNetworkingSockets::SetCertificate[/api] [*] It is highly recommended that you also distribute the network configuration to clients at this time as well. …
In development, you will leave SDR_POPID blank. When SDR_LISTEN_PORT and SDR_POPID is blank, the POPID is set to the special 3-character code "dev". In general, authentication is disabled for servers in the "dev" environment. …
[subsection]Custom Sets[/subsection] You can create additional sets to organize your achievements. Each set has a name, which is shown to players, and an optional restriction: [table] [tr] [th]Restriction[/th] [th]Who can earn achievements in the set[/th] [/tr] [tr] [td][b]All players of the game[/b][/td] [td]Anyone who can play the game.…
[subsection]Deleting a Set[/subsection] Open the set's menu and choose [b]Delete set[/b]. You must move or delete all achievements in a set before you can delete it. …
Over time, we've come to realize that Google's tracking solutions don't align well with our approach to customer privacy, and the migration to GA4 felt like the right time to end our support and focus instead on building the most useful parts of aggregated reporting into Steam itself. …
We think customers are better off if a developer can focus on the one best version of their game, rather than making and maintaining many separate builds-- especially if one build ends up as a second-class experience missing some testing or updates. …