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
RedwoodSteam
plugin by manually adding it to your.uproject
file or viaEdit > Plugins
-
Update your project to use the
Login with Steam
function instead of the normalLogin
function. You can use the provided Blueprint node.- This function has the same auth update callback/delegate as the normal
Login
function. - You can also use the C++ function:
static void URedwoodSteamTitleInterface::LoginWithSteam(URedwoodTitleInterface *TitleInterface, FRedwoodAuthUpdateDelegate OnUpdate)
by includingRedwoodTitleInterface.h
and adding theRedwoodSteam
module to your.Build.cs
file.
- This function has the same auth update callback/delegate as the normal
-
Update your UE project's
Config/Default.engine
to 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.
SteamAuth
is automatically handled by theRedwoodSteam
plugin. 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
Shipping
builds that asteam_appid.txt
is distributed with your game. Non-Shipping builds create this text file usingSteamDevAppId
when the game launches (and deletes it when the game closes). Read more in the official Unreal documentation.