[/td][/tr] [tr][td][b]steamIDGameServer[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]Sets the Steam ID of the game server. Use [apitype]steam_api::k_steamIDNil[/apitype] if you're not setting this.…
[table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]m_ulSteamIDLobby[/b][/td][td][apitype]steam_api::uint64[/apitype][/td][td]The Steam ID of the lobby this message was sent in.[/td][/tr] [tr][td][b]m_ulSteamIDUser[/b][/td][td][apitype]steam_api::uint64[/apitype][/td][td]Steam ID of the user who sent this message. …
[subsection=AssociateWithClan]AssociateWithClan[/subsection] [code=cpp]SteamAPICall_t AssociateWithClan( CSteamID steamIDClan );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]steamIDClan[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]The Steam ID of the group you want to be associated with.…
[table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]m_SteamID[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]The Steam ID of the user that is wanting to connect.[/td][/tr] [tr][td][b]m_OwnerSteamID[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]The Steam ID that owns the game, this will be different from [code-inline]m_SteamID[/code-inline] if the game is accessed via Steam Family Sharing.…
[subsection=AdvertiseGame]AdvertiseGame[/subsection] [code=cpp]void AdvertiseGame( CSteamID steamIDGameServer, uint32 unIPServer, uint16 usPortServer );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]steamIDGameServer[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]This should be [apitype]steam_api::k_steamIDNonSteamGS[/apitype] if you're setting the IP/Port, otherwise it should be [apitype]steam_api::k_steamIDNil[/apitype] if you're clearing this.…
[b]Returns:[/b] int The level of the current user. [subsection=GetSteamID]GetSteamID[/subsection] [code=cpp]CSteamID GetSteamID();[/code] Gets the Steam ID of the account currently logged into the Steam client. …
[b]Returns:[/b] bool [b]true[/b] if Steam itself is running in VR mode; otherwise, [b]false[/b]. [subsection=IsSteamRunningOnSteamDeck]IsSteamRunningOnSteamDeck[/subsection] [code=cpp]bool IsSteamRunningOnSteamDeck();[/code] Deprecated as of Steamworks SDK 1.65. …
[/td][/tr] [tr=k_ESteamHardwareTypeSteamMachine][td][b]k_ESteamHardwareTypeSteamMachine[/b][/td][td]2[/td][td]Running on a Steam Machine.[/td][/tr] [tr=k_ESteamHardwareTypeSteamFrame][td][b]k_ESteamHardwareTypeSteamFrame[/b][/td][td]3[/td][td]Running on a Steam Frame.…
[/list] [subsection=RequestUserStats]RequestUserStats[/subsection] [code=cpp]SteamAPICall_t RequestUserStats( CSteamID steamIDUser );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]steamIDUser[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]The Steam ID of the user to request the stats for.…
[/list] [subsection=StoreUserStats]StoreUserStats[/subsection] [code=cpp]SteamAPICall_t StoreUserStats( CSteamID steamIDUser );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]steamIDUser[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]The Steam ID of the user to store the stats of.…
In the Steamworks C++ APIs, a user's SteamID is contained within a [api]steam_api::CSteamID[/api] object. You can retrieve the current user's SteamID by calling [api]ISteamUser::GetSteamID[/api] and then retrieve the 64-bit ID by calling [code-inline]CSteamID.ConvertToUint64()[/code-inline] on the returned value. …
[section=examples]Examples[/section] [subsection=account_linking]Linking third-party accounts to Steam accounts[/subsection] Third-party accounts can be linked to Steam accounts by associating a user's SteamID with the 3rd party account. …
language=objc]HERE[/url]. [subsection]Linux & SteamOS[/subsection] Steam only officially supports [url=ubuntu.com]Ubuntu[/url] running Ubuntu 12.04 LTS or newer and SteamOS, but the [url=http://steamcommunity.com/app/221410]Steam for Linux[/url] community is extremely resourceful and has managed to run Steam on a large variety of distros. …
The [url=https://github.com/ValveSoftware/steam-for-linux]Steam for Linux Client[/url] Github page is very active and contains the bug tracker for the Linux Steam Client. See [doclink=store/application/platforms/linux][/doclink] for additional information on getting started. …
[/td][/tr] [tr][td][b]steamIDUser[/b][/td][td][apitype]steam_api::CSteamID[/apitype][/td][td]SteamID of the user joining your party.[/td][/tr] [/table] When a user follows your beacon, Steam will reserve one of the open party slots for them, and send your game a [apitype]ReservationNotificationCallback_t[/apitype] callback. …
[b]Returns:[/b] [apitype]steam_api::SteamAPICall_t[/apitype] to be used with a [apitype]JoinParty_t[/apitype] call result. Returns [apitype]steam_api::k_uAPICallInvalid[/apitype] if the beacon ID is invalid. …
[callout] [b]Steam PC Café Server[/b] The Steam PC Café Server allows licensees of the Steam PC Café Program to share commercial licenses in their local network. …
Once added, you will be able to assign it to a site location. A server account is basically a Steam account that does not own anything. [*][i]What ports are being used by the Steam PC Café Server?[/i] The Steam PC Café Server uses UDP broadcast packets over port 27036 to announce itself to Steam clients on the network. …
[/list] [section]Common Use Cases[/section] [subsection]I'm Adding Steam Input API support [i]before[/i] shipping my game[/subsection] Great! Follow the technical directions in [doclink=features/steam_controller/getting_started_for_devs#implement_steam_input]Implementing Steam Input API support[/doclink]. …
There are two ways to make Steam lock onto your window for debugging, either run the following Steam URL: [code]steam://forceinputappid/<your_game's_AppID or 0 to reset to normal operation>[/code] or add the following command line parameters to your Steam shortcut: [code]-forcecontrollerappid <your_game's_AppID[/code] [callout=red] [h3]NOTE:[/h3] By "Steam shortcut" we mean a shortcut to the Steam client itself. …
[section]Overview[/section] Steam has grown into a large application over the years and provides many separate modules and multiple different ways to debug. This page outlines as many of them as possible to help you get the most out of Steam and Steamworks while keeping headaches to a minimum. …
ex: [code-inline]log_ipc IClientUser[/code-inline] Example output: [code] 00000009 my_exe_name.exe:05 > IClientUser::GetSteamID( ) = [U:2:172006], 00000009 my_exe_name.exe:05 > IClientUser::BLoggedOn( ) = 1, 00000009 my_exe_name.exe:05 > IClientUser::GetSteamID( ) = [U:2:123456], [/code] [subsection]IPC Report[/subsection] A rollup report is available to the log_ipc command in the Steam client. …
appid=[your app id] [/code] SteamOS devices: Use the [code-inline]Get Controller Config[/code-inline] command in the devkit tool (on the default Devkits tab - see [doclink=steamdeck/loadgames][/doclink] Linux Commandline (requires desktop mode on SteamOS devices): [code] xdg-open steam://dumpcontrollerconfig?…
" ); } char rgchFullPath[1024]; #if defined(_WIN32) _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s\\%s", rgchCWD, "steam_input_manifest.vdf" ); #elif defined(OSX) _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/steamworksexample.app/Contents/Resources/%s", rgchCWD, "steam_input_manifest.vdf" ); #else _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/%s", rgchCWD, "steam_input_manifest.vdf" ); #endif SteamInput()->SetInputActionManifestFilePath( rgchFullPath ); [/code]…
Note that sessions time out after a while, so if a connection fails, or [api]ISteamNetworkingMessages::SendMessageToUser[/api] returns k_EResultNoConnection, you cannot wait indefinitely to obtain the reason for failure. [section]Callback structures[/section] [subsection=SteamNetworkingMessagesSessionRequest_t]SteamNetworkingMessagesSessionRequest_t[/subsection] Posted when a remote host is sending us a message, and we do not already have a session with them [code] struct SteamNetworkingMessagesSessionRequest_t { /// User who wants to talk to us SteamNetworkingIdentity m_identityRemote; }; [/code] [subsection=SteamNetworkingMessagesSessionFailed_t]SteamNetworkingMessagesSessionFailed_t[/subsection] Posted when we fail to establish a connection, or we detect that communications have been disrupted in an unusual way. …
SteamNetConnectionInfo_t m_info; }; [/code] …
[section]Overview[/section] In this tutorial, we will walk you through the steps required to broadcast your game on the Steam storefront. [subsection]Before You Begin[/subsection] [callout]Note: Games marked as "Adult-Only" cannot be streamed on the Steam store.[/callout] [list][*]You will need a non-limited Steam account. “Non-limited” means that the Steam account you plan to stream from must have spent at least $5 USD on the Steam store. “Limited” accounts (accounts that have not spent at least $5 USD on Steam) will not be able to create an RTMP token and will not be able to stream to a store page on Steam. [*]The account you plan to stream from must own the game it will be streaming from. …
[b]Returns:[/b] [apitype]steam_api::SteamAPICall_t[/apitype] to be used with a [apitype]ISteamUserStats::LeaderboardScoresDownloaded_t[/apitype] call result. …
Returns [apitype]steam_api::k_uAPICallInvalid[/apitype] indicating an error if the number of users is greater than 100 or if one of the Steam IDs is invalid. …
[h5]Level of integration[/h5]Basic streaming of your gameplay through Steam is built in. Streaming that includes a webcam takes some webpage configuration and a third-party tool such as OBS. [/introblock] [subsection]Table of contents[/subsection] [table] [tr][td]Live Streaming[/td][td]This page[/td][/tr] [tr][td][doclink=store/broadcast/setting_up]Setting Up A Stream[/doclink][/td][td]Requirements, setup, and configuration[/td][/tr] [tr][td][doclink=store/broadcast/demo]Streaming Demos[/doclink][/td][td]Livestreaming a game demo to your store page[/td][/tr] [tr][td][doclink=store/broadcast/stats]Stats & Reporting[/doclink][/td][td]Viewership stats from your past streams[/td][/tr] [tr][td][doclink=store/broadcast/faq]FAQ[/doclink][/td][td]Frequently Asked Questions on Steam broadcast[/td][/tr] [/table] [section]Broadcasting on Steam[/section] Steam offers a feature that allows content to be streamed to Steam client and the web store. …
Steam, Twitch, YouTube, Facebook, Mixer etc.). Here's an illustration on how it works. [docimg=Schematic2.JPG]Schematic2.JPG[/docimg] [subsection]What you need to get started[/subsection] A publisher or developer can get started with broadcasting to Steam with the following. …
access_token=token[/code] [Section=Cloud]Accessing Steam Cloud[/Section] To access Steam Cloud on behalf of a user, your OAuth client will need the [code-inline]read_cloud[/code-inline] and/or [code-inline]write_cloud[/code-inline] permission(s). …
Once you have the OAuth token, use the [doclink=webapi/ICloudService]ICloudService[/doclink] Steam WebAPI. [Section=Workshop]Accessing Steam Workshop[/Section] To access Steam Workshop on behalf of a user, your OAuth client will need the [code-inline]read_cloud[/code-inline] and/or [code-inline]write_cloud[/code-inline] permission(s). …
[subsection=Pause]Pause[/subsection] [code=cpp]void Pause();[/code] Pause the Steam Music player. [subsection=Play]Play[/subsection] [code=cpp]void Play();[/code] Have the Steam Music player resume playing. …
[/td][/tr] [tr=AudioPlayback_Paused][td][b]AudioPlayback_Paused[/b][/td][td]2[/td][td]Steam Music is currently paused.[/td][/tr] [tr=AudioPlayback_Idle][td][b]AudioPlayback_Idle[/b][/td][td]3[/td][td]Steam Music is currently stopped.…
[/td][/tr] [/table] Creates a new file and asynchronously writes the raw byte data to the Steam Cloud, and then closes the file. If the target file already exists, it is overwritten. [b]Returns:[/b] [apitype]steam_api::SteamAPICall_t[/apitype] to be used with a [apitype]ISteamRemoteStorage::RemoteStorageFileWriteAsyncComplete_t[/apitype] call result. …
[/td][/tr] [tr=k_EWorkshopFileTypeSteamVideo][td][b]k_EWorkshopFileTypeSteamVideo[/b][/td][td]14[/td][td]Steam video.[/td][/tr] [tr=k_EWorkshopFileTypeGameManagedItem][td][b]k_EWorkshopFileTypeGameManagedItem[/b][/td][td]15[/td][td]Managed completely by the game, not the user, and not shown on the web.…
See the instructions above, except you need to update the library path instead of the include path. [*] [b]Steam must be running to play this game ([api]steam_api::SteamAPI_Init[/api] failed).[/b] If you encounter this error when running the game, make sure that Steam is running. …
When you ship your own game through Steam this file will not be needed as Steam will auto-detect your AppID when the game is launched. [*] [b]The application has failed to start because steam_api.dll was not found. …