How to Match UE4 Builds

I have UE 4.9.1 that I downloaded from the Epic Launcher. This is where I do most of my development.

Recently, I have tried to launch a dedicated server following the MMO Starter Kit guide. To do this, I downloaded the UE source code from Github. I compiled it in Development Editor mode and everything compiled smoothly. I right-clicked my .uproject file and switched the version to the source-built engine. I compiled it successfully to a Development Server and got the <Game>Server.exe. I then tried to open my project up so I could package the game. I got a ‘Substance’ plugin error. It could not be compiled. So I switched my version back to the 4.9.1 launcher build. I opened my project just fine and packaged my game. When I launched the <Game>Server.exe file, it brought up a console and ran fine. I then opened the client, got the login screen, but as soon as it tried to connect to the server, I got the “Invalid version” error from the server and my client can’t get past the login screen.

It seems a client can’t have a different “version” than the server? Is there a way to let it have some flexibility (I know this is bad for production)?

How do I match my source-built UE4 to my launcher-downloaded UE4 so I can make compatible clients and servers? Am I missing something here? Please help, I’m so close to getting my game online!!

Hi Dan Appello,

All UE4 versions must be built from the same source to be networked against each other. The real issue you are running into (at the moment) is Substance. But it’s fairly straightforward to fix that. You will want to download UE4 from the Allegorithmic Fork on Github (https://github.com/Allegorithmic/UnrealEngine) as this contains the source version of the Substance Plugin. Then you should be able to build both your game and the dedicated server using this fork as the engine.

I will see about updating the github version to 4.9.1 today (right now it’s 4.9.0)

If you run into further issue let me know!

Allegorithmic Support,

Thank you for offering some insight as to why my Substance plugin isn’t

I actually set Substance to “Enabled: false”. It’s still throwing the same “CleanThirdPerson could not be recompiled. Try rebuilding from source manually.” I’m guessing it’s going to throw the same error for VaRest, too, because that’s the other Module/Plugin listed that needs to be updated.

I know since you’re Allegorithmic Support, you are mainly concerned with Substance, but could you give me an idea on how to get these other two modules working? I’m assuming I can fix the VaRest error (when I get to it) by following the same idea as with Substance, but the “CleanThirdPerson” module consists of 7 C++ files in my project. I tried removing the module include code in my .uproject file, but then my project files can’t access my C++ files.

So confused, but I know I’m so close :frowning:

Any help or suggestions you could offer would be greatly appreciated!

Have you tried compiling your project from Visual Studio to see what errors you get?