Steam Frame supports development and deployment from Unity, Unreal Engine, Godot, and your own custom engine via OpenXR. See the pages below for information on your engine. …
[subsection]OpenXR[/subsection] See [doclink=steamhardware/steamframe/input][/doclink] for details. [subsection]Foveated Rendering[/subsection] SteamVR supports the following recommended OpenXR extensions: [list] [*][url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_FB_foveation]XR_FB_foveation[/url] [*][url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_FB_foveation_configuration]XR_FB_foveation_configuration[/url] [*][url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_FB_foveation_vulkan]XR_FB_foveation_vulkan[/url] [*][url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_FB_swapchain_update_state]XR_FB_swapchain_update_state[/url] [*][url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_META_foveation_eye_tracked]XR_META_foveation_eye_tracked[/url] [*][url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_META_vulkan_swapchain_create_info]XR_META_vulkan_swapchain_create_info[/url] [/list] [subsection]Eye Tracking[/subsection] Our current support for eye tracking uses the [b]XR_EXT_eye_gaze_interaction [/b]OpenXR extension. …
[subsection]In-Game Purchases (Microtransactions)[/subsection] Microtransactions offer customers the option to purchase additional content while playing a game. With the Steam Microtransaction APIs, your Steam game can support all kinds of in-game purchases, including items, virtual currency, or any other content you’d like to offer. The upside of this approach is you retain control and flexibility over the process. …
You will pass that information using the InitTxn API. We recommend entering pricing in your database in every supported currency so that users will see a price displayed in a currency they are familiar with. Otherwise, customers may see a price displayed in a currency they aren’t familiar with and will cancel the purchase out of caution. …
[section]Remote Play on TV[/section] If you have checked this feature, that means you have full controller support for your game, and have verified that the UI elements and font sizes work well for viewing at a distance on a TV. [section=TouchControls]HOWTO: Add Touch Controller Config[/section] Take a look at the [url=https://steamcommunity.com/games/593110/announcements/detail/1599264607941629464]Optimizing For Remote Play[/url] blog post for some examples and best practices. …
Adjust the layout and size of each button as desired. For more information see the [url=https://support.steampowered.com/kb_article.php?ref=4022-PFJX-8276]introduction support article[/url] and the more detailed [url=https://steamcommunity.com/sharedfiles/filedetails/?…
. [*] The ban is publicly displayed on their Steam Community profile. [*] If the user is accessing the game via [url=https://support.steampowered.com/kb_article.php?ref=3784-QLBM-5731]Family Library Sharing[/url], the ban is also applied to the actual owner of the game. [*] The user will not be eligible for an automatic refund [/list] More details can be found in our customer facing FAQ: [url=https://support.steampowered.com/kb_article.php?…
[docimg=set_install_dir.png]set_install_dir.png[/docimg] [section=os_depots]Operating System Depots[/section] If your app supports multiple platforms, you should use separate depots to store the platform specific content. For example, if your app natively supports Windows and Linux, have any Windows-specific files in a depot that is marked just for Windows as a depot. …
Please leave any feedback / issues on the [url=https://steamcommunity.com/groups/steamworks/discussions/27/]Steam Deck Developer Forums[/url]. NOTE: The remote debugging features are only supported against the Proton - Experimental release[/callout] [section]Setup[/section] Be sure to see [doclink=steamhardware/loadgames][/doclink] to upload and run your game on your developer kit. …
[subsection]Remote debugging process startup: "early attach" support:[/subsection] The remote debug service can be configured to wait for the user to attach before launching the title. This allows you to set a breakpoint in WinMain or other initialization code. …
If you browse the files within the Visual Studio solution explorer you'll see that the code has been broken up into Game and Engine code. You can ignore the code in the Engine folder - it supports basic 2D rendering via D3D and basic keyboard input. All of the important code documenting Steamworks API usage is files in the Game folder. …
[/list] [*] [b][code-inline]ServerBrowser.cpp/h[/code-inline] -- In-game Server Browser[/b] API Usage shown: [list] [*] [b]Matchmaking via ServerBrowser[/b] -- If you support matchmaking via the Server Browser then you'll probably want to provide a server browser listing directly inside your game to supplement the listing provided by the Steam UI. …
In the Content Release Description (Public), you should enter a text description of the DLC. You can also add supporting images. This information is public and customer-facing, so think about this as an opportunity to get customers interested in the content. …
[u]Please remember to localize your description into the languages you support.[/u] Next, you'll select the Intended Release Date for this content. This date is used to set reminders on your internal Steamworks dashboard. …
[/b] This means that your product must successfully launch in all supported operating systems listed on the store page. [*] [b]All supported features listed on the store page will need to be implemented in the current build.…
[/td][/tr] [tr][td][api]ISteamController[/api][/td][td]Steam Controller support API (deprecated and replaced with ISteamInput)[/td][/tr] [tr][td][api]ISteamFriends[/api][/td][td]Interface to access information about individual users and interact with the [doclink=features/overlay][/doclink].…
[/td][/tr] [tr][td][api]ISteamInput[/api][/td][td]Interface for supporting Xbox, PlayStation, Switch and Steam Controllers.[/td][/tr] [tr][td][api]ISteamInventory[/api][/td][td]Steam Inventory query and manipulation API.…
. [*] [b]toolname[/b] - "drmtoolp" is currently the only supported toolname parameter. [*] [b]flags[/b] - Bitmask of the following numeric flags specifying tool behavior. [list=1] [*] [b]0[/b] - Normal wrap (most protection) [*] [b]6[/b] - Compatibility mode (disables obfuscation) [*] [b]32[/b] - Skip debugger check [*] [b]38[/b] - compatibility mode and also skip debugger check (least protection) [/list] [/list] Example run_build.bat script to login, apply DRM, build and upload the build to Steam (where App ID is 480): [code] builder\steamcmd.exe +login mysteamaccount +drm_wrap 480 "D:\src\steamworkssdk\steamworksexample\release\steamworksexample.exe" "D:\src\steamworkssdk\tools\ContentBuilder\content\windows_content\SteamworksExample.exe" drmtoolp 0 +run_app_build ..…
My C# / .Net game doesn't run after applying the Steam wrapper[/b] [b]A.[/b] The Steam wrapper doesn't support .Net applications. Instead of using the DRM wrapper, use [doclink=sdk/api#SteamAPI_RestartAppIfNecessary]SteamAPI_RestartAppIfNecessary[/doclink]. …
OBS is a popular free and open-source option. Below are steps to get your stream set up in OBS. Steam supports any broadcast software that supports the RTMP protocol. [docimg=stream5.png]stream5.png[/docimg] [olist] [*]Navigate to File-->Settings-->Stream [*]In the dropdown menu, select “Custom...” …
[section=multistream]Using a Multi-streaming Service[/section] [list][*]If you are looking for a simultaneous streaming platform to stream at once to Twitch, Steam, YouTube etc. – Restream.io or LiveU Studio (easylive.io) are great options. [*]A step-by-step “how to” video for Restream.io is available at https://support.restream.io/how-to-stream-games-to-steam [*]A step-by-step “how to” guide for LiveU Studio is available at https://studiosupport.liveu.tv/hc/en-us/articles/17094630837659-Steam[/list] [section]Content Rules[/section] Remember to obey the content rules when broadcasting on your product page. …
This will enable management of [doclink=features/anticheat]Anti-Cheat[/doclink] and [doclink=features/auth#encryptedapptickets] SDK Auth[/doclink] settings for an Application.[/td] [/tr] [tr] [td][b]Economy/Workshop Support[/b][/td] [td]Allows the user to view/grant economy items in the partner site economy support tool.[/td] [/tr] [tr] [td][b]Economy/Workshop Supervisor[/b][/td] [td]Currently same functionality as Support just above.…
Welcome to the Steamworks Web API Reference! Here you will find a complete listing of the currently supported Web API interfaces and methods. To learn more about how to use the Steamworks Web API please see the [doclink=webapi_overview][/doclink]. …
[/td][/tr] [tr][td][webapi]ISteamMicroTxn[/webapi][/td][td]This is the interface used to support [doclink=features/microtransactions]Microtransactions (In-Game Purchases)[/doclink].[/td][/tr] [tr][td][webapi]ISteamNews[/webapi][/td][td]Provides access to the Steam News functionality.…
[section=Overview]Overview[/section] The Xbox One controller, originally designed for Microsoft's Xbox One home game console, was the second 3rd-party device to get official Steam Input support (simultaneous with the Xbox 360 controller and generic XInput devices). In contrast to the PlayStation 4 controller and Steam controller, it has neither trackpads nor gyroscope. …
[callout] [h3]NOTE: These are the typical controller_config locations for each platform:[/h3] Windows: C:\Program Files (x86)\Steam\controller_config macOS: ~/Library/Application Support/Steam/Steam.AppBundle/Steam/Contents/MacOS/controller_config Linux: ~/.steam/steam/controller_config [/callout] Now open up the file in your favorite text editor. …
By default, this will only affect configurations already using Steam Input API as to not disrupt existing players who have been using Steam Input to existing gamepad support. If you're removing XInput or other gamepad APIs then you will want to set the "major_revision_affects_xinput" flag in order to update existing players. …
Here are a few specifics to consider: [list] [*] Provide a detailed written description that clearly outlines the specific content of the demo. [*] List the features, languages, and player modes supported by your demo. [*] If certain features, languages, or player modes are supported in the base game but not in the demo, do not include them on your demo's store page. [*] Alternatively, clearly indicate that these elements are only available in the base game to avoid confusion. [*] Provide a trailer and at least five screenshots that are specific to your demo content. [*] Ensure that capsule images and Library Assets clearly indicate that the app is a demo to differentiate it from the base game. [*] Make sure your Content Survey accurately reflects the demo content. …
[b]Q: Can my demo users play Steam multiplayer with my full game users?[/b] A: Steam currently doesn't support multiplayer matchmaking between the full game and the demo. [b]Q: What if my demo consists of literally the same files as the full game?…
[section]How to set up Advance Access[/section] Please reach out to the Steam team directly, either through your contact or [url=https://help.steampowered.com]Steam Support[/url] and inform them of the dates/time of advance Access and the details of the offer. They will help determine if your game is a good fit for advance access. …
Please reach out to the Steam team directly, either through your contact or [url=https://help.steampowered.com/]Steam Support[/url]. They will help determine if your game is a good fit for Advance Access and if so, they will need to manually add that date into Steamworks. …