Improbable Icon

SpatialOS Discourse Forums

Why does the GKD throw this many errors? Is there an easy fix to making it compile?

I have downloaded the 4.24 fork, downloaded the dependencies, run the setups and managed to get the UE4editor to build and all was well. Then I continued with installation and ran the batch file to setup the GDK.

Since I am using VS 2019 I am guessing that is why it was unable to find my MSBuild but I modded the batch file to return the hard coded path to it and then the setup continued. When I run the batch file to generate the project file I see its starting with intellisense something and then the console closes so I am assuming generating the project files fails (presumably). When I go into VS I have 72 project and when I start to build I wait an hour or so and then I get the following 80+ errors + warnings

What the heck are they and how do I get rid of them?

Thanks for any advice (and yes, I did download all dependencies AND downgraded that one VS feature required for the VS2019 compatibility) so I have no clue what else to try)

Hey @Ryunosuke-Jansen,

We’re working on our 4.24 engine fork but it’s not been released yet, my guess would be that these errors are caused by an incompatibility between our unfinished 4.24 engine fork and the GDK version you’re using.

If you want the most cutting edge version of the GDK and engine fork you should be on preview. The branches for this are:

UnrealGDK/preview
UnrealGDKExampleProject/preview
UnrealEngine/4.23-SpatialOSUnrealGDK-preview

You can read more about our versioning here: https://docs.improbable.io/unreal/preview/content/pricing-and-support/versioning-scheme

I am using this one:
https://github.com/improbableio/UnrealEngine/tree/4.24-SpatialOSUnrealGDK-merge

I keep hearing “We haven’t released it” and yet the link is right there… does that mean it’s an alpha or something? And is there no way to get it working?

Just so you know where I’m coming from, I don’t care about “most cutting edge versions” etc. 4.24 is such a big deal to me that I recently uninstalled all other engine versions from my system in favor of having only 4.24 installed. As such, since 4.24 is that important to my OCD that I want to use it and only it moving forward it makes sense that I would want the same version for improbable also. Even if your fork is not up to date with every bug fix etc, as long as it’s 4.24 I’d be happy…

I forced my OCD into submission and downloaded the stable 4.22 default release then waited the 3 or so hours for it to build but I am still getting errors along the line of trying to use ints as bools etc. Is this normal?

At least I am now down to only 4 errors so is something someone can help me solve please?

sorting.h line 38, SpatialReceiver.cpp line 443, SpatialPlayerSpawner.cpp line 50
Implicit conversion from int to bool. Possible information loss

Finally, I get:

Error MSB3075 The command “…\Build\BatchFiles\Build.bat -Target=“ShaderCompileWorker Win64 Development” -Target=“UE4Editor Win64 Development” -WaitMutex -FromMsBuild” exited with code 5. Please verify that you have sufficient rights to run this command.
UE4 C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets 44

Pls, can someone help me get past these last few remaining issues?
Thanks

While inspecting these errors myself I notice the problem is that there are functions called GetBool() and Predicate(A, B) which returns a int rather than a bool. Why inthe world a function called GetBool would return an int I don’t know but there you have it… (see the lines I mentioned above)

Working on the logic that a 0 is false and everything else is true I modified the 4 lines that call this bool and simply added " > 0" before the ;. If ever there was a pure hack, this is it… but at least it caused the engine to build without errors! Yeay!

…but it takes (literally) forever to start UE4 from within VS so I had to qui and run it from the Explorer directly. This only took 25 minutes to open the UE4 project creation/selection window. From here I created a new project but it couldn’t run and said it had to be rebuilt from source. Another 3 hours of waiting and I am left with 1 error: A file doesn’t exist. This is not an error I can just hack away so I have to ask: why is it so complicatetd to get this up and running?

I am now on the default stable branch/fork after abandoning all hope of using the 4.24 fork so why are there still errors in the code like having functions called GetBool() that returns an int? Why must it take me weeks to get this system up and running?