Dedicated server - When do i need to rebuild?


I am following the wiki guide to try around, using dedicated servers.
I have a little c++ experience from a totally different project, in which the solution needed to be built every time it needed to be tested.

Now, since building the project solution takes A LOT of time, just using a default third person project, i was wondering, how much, and how often i need to build solutions.

For instance, if i change something in a blueprint, do i need to build the entire solution again for testing purposes (which means a test can take an hour or so). Or is it only something i have to do once to set it up, and then never again?
And if someone could explain, what this “build” process actually do, so i could understand it better :slight_smile:

Thanks in advance.

Usally don’t need to be rebuild, when you compile something (don’t need to be UE4 this is the same for all C++ prjects) for the first time every cpp file is compiled in to so called object file which contains generated CPU code for that cpp file which latter is linked together by linker to form exe or dll or bigger object file if needed. Once object file is made there no point of recompiling the file as the object file simply can be reused. The build manager (in case of UE4 it is UnrealBuildTool) detects if cpp is newer then object file, if it is it recompiles the file, if not it is skipped, this speeds up the building process if oyu do small changes.

But there is possibility that changes in one file might not be compatible with other object you compiled in the past and linker may link it somehow but because those incomatibilities when you run it you get strange crashes, in that case oyu need to rebuild so everything is made from 0. I guess thats why in your previues project they order you to rebuild to eliminate this possibility from testing process. But it quire rare case, i had such issues in the past but they are not frequent, so if this is your project that you manage it is you to decide.

Blueprints are running on virtual machine they have nothing to do with C++, nativisation if you have it enabled it only happens during packaging. So C++ is not build at all when you use blueprints.

Thank you for a well explained answer :slight_smile: