Unreal hides very useful beginner options by default!

Well yeah whilst you are correct, that’s why I pointed to basic tutorials to get eobet started. Sometimes it’s best to start right from the beginning and follow a sort of standard as opposed to simply saying “it’s bugged” 9/10 No matter what it always depends on your structure.

Moral of the story, start from tutorials, build your knowledge up from a base and work from there. Eventually you will get the hang of it and can explore new methods to handle your debugging. There is no “right” or “wrong” just what works and doesn’t work. So yeah get workin on those courses boiiiii

Oh I think that would require to either wait for “Verse” for live script changes or a severe change to the Blueprint compiler.

Blueprints are compiled to bytecode before running.

1 Like

I think you’re still not seeing the issue…

Unreal Engine stops reflecting what’s actually going on when you try to debug it!

(Also, to even confirm this, I had to select the actor in the world outliner before the breakpoint was hit, because Unreal prevents you from doing this after, which is ludicrus to me. It’s like, it knows it’s ■■■■ in this area and tries to hide it!) :upside_down_face:

EDIT: Yes, I forgot to hook up the set wire in the screenshot… ignore that, that’s not the issue either. :stuck_out_tongue:

Bro, you put a breakpoint on the Branch LITERALLY before you set the “Establishment Manager” of course it’s not going to update your set variable. You need to put a breakpoint on the set variable itself cause that’s when you’re actually changing the variable. But if you already did that and it didn’t work

you could just use a print string as well. there’s a lot of ways to get what you want.

1 Like

If you are having trouble understanding the engine, then I would highly recommend the official Online Learning. I speak from experience; I started with Godot and Unity.

You are seriously making me doubt my ability to explain myself clearly… the manager in question was created before the screenshot by an entirely different blueprint on an entirely different actor. I’m just trying to retrieve that reference now, and the problem is that Unreal will not display this information unless, as you say, you manually do prints or set watches… the entire issue could be fixed if only Unreal didn’t freeze the outliner and prevent detail panel updates during stepping through blueprints!

This is the “feedback for the unreal engine team” part of the forum, so if you, like me, have any experiences on how Unity or Godot did things better, I’d love it if you could share it here to gather them all in this thread. Maybe one day, someone from Epic might even read them!

  1. What you have circled is not the world outliner, it’s the components tab of the details panel; the world outliner does update, the components tab does not. If you need to see an array of components on the actor, make one and make it editable, that way, it shows up and updates in the details panel.

  2. I get what you mean by the editor freezing and not letting you select anything. That’s because the frame hasn’t been completed or rendered yet, meaning there’s nothing to show. Keep in mind, when you hit a breakpoint, you are freezing the game mid-frame while it’s still being processed.
    If you do it on the first frame, the screen will be black because nothing has been rendered yet:

  3. Why are you afraid to add prints? Prints are what are used to debug programming everywhere; they exist literally for debugging, and print string in unreal is literally meant for the sole purpose of debugging, which is why it has that yellow construction tape that says “Development Only” on it (and has the option to print to the log), which means it only runs in development builds.

1 Like

The desire is: “I’d like to browse the entire scene, and look at properties, while blueprint execution is paused.”
I understand the desire. Unreal is not (currently?) structured to support this.
For example, properties can be procedural – you’d need to execute some blueprint to read the property value. But Blueprints are also single-threaded. So, if blueprint execution is paused, properties can’t (in general) be shown.

This is a limitation in the engine, I agree! If you personally can’t develop a game without having this feature, then you cannot use the Unreal Engine to develop your game. Sorry!

I think the issue is he expected Unreal Editor to be running in the Virtual Machine itself, like Unity does, so everything could be picked and inspected from details panel…

But if that was the case then Unreal Editor would have the same bad performance of Unity Editor (everything is running on the C# VM even the editor).

Majority of Unreal Editor is c++ code and completely separate from the Blueprint VM, so there’s a lot of things blocking you from seeing things the way Unity would show.

You can pause the simulation and do that; just not at a breakpoint.

My bad my bad! I misread your question because you said world outliner. Like midgunner said, either make the component instance editable or use a print string.

Since your issue seems to be related to the game engine and how it’s different than in unity seriously take the time to follow the courses available for debugging. Every game engine is different and that’s just due to the goals of the engine devs.

The best way to handle these situations is to work with the program and learn more about it as opposed to saying it doesn’t work and expecting the devs to change something which can be debatable at best.

I don’t think he expected that. It’s pretty clear that he expected to be able to pause/debug a script, at the same time as he’d be able to move around in the editor viewport, and inspect object properties in the editor viewport.

This is not an unreasonable expectation, as a user.

But, Unreal doesn’t support it, and there are some pretty deep reasons why it doesn’t, currently, support that.

Meanwhile, whether the editor runs all, partially, or not at all in the Blueprint VM doesn’t really matter. (In fact, it may do all of these things – are you running any editor widget blueprints? That certainly runs in the blueprint system itself!)

It might be possible to support some kind of “detaching” of the object being currently break-pointed, so that the rest of the scene can keep running, but there are many, many, ways that this could “go wrong” or lead to the debugger not being able to debug actual problems, because “stop the world” is the only way to be sure that the debugger works on the state that the game actually sees.

Which is not particularly helpful when you’re stopped at a breakpoint and want to check the state of other objects.

1 Like

Thank you for seeing it from my point of view!

Perhaps in UE6 the editor will be more accessible during debugging. Fingers crossed. :slight_smile: