[VS][Versioning] VS requirements, EngineAssociation and versioning

Hello, I was about to post this on answerhub but the website is somehow broken for some people right now and I can’t post so here’s the probably best place to find an answer :slight_smile:

I’ll try to make this as straightforward and simple as possible. I’ve looked around and couldn’t find a precise answer to my questions.
I have downloaded the sources, compiled, created a C++ project, added a couple of classes, created blueprints extending those custom classes. I put all this on a git repo shared with my colleagues, ignored the folders DerivedDataCache, Intermediate and Saved in both the project and the engine folder as well as all .pdb, hoping to keep the git repo as light as possible.
Now, when a designer pulls the repository and open the .uproject file, he’s asked to select the engine’s location, he selects the folder where the sources I compiled are. Then the EngineAssociation in his .uproject changes and my custom classes aren’t recognized and hell is happening on earth.

So now I have a couple of questions :
What do I need to keep this EngineAssocitation from changing from one computer to the other?
Is it by using GenerateProjectFiles.bat? How?
If yes, it seems like VS is needed for that? Does that mean VS is required for everybody working on the project even if they’re not working on source code? If not, how to deal with this?

Any help is appreciated! Thanks!


Hi Xelareip,

We are aware of the answerhub’s current error and I wanted to assure you that we are working diligently towards a solution. Thank you for your continued patience while we figure out what happened.

I believe that for a code based project you will need VS and you will have to generate project files on each computer that has access to the file. This is to make sure that everyone has the same information and can work on the project. In this regard, yes, everyone needs a copy of visual studios to be able to build the project.

At least with the new VS Community edition that has been made available this is less onerous than it could possibly have been.

Hey, I have a follow up question then.

My colleague installed visual express cleared his working copy, ran the GenerateProjectFiles.bat file but when he does, first UnrealBuildTool.exe is modified.
Then when he double clicks the uproject file, the EngineAssociation changes too.

I commited all binaries at first because I thought it would avoid non programmers to use VS. So I thought it might be conflicting with something, asked him to delete it, revert the uproject file, re-run the bat, relaunch the uproject file. Nothing works.

I’m kinda desperate now :smiley: If you have any idea what might be the problem…


In my studio, I build the binaries / project, then send them the build project, since they are non programmers. On my SVN i tell it to ignore the Intermediate folder and Saved Folder. Haven’t had any issues that way. I suggest you rebuild the project and have them use that new one and overwrite their old stuff.

Thanks TheAgent, how about the DerivedDataCache folder? Do you ignore it too?

Nah, I only did the Intermediate and Saved folder, the rest should be fine. If you come into trouble just make sure everyone on the team sets those folders to ignore.

EDIT: I lied you may still need to include the Intermediate folder. They shouldn’t have to worry about building though.