Unless this was broken in 4.6, this is definitely not the case in 4.5.
One thing that is in a semi-broken state currently is the Context-sensitive blueprint menu. If you can’t get a function or event to show in the menu and you’re positive it should, try turning off context sensitive and see if that gets it to show up.
Also, another correction with regards to the tutorial: You can make BlueprintImplementableEvents/BlueprintNativeEvents with return values. However, they are implemented in a different fashion.
Events with no return value are implemented through the EventGraph:
Events with a return value instead show up in the blueprint elements pane as overridable functions:
Hot Reload Compile succeeded, I right click and type in “hot” in context search, nothing shows up
I tried turning off context sensitive as you mention above, still nothing
**5. I closed editor and restarted it, and now I type in “hot” and the event shows up!
I am not sure what you identified as working Camille, but I just tested BlueprintImplementable Events and they definitely dont get hot reloaded in 4.6.
What have you been able to successfully hot reload in 4.5 or 4.6 related to UPROPERTY / anything to do with reflection?
**Personally I am wanting you to be right Camille**, that we can hot reload stuff involving reflection, I am going to test UPROPERTY and UFUNCTION now in 4.6
**Let me know what you discover and what your test results are!**
I tried hot reloading the addition of a UPROPERTY(), and UE4 simply crashed.
Once I reloaded the editor, the new UPROPERTY() was there.
I had the Blueprint that was getting the new UPROPERTY() open at the time of the crash.
So I have not succeeded in getting UPROPERTY() to hot reload in 4.6 either.
Strike 2 on hot-reloading refleciton data.
Camille you are saying doing this sort of thing works for you in 4.5?
**You must have gotten the Special Camille-Is-Awesome edition of 4.5!**
I ran a second test, and I got the editor to not crash using this
After hot reload compile, context menu shows nothing
I tried turning context sensitive off as you suggested, still nothing
I restart editor, and now the new BP node shows up.
**Dont Use Hot Reload for BP Additions**
2. You cant get new BP events, functions, or UPROPERTY()'s to show up using Hot Reload, you must close the Editor and compile in VS.
My statement that UPROPERTY(), UFUNCTION() and BP Implementable events do not work with hot reload is true for me in every case in 4.6.
I cannot make a rigorously tested statement about 4.5 though, and I look forward to hearing what your own research and testing uncovers!
For me, nothing involving reflection is getting hotreloaded in 4.6
To Original Poster
My recommendation that you try compiling outside of the Editor, in Visual Studio, and then loading the editor again still stands, does doing this cause the BP Implementable event to show up for you?
My answer here:
Is something I’ve just thoroughly tested as being true in 4.6.
I know its a bold statement, but review these past 3 posts of mine and you can see its definitely my current experience with 4.6
PS: Personally, Camille, I wish your statement were the correct one, just for the record. But so far its not been my experience.
PSS: I corrected my wiki page to mention that BP Implementable events with return values show up in the left panel, and you can right click to implement them, thanks for mentioning that!
I just went and tested addition of properties, regular ufunctions as well as blueprint events with and without return values. I’ve tested reloading from Visual Studio and reloading through the editor’s Compile. In all cases, I’ve had the changes made reflected in Blueprint after compiling.
Hot reloading of managed things is still a new addition and it might very well have been broken in 4.6, mind you. We don’t have room in our production schedule to integrate before the end of the year so I can’t compare just yet. Apart from engine version, the only thing different beyond that is that I’m running DebugGame instead of Development.
I did tear my hair for a while after integrating 4.5 because none of the changes I was making would reflect in-game. But that was because it turns out that the generated solution does not include the -debug switch necessary to start the DebugGame library, so I was still loading an outdated Development library. But I don’t think this is the case here if you’re running Development as you recommend.
I think I will let Epic take it from here, because all of my test results are displayed in this thread, as well as yours.
This could very well be the reason for our different experiences, again I will let Epic examine this and see what they want to do about it.
I hope you have a wonderful day Camille!
**Thanks again for the correction to my wiki tutorial, I've made the fix!**
Probably implied but I have also found that changing a URPROPERTY from VisibleAnywhere to EditableDefaultsOnly (I imagine any combination of changes would yield the same result) also doesn’t update via hot reload.
I actually forgot or didn’t realize that it was working in 4.5 and assumed that hot reloading BlueprintImplementableEvents was something for the future. I’m glad its a recognized bug because I guess we’ll be seeing it (again) soon then.