What exactly is the status on the hot-reload feature, I’ve attempted to use it in both the 4.6.1 build of the engine and the new “promoted” version of the engine (which claims to be 4.8), both taken off of github and compiled by myself. In both cases, hot-reload doesn’t actually seem to hot reload anything, I can’t add new properties or functions, and minor changes to properties don’t go through (such as changing a UPROPERTY’s category). Is there a specific set of steps that I have to follow to make use of hot-reload? I can’t find any well discussed forum posts, nor documentation around the use of hot-reload.
The expectation is that any of those changes you’ve made above would apply immediately and correctly. Hot Reload might be unstable in the promoted 4.8 build as we’ve been making significant changes to the build system in that branch. The 4.8 release has only had minimal QA testing so far, as we’re busy working on the upcoming 4.7 release. I’d suggest testing using the 4.7 preview release – it has had extensive hot reload testing. It’s possible there are some edge cases that we haven’t found yet, but if you can help us reproduce a specific issue I’ll make sure it gets fixed ASAP.
Hot Reload works in 4.6.1 as well, but there were several known issues we discovered and addressed in 4.7. For example, certain changes made in your class constructor would not be applied, and this now works in 4.7.
Alright, thank you for the response, I will grab the 4.7 branch from github and compile that, if I have troubles with the hot reloading feature in that branch then I’ll post a detailed follow up of my steps so that perhaps you might be able to find what’s going wrong on my end.
Edit Note: I just found out that my firewall was sandboxing the installation files for 4.7, its possible that there was some other type of mischief going on that could have caused an issue with the other versions as well, I’ll keep you updated.
Couple things, first, I’m having absurdly bad compile times in 4.7 a full minute for each build, no matter how small the change, it sits on Build Started for almost 30 seconds before it starts building, then takes about a minute to finish compiling. Secondly, if I start the compilation in Visual Studio, despite the fact that the output window says “Compiling game modules for hot reload” no hot reload actually takes place at the end of the compilation (once again that takes a minute and bit). If I start the compilation in the editor then I get the log information, it then tell tells me that Starting HotReload takes 40 seconds and at the end of the Compilation I get an error:
LogModuleManager:Warning: ModuleManager: Unable to load module ‘TurnBasedStrategy’ because the file ‘C:/(Removed)/Unreal Projects/TurnBasedStrategy/Binaries/Win64/UE4Editor-TurnBasedStrategy-7918-Win64-Debug.dll’ was not found.
Warning: HotReload failed, reload failed /Script/TurnBasedStrategy.
The compile appears to take around 50 seconds.
- Created new “Blank Code Project”
- Compiled the new project
- Opened the editor, derived a class from AActor
- Wrote some code and stuff for that new class
- Closed the editor, compiled.
- Opened the editor
- Changes are fine
- Edit code.
- Try to hot-reload
- Hot-reload fails.
Also why in 4.7 when I open a blueprint do I get a “Data only blueprint” which requires me to then click a text link to open the Full Blueprint Editor.
Another also, when Visual Studio Updates IntelliSense and browsing information it crashes visual studio, could that be why my compiles are so slow? I disabled intellisense to stop those crashes.
I just tried to compile a project that has absolutely no changes in it, it took the compiler 53 seconds from pressing compile to figure out that nothing had changed, the following is the output log information I got:
1>------ Build started: Project: TurnBasedStrategy, Configuration: Debug_Editor x64 ------
1> Target is up to date.
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
Hello Cidubic and Mike,
I’m having a similar issue. If I use version 4.5.1, hot reload works as expected, every single time. If I use 4.6.1, when making a change to the C++ class regarding properties and then either build the project from VS or use the HotReload button from the Editor, the changes appear correctly in all blueprints that are based on that specific C++ class, but not in any other actor that references those blueprints. However, when adding or modifying a UFUNCTION, the changes are not propagated anywhere, and I need to close down the Editor and re-launch it from VS in order for it to update properly.
Now, having tried most of the 4.7 Preview Builds, none of those work. Whatever I do, when going back to the Editor after an attempted Hot Reload, whether it is in a derived blueprint or in another blueprint which references the derived one, I always get errors inside the event graph. They point out that the Object I am manipulating is not of type HOTRELOADED_MyTestActor_0, and I cannot access any of its variables or methods.
I have exactly the same issue since 4.5.1, if i use hot reload for a class every references of that class inside other blueprints become HOTRELOADED_VariableName and i get compile errors inside those blueprints and i can’t save them. I need to restart the editor to make it work.
This is still an issue in 4.7 release. It happens pretty often when a UFUNCTION is added or changed, so I’d imagine Devs are aware of this (?)
I’m not having any luck with this at all. I still have to restart the editor to see code changes. This means everything from new classes to simple source changes inside of functions. I can’t get any code changes to update in-editor. Then when I try to save a blueprint that uses a function that was hot-reloaded, I get transient errors.
If you all are having trouble with C++ projects within the editor, you’ll be better assisted by creating an AnswerHub question. You can do so by going to: https://answers.unrealengine.com/
Once your question has been submitted, we will work diligently to respond to your thread within a timely matter. Please make sure you’re specific on the issue you’re having, and provide as many repro steps as possible so we can reproduce what you’re experiencing.
I found this thread because I’ experiencing the same issue mentioned here (HOTRELOADED_VariableName), with 4.7.4.
I’ve created a question / bug report, it can be found here: