@gollymashed I apologize. The above solution has a typo and there’s another step (Other than those missing header files, sorry about that too)
You need to open “YourProjectName.Build.cs” and you should have a line in there that looks like this
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", ... }
Just add “EngineSettings” to that array.
And then there’s an error in the code I posted
bool AYourPlayerControllerName::ServerNotifyLoadedWorld_Validate(FName WorldPackageName)
Should be
bool AYourPlayerControllerName::ServerNotifyLoadedWorldWorkaround_Validate(FName WorldPackageName)
We wanted to avoid compiling the engine as well, so I hope that works for you! If not let me know.