I don’t know if this feature already exists but let me know if it does. I am going to be renaming my project here in the near future and instead of creating a new one and migrating all content over to the new project, I wanted to know if there is either already a way to easily rename projects (including root directory name) and if not, maybe to add an additional Windows Context option when Right-Clicking on your UE4 project file to rename a project and it will go through, update the root folder name for the project and any dependencies required as well as updating the Project Settings.
Stryker, have you tried AnswerHub? This seems like a question that other people will also like answered. That way, the answer will be available permanently to them.
Hey Jez, not yet. I usually log a lot of things over there but I went to AnswerHub and started to post and noticed there wasn’t a section for feedback over there so naturally I thought of this thread. Also, I post a bunch over there and have even posted feedback and don’t usually get a response unless I have a post in the Bugs section. My last one I think I posted weeks ago and still no response. I guessed this thread would get a little more exposure but I may be wrong.
A feature request has already been logged and planned for this with our Launcher team. The best way at the moment is to clone your project and set a new name that way.
Awesome!!! When you mention, cloning, are you saying make a copy of the root folder and go through and rename everything, or start a new project with a new name, and migrate all the content, code and levels over?
In the launcher there is the option to Open, Delete, or clone your project. When you select Clone you have the option to choose the name and it will make a copy of your project with this new name.
That’s actually perfect for the time being, didn’t know about that
Quick question though, I compile the source and since I started doing that, I haven’t actually used the launcher. Should I install the launcher that comes with the source code. The normal one doesn’t detect projects or UE builds that are post-compiled. And I guess by the normal one, I’m referring to the standalone launcher that you can download and install.
Thanks once again Tim, appreciate it!
Honestly, I’m not sure with source projects as I don’t do a lot with them myself. I’d say give it a shot with the launcher that comes with source and see if that works. Let me know how it goes!
It depends on your goal. Renaming the .uproject is trivial (literally just rename the .uproject and the folder it is contained in) and shouldn’t involve touching any source code, but renaming specific C++ modules is significantly more awkward and involved.
To rename a C++ module, you need to:
- Update the reference to the module in the .uproject or .uplugin
- Rename the .build.cs file, and the class name inside of that file
- If other modules reference this module, you need to update their build.cs files to reference the new name
- Update the export macro for exported symbols in your headers (e.g., class MYMODULENAME_API UFoo -> class MYNEWMODULENAME_API UFoo)
- Update the name in the IMPLEMENT_PRIMARY_GAME_MODULE or IMPLEMENT_MODULE line
- Optionally rename other classes or files (e.g., your private PCH header) that had the name of the old module in them
- Add a redirect to DefaultEngine.ini (ActiveGameNameRedirects in [/Script/Engine.Engine] I think) so content doesn’t go whacky
- Probably some other things too, this is a list off the top of my head
- Open your project_1
- Select everything in content browser and Right-click on the folder/folders.
- Choose Asset Actions > Migrate
- Find content folder on PC of your project_2 and copy this data.
- Now migrate separately level map to your project_2
Now all assets including blueprints data and level info are migrated to your second project that use another name.
Its a good idea to do ^^ this ^^ periodically, as it helps slim down the project / keep it smaller.
That helps reduce corruption prior to packaging. But it doesn’t copy over crucial settings!
For that you still need to export ‘Project Settings’ manually as INI (Inputs etc) and import them…