The match you are trying to join is running an incompatible version of the game

Hi, I’m trying to setup a dedicated server for my own project. I’m running a server on a dedicated linux box from a 3rd party hosting site and when I try to connect with my client, I run into the following issue:



**[2021.03.01-22.55.01:566][340]LogNetVersion: MultiTest 1.0.0.0, NetCL: 0, EngineNetVer: 16, GameNetVer: 0 (Checksum: 853456996)**

**[2021.03.01-22.55.01:566][340]LogNet: UPendingNetGame::SendInitialJoin: Sending hello. [UNetConnection] RemoteAddr: 90143494261511168:7777, Name: SteamNetConnection_2147482522, Driver: PendingNetDriver SteamNetDriver_2147482523, IsServer: NO, PC: NULL, Owner: NULL, UniqueId: INVALID**

**[2021.03.01-22.55.01:664][386]LogNet: Error: UEngine::BroadcastNetworkFailure: FailureType = OutdatedClient, ErrorString = The match you are trying to join is running an incompatible version of the game. Please try upgrading your game version., Driver = PendingNetDriver SteamNetDriver_2147482523**


It appears the issue comes from the Steam Net Driver. All local tests work, the issue only appears when the client is connecting to a game through steam. This project is built from UE4 source, release version (4.26.1). I’m currently using the Advanced Sessions plugin for UE4 4.26.1, and have configured my DefaultEngine.ini with the configurations found here:



[/Script/Engine.GameEngine]
bUseFixedFrameRate=False
FixedFrameRate=60.000000
NearClipPlane=1.000000
SmoothedFrameRateRange=(LowerBound=(Type=Inclusive,Value=22.000000),UpperBound=(Type=Open,Value=62.000000))
!NetDriverDefinitions=ClearArray
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")

[OnlineSubsystem]
PollingIntervalInMs=20
DefaultPlatformService=Steam
VoiceNotificationDelta=0.2
bUsesPresence=false

[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
GameServerQueryPort=27015
bRelaunchInSteam=false
GameVersion=1.0.0.0
bVACEnabled=1
bAllowP2PPacketRelay=true
bUsesPresence=false
P2PConnectionTimeout=180

[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"


I’m building the server and client at the same time, and I’ve made no more modifications to either so I don’t understand how they are incompatible. How can I update and verify that my steam net driver is correct? Or check to see if the game versions are compatible?

Thanks!

Had this kind of issue a number of years ago.
Ended up using the FNetworkVersion::GetLocalNetworkVersionOverride() so we could handle the version checking ourselves.

1 Like

hello. Thank you for answer. But I don’t know exactly what to do with this. Could you please explain exactly how this can be modified?

Binding to the FNetworkVersion::GetLocalNetworkVersionOverride?

Suggest doing it in the game module, via StartupModule().

static uint32 MyGameGetNetworkVersion()
{
	return <some version number>
}

void FMyGameModule::StartupModule()
{
	FDefaultGameModuleImpl::StartupModule();
	FNetworkVersion::GetLocalNetworkVersionOverride.BindStatic(&MyGameGetNetworkVersion);
}