Casting Spells, cannot spawn Actor due to UObject

Hi there.

I have a problem and I don’t know how to solve it:

I have Spell class (inherits UObject). This class has an event called “Cast”

I also have Spell_Fireball class that overrides the Cast Event.
Unfortunately, I cannot spawn Actors (a Fireball) from within Object-derived blueprints.
Is there a work around to spawn Actors from Objects?
Look at this awesome class diagram:
Unbenannt.jpg

I ran into the same problem, fiddling with a rpg-like items and spells.
Short version: have the spell tell the character that owns/told it to cast, to spawn the fireball.

Long, convoluted version:
When I press the spell cast button, it tells the spell (item class, Uobject) to perform checks. Passing the character (actor), the spell checks that the character has a valid target, enough mana, etc.
When all that is done, and if satisfactory the spell calls the character event “cast spell”, which starts playing a timeline depending on the casting time of the spell. This also spawns a “casting actor”, with attributes depending on the spell.
When the timeline finishes, the actual ‘fireball’ is ready to be created. Calling an event, it spawns a spell actor, with references passed in.
The spell actor, having a reference to the spell Uobject, starts checking its gameplay tags (highly recommend these) and performs whatever necessary logic depending on the spell.
Among other things, it checks if the spell has an AOE tag, and if so, takes its collision sphere, sets its collision on and expands it accordingly. As the sphere overlaps with mobs, it gives each of them a payload, such as damage or adding an status effect that the spell might have had, such as a debuff.
The spell actor is only for gameplay logic and actual effects are handled by other actor references, carried by the spell.

In the end, I have no idea if my system is effective or if it fulfills the dynamic nature I wish the spells to have, since I have not implemented enough kind of spells yet. It’s just something I put together. If you are interested in more information about the way I’m doing things I’d be happy to share node screen shots and more details.

I would be interested in seeing the progression of one of your spells for an example. I can sort of visualize in my head what you are doing in the long, convoluted version. It seems like a solid plan for making spells as dynamic as possible.

Hm, your idea couples the Projectiles directly to the Characters. which is exactly the opposite what I want to do.

I really would like to spawn projectiles from within an UObject derived class, but I can’t seem to find a solution in BP.
Currently the Spell class derives Actor. I don’t like this ._.

Then what do you have in mind? I kind of visualized a character casting a spell, and from that character a fireball would fly toward a target, or something along those lines. And if that is the case, why don’t you want the character to spawn the spell actor?
It would be really easy to do, no need to do something as convoluted as I am doing.

If not the characters, maybe a spell handler actor would spawn the spell actors?