Steam Authentication
The steam provider uses the Steamworks API to authenticate users automatically when the game launches from Steam. If you distribute your game through Steam, this provider allows for a painless onboarding experience.
Configuration
| Variable | Description |
|---|---|
auth.steam.api-key | The Steamworks Web API publisher authentication key. |
auth.steam.app-id | The Steamworks AppID for your game. |
Setup
-
Create a Steamworks Web API publisher key (not a user key) following Steam's documentation
-
Update the above configuration
-
Enable the
RedwoodSteamplugin by manually adding it to your.uprojectfile or viaEdit > Plugins -
Update your project to use the
Login with Steamfunction instead of the normalLoginfunction. You can use the provided Blueprint node.- This function has the same auth update callback/delegate as the normal
Loginfunction. - You can also use the C++ function:
static void URedwoodSteamTitleInterface::LoginWithSteam(URedwoodTitleInterface *TitleInterface, FRedwoodAuthUpdateDelegate OnUpdate)by includingRedwoodTitleInterface.hand adding theRedwoodSteammodule to your.Build.csfile.
- This function has the same auth update callback/delegate as the normal
-
Update your UE project's
Config/Default.engineto enable the Steam online subsystem, but making sure to disable Steam networking:[OnlineSubsystemSteam]
bEnabled=True
bUseSteamNetworking=false
SteamDevAppId=<your-app-id>warningThere are no other configuration changes you need.
SteamAuthis automatically handled by theRedwoodSteamplugin. DO NOT change the NetDriver that you might find in other guides on setting up Steam with Unreal.noteLike all Steam games, you'll need to ensure that in
Shippingbuilds that asteam_appid.txtis distributed with your game. Non-Shipping builds create this text file usingSteamDevAppIdwhen the game launches (and deletes it when the game closes). Read more in the official Unreal documentation.