I’m trying to troubleshoot an issue with Steam at the moment.
To create a test case I made a new blank project that uses blueprints. I created the project and created a new map. I went into the level blueprint and just added a “Switch Has Authority” node coming off of “BeginPlay”. Compiled, saved, no errors.
When I search the project directory, I can find no .build.cs file anywhere. I can find a .target.cs file. I went ahead and updated the target file and just added "Name = “MyProject” to the constructor. I then restarted the editor and opened the project. Did a compile on the level blueprint just for kicks, saved, launched, and then quit. Again, there is no build.cs file AND the target.cs file lost the name line I added to the constructor.
I’m using UE 4.10.2. I can’t seem to find a clear answer on where the build.cs file is, why it isn’t being created, and why the target.cs isn’t retaining things I type and save.
I assume you have Blueprint only project because it sounds like you have.
.build.cs and .target.cs are build scripts for C++, it has nothing to do with Blueprints, if you don’t have C++ module (and for that you need also code module class) most likely UBT clean those files up when you run editor. For blueprint only project all you need to is set OnlineSubsystem in ini files and copy those required files for Steam. Maybe you been mislead by some tutorial? Because it is indeed required to add Steam module decency to refrence to in C++… but only C++
Config ini files and *.uproject contains project configuration and info which classes to use, where .cs files have configuration on how to build C++ code modules to make it fit to the other modules in engine.
The funny thing is that I got my information from the UE4 documentation and the UE wiki:
From the point of view of a beginner in using Steam with UE, the context in the above links seems universal and doesn’t rely on whether or not C++ is being used.
So to finalize this and close it out: The build.cs and target.cs files are only applicable to C++ projects, correct?
Yes and not just C++ project, but any C++ code compilation in UE4 which also includes engine code. If you don’t use C++ you don’t need that and even if you need this step only to interact with Steam module via C++ and you could even do things via normal OnlineSubsystem APIs, i mean point of those APIs is to use all online services under single interface so you don’t need to edit code
Ok. So No C++ means no *.cs files and the only thing I need to do is make the changes to the Engine.ini file so it knows to add Steam. Wish the docs were up to date but oh well. Thanks !