For some reason I am having trouble with this and I suspect its really simple.

Ok so I am working on the remote targeting system you usually find on some abilities in MMOs. These are the abilities where you activate it and a marker follows your mouse like in the picture below.


So I have everything working up to one point where I just get lost and cant quite see where the problem is.

I have a special base ability parent that handles every ability in the game. So far its working out great. This particular task is a bit of a different problem in that in order for it to really behave just like in an MMO I need to pipe it to the player controller or I figure out a clever way to pipe right and left mouse clicks over to the action_base blueprint. So my idea is that I make the ability wait until the player either picks a target or taps right click to abort the action. All of this works fine so far.


At the start of the first image I check the struct if this ability is a remote target ability. If it is then I request a target from the player controller. This works well because if the cast to the player controller fails then I can cast to an AI controller or maybe even a boss fight blueprint that feeds targeting info in different ways. So far so good.


In this image I spawn the unique target marker at the scale that is appropriate for the ability. In this case a high damage fire element AOE nuke that hits fairly hard with a long cooldown. The macro is set to loop until either the a location is picked with the targeting marker or I cancel out of the ability. That all works great right up until I have to talk to the ability again.

TLDR: The two functions for “remote target failed” and “remote target passed” are not able to properly communicate with the action_base blueprint.

Even though I passed the specific ability through the RCP that fired this whole thing off I cant seem to get those two things to do anything back in action base. All I need is an origin to spawn my invisible dummy target so that I can place an AOE on the ground. I have tried all kinds of different things but the actions either wont replicate over the network or nothing seems to happen at all. There is indications that it kind of works in some ways but I cant really explain why its acting this way.

I am so close to getting this to work but its just being really stubborn!

Ok I think I figured out the problem.

My spawned action_base for some reason is unable to pass itself as a variable to the player controller. No matter what I do. Self cannot be passed as an actor or an action_base reference. Its always invalid.

What am I doing wrong here?