So a while back I accidentally added a C++ class to my project. I have since deleted it. My project is completely blueprint-based and I would love to be able to export directly from my Windows machine. After that I also had to “Generate Visual Studio Project Files” to fix a build error I was getting. I’m not sure if this would have changed the project to code-based?
I’m getting the error on launch:
“Sorry, launching a code-based project for the selected platform is currently not supported. This feature may be available in a future release.”
I was hoping that deleting the C++ class would be enough but UE4 clearly still thinks it is code-based. Is there anything I can do?
I’m actually looking for the opposite. I want to convert what UE4 thinks is a C++ project to a blueprint-only project so I can export to iOS from Windows.
Unfortunately once a code class is added to a Blueprint project, it will always be considered as a code project from that point on. When a code class is added to a Blueprint project, there are some fundamental changes that take place within the project. One of these changes is that the project now requires a built .dll file in order to open it in the Editor. If you were to delete the file, you would get a notice that the .dll file is missing and ask if you want to rebuild the project.
Once a project has a binary .dll file that it needs (either because it was created as a code project or it was a Blueprint project that had a code class added to it), there is unfortunately no way to change the project into a Blueprint-only project.
That is a real bummer… I’m assuming there is no feature request for this yet? It was a late night and I had accidentally clicked “new C++ class” instead of “new blueprint class”. They are right next to each other. I didn’t even get a warning that said the project would now be considered C++ when i pressed create. I still thought I was creating a blueprint class.
That one tiny misclick has caused me cumulative hours of transfer when I want to test the project on iOS. It’s unbearably frustrating. I am really surprised that there is no way to undo that change in any way.
How about at least for the meanwhile add a warning that you will be converting the project from blueprint to C++ and this is NOT REVERSIBLE.
It has been a little while since I added a code class to a pure Blueprint project, so I wasn’t really aware that there was no notification of the changes to the project that would occur. I have entered ticket UE-30832 to have the possibility of adding a warning message here investigated.
It is unlikely that we will consider being able to convert a code project to a pure Blueprint project. There are too many potential problems to be able to do this automatically and be sure that it would always work. It may appear relatively straight forward in the situation you found yourself in, but we would also need to be able to handle instances where someone added multiple code classes, edited those classes, and made several Blueprints based on those code classes.