Skip to main content

Configuring the Plugin

Overview

This guide provides comprehensive instructions for configuring the SteamCore plugin in your Unreal Engine project. Proper configuration is essential for enabling Steam functionality and ensuring optimal performance in both development and production environments.

Video Tutorial

For a visual walkthrough of the configuration process, please refer to our Getting Started Video Tutorial.

Configuration Process

Step 1: Locate Configuration File

Navigate to your project's configuration directory and open the DefaultEngine.ini file located at:

Project/Config/DefaultEngine.ini

Step 2: Prepare Configuration Environment

Before adding new configuration values, ensure a clean configuration environment:

  1. Remove Legacy Settings: Delete any existing Steam-related configuration entries to prevent conflicts
  2. Backup Configuration: Create a backup of your current DefaultEngine.ini file before making changes
  3. Verify File Permissions: Ensure the configuration file is not read-only
Configuration Conflicts

Duplicate or conflicting entries in the configuration file will cause plugin initialization failures. Always remove old Steam-related settings before adding new ones.

Configuration Options

For typical multiplayer projects, use the following comprehensive configuration:

[OnlineSubsystemSteamCore]
SteamDevAppId=480
SteamAppId=480
bVACEnabled=True
bEnabled=True
bUseSteamNetworking=True
bAllowP2PPacketRelay=True
bRelaunchInSteam=False
P2PConnectionTimeout=90
GameServerQueryPort=27015
GameVersion=1.0.0.0

[OnlineSubsystem]
DefaultPlatformService=SteamCore

[/Script/Engine.GameEngine]
!NetDriverDefinitions=ClearArray
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="/Script/SteamCoreSockets.SteamCoreSocketsNetDriver",DriverClassNameFallback="/Script/OnlineSubsystemUtils.IpNetDriver")

Minimal Configuration

For basic usage during development and testing, the following minimal configuration is sufficient:

[OnlineSubsystemSteamCore]
bEnabled=True
SteamDevAppId=480
SteamAppId=480

[OnlineSubsystem]
DefaultPlatformService=SteamCore

Configuration Parameters Reference

Core Settings

ParameterTypeDescriptionDefault
bEnabledBooleanEnable or disable the SteamCore pluginTrue
SteamAppIdIntegerYour application's Steam ID for production480
SteamDevAppIdIntegerDevelopment Steam ID used during testing480
PortIntegerServer port for Steam networking7777

Networking Configuration

ParameterTypeDescriptionDefault
bUseSteamNetworkingBooleanEnable Steam's networking layerTrue
bAllowP2PPacketRelayBooleanAllow fallback to Steam relay serversTrue
P2PConnectionTimeoutIntegerTimeout duration for P2P connections (seconds)90
GameServerQueryPortIntegerSteam server query port27015

Security and Anti-Cheat

ParameterTypeDescriptionDefault
bVACEnabledBooleanEnable Steam VAC (Valve Anti-Cheat)True
bRelaunchInSteamBooleanRelaunch game through Steam if not started via SteamFalse

Development Settings

ParameterTypeDescriptionDefault
bCopySteamDllsBooleanCopy Steam client DLLs when packaging (Windows only)True
GameVersionStringGame version identifier1.0.0.0

Advanced Handshake Configuration

ParameterTypeDescriptionDefault
bOverrideMinHandshakeVersionBooleanOverride minimum handshake versionTrue
MinHandshakeVersionIntegerMinimum handshake version0
bOverrideCurrentHandshakeVersionBooleanOverride current handshake versionTrue
CurrentHandshakeVersionIntegerCurrent handshake version0

Complete Configuration Example

[OnlineSubsystemSteamCore]
bEnabled=True
SteamAppId=480
SteamDevAppId=480
Port=7777
bCopySteamDlls=True
bVACEnabled=True
bUseSteamNetworking=True
bAllowP2PPacketRelay=True
bRelaunchInSteam=False
P2PConnectionTimeout=90
GameServerQueryPort=27015
GameVersion=1.0.0.0
bOverrideMinHandshakeVersion=True
MinHandshakeVersion=0
bOverrideCurrentHandshakeVersion=True
CurrentHandshakeVersion=0

Additional Configuration Requirements

Multiplayer Setup

For multiplayer functionality, ensure you also configure SteamCoreSockets in addition to the basic plugin configuration.

Project Settings Migration

Deprecated Feature

Recent versions of the SteamCore plugin no longer support configuration through the Project Settings interface. All configuration must be performed through the DefaultEngine.ini file.

Project Settings Interface

Validation and Testing

Configuration Verification

After applying configuration changes:

  1. Syntax Check: Verify the configuration file syntax is correct
  2. Plugin Load: Confirm the plugin loads successfully in the editor
  3. Steam Integration: Test basic Steam functionality (if Steam client is running)
  4. Multiplayer Testing: Verify networking functionality if applicable

Common Configuration Issues

IssueCauseSolution
Plugin fails to loadDuplicate configuration entriesRemove conflicting entries
Steam features unavailableIncorrect App ID configurationVerify SteamAppId and SteamDevAppId values
Networking errorsMissing networking configurationAdd complete networking settings

Next Steps

Once configuration is complete:

  1. Restart Editor: Restart the Unreal Editor to apply changes
  2. Test Functionality: Verify Steam integration works as expected
  3. Configure Networking: Set up multiplayer features if required
  4. Deploy Testing: Test configuration in packaged builds

For advanced networking configuration, proceed to the SteamCoreSockets Configuration guide.