I have a blueprint that extends Object. It’s not an actor and it doesn’t need to be spawned in, but it needs to “query” the game world. E.g. I need the SphereOverlapActors node or some equivalent, but it doesn’t appear in the menu, context-sensitive or otherwise.
I know I’m misunderstanding something. I’m guessing something in the actor class hierarchy brings along a library with that node but is there a way to import that in custom blueprint classes that extend Object?
Note: I can work around this by making a function on an actor and calling that but would still like to learn why. I couldn’t find a similar question on the forums or reddit.
Also, can’t use the Draw Debug Shape nodes. I can use print which expects a World Context Object which I can pass in an actor in the game world and that works. Wondering why the other nodes don’t do the same?
I’m creating an affix system for buffs/debuffs. I have an affix manager that is an actor component. The affixes themselves are just objects that can perform some logic like changing stats. It didn’t make sense to me to make it an actor and use the spawn actor node when creating them and adding them to the affix manager. Unless that is exactly what I should be doing lol.
Would love to know as well. I wish to use objects as an Action/Spell sort of thing which actors would be overkills for with a large amount of added unnecessary package they inherit.
I would need nodes like FindPathToLocationSynchronously and some others and would be very nice if I could just extend the class.
Made a child class from uobject, made it blueprintable, all is well but simply including navigation system v1 with #include "NavigationSystem.h" doesn’t add the mentioned node into the right click menu even without context. I understand that the uobject lacks ticks and a lot of other things but I have seen the sytem properly handling that by exposing a WorldContext parameter for a node so I can add the actor etc. that will be actually running the node instead of where I’m calling it.
What I want is basically get Outer, cast it to Character and call the pathfinding node from there. It is completely possible to create a function that mimics the pathfinding node and all it does is call said node with the given parameters but it feels ridiculous that I can’t just add or include the actual node instead.
Tried including everything from the inclusion list in Actor.h to no avail.
//Update
.build.cs needed navigationsystem added, that made my code work. Partially.
Compile works just fine but the function still doesn’t appear in the RMB context menu among the nodes I could add.
BUT if within another blueprint I “construct object from” MyClass and drag RMB from that the node is on the list. Feels like I need to directly command the list itself somewhere, simply including things won’t make it recognize them automatically.