Slightly advanced Ability/Spell Blueprint system

Hi there,
Im currently working on, as title says, “Slightly advanced Ability/Spell Blueprint system” since i didnt want to purchase current one from marketplace. So currently I have fully networked base functionality like :

  • Creating ability for a controller(ai or human doesnt matter)
  • HUD management (setup button icon, manage cooldown progression, play animations on buttons, activate abilities on button click)
  • Targeting management(like appearing mouse cursor, creating decal visual for indicate aoe for AOE based abilities)
  • Playing animations and getting notified when they ended (casting or not casting based on montage ended/interrupted or notify firing)
  • Doing some other basic stuff like spawning projectiles and dealing damage.

Now im start to develop “slightly advanced” functionality, like changing Character status(stuned, frozen etc) and Changing Characters Stats which is showed me a design issue. Since everything “works on interfaces” for being able to inject ability into anything, i need to create interface for each Stat which i want to get acces to(mana life etc) and stat mechanique which i want to use is base bonus and increase(if i want to add 10 to max character life via ability and increase life value for a 10% it require setup of three extra values like base life, base bonus life and life increase bonus for end result being mathematically and RPG :slight_smile: correct) And all this stuff would require from a blueprint system user create and setup like that a lot of variables(20 total mb) which is looks kinda clunky.

Also, in basic features i want to include some functionality for secondary effects like burning ground (damage over time) or frozen/stunned affects, “an aura” base ability(toggle) and a lot of “ability nodes” which would act like builder for multi step spell functionality (adding functions like “explode”, “spawn projectile” + “deal damage in cone” and “drain life” to your blink ability would make it explode, spawn projectiles which would deal damage to everything behind hit target in cone and give a character life in only 4 functions and few wires.

So questions is, what do you guys think about this Stat system and should i create this extra functionality to support buff abilities but make it clunky to full setup or make it really basic but easily expandable? And what You think about “ability builder” system with those extra function library.


Well , just my 2 cents but I think the blueprint idea for what you are making is rather niche as it currently stands(if you choose not to make a stat system). It would require somebody already having a stat system in place and adding on top of it, which I don’t see many people being in that situation. Now what I would do in your place is just add a basic point and click movement/attack system and make a basic hack&slash character controller and price it higher.

That would be something I would happily buy instead of just a blueprint system that i would have to connect to my own blueprint system for character movement and animations and stats, even if it would cost double or triple the price of the latter.

Yes, thats exactly what i start to feeling about stats, way too nice and too deep from core idea, thanks.
I like your idea of controller, currently it working without any movement component interaction, you can click ability outside of a cast range, it would aware you about it and prevent casting, but not moving forward to make cast possible, but basic h&s and point and click movement/attack system is out of scope of this project as well. I’m aiming more for rpg/moba plug and build your own spell.
But your hint is useful, i really need to check all basic UE4 controller setups and make some features for each of them. Primary is point and click.

Also, what are you actually mean when say “make a basic hack & slash character controller” currently it works on a WASD + mouse controller, more like MMORPG style and have no trouble to be integrated to isometric or even side scroller controller, since it require only 2 variables to setup and one more if you want it to have a HUD integrated.

Well a moba character is the same as a h&s character. When i meant hack & slash controller i meant something akin to diablo 3, which is very similar to moba controls. You move your character with the mouse, there is an isometric camera, you use abilities etc.

In my opinion, so take it for what it’s worth, I feel that the ability builder system that would implement through interfaces would be a hit. Being able to “piece together” the spells and abilities would be quite cool, which gave me some nice ideas. I probably wouldn’t go into depth with the character stats, as that is usually a system people make or have themselves when looking for something like this. I suppose if I did not have a stats system in my project, it would probably be a higher selling point, but I don’t think that is what makes your system stand out. You’ll have to look at what makes yours stand out from the other systems already released and available.

Your modular spells and abilities is something that helps it stand out from the crowd. Network compatibility is a must to be able to even think of selling something like this. But back to the point, look at what you have that helps your product to say “Here I Am, World. Come Get me!

So thats point and click controller and basic one is actually comes with UE4, even if you gonna make it more advanced, thats nothing more than 5 extra functions to polish a feedback and thats IMO not something which you should sell on a marketplace.
Thanks, but too many words about controller which i didn’t even making, i would make a video in few days as a demonstration so we would have more things to discuss. About price, i’m aiming for something like 10-15$, depending how far i would go with actual “ability builder” system.

Then I would seriously be buying your product, depending on how far you went with the actual “ability builder” system. :wink:

Thats exact feedback which i looking for, how far should i go. And with Great Power of Interfaces comes great downside of a lot of middleware links, which may be hard to dive into, right now its looks like giant, not mess but really a lot of functions. There are a example of functionality which im looking at, right now i have basic fireball which works like
i press a button, it check mana cost, cooldown and other stuff if everything ok it trigger activation which removes mana, starts cooldown and start cast animation, when animation ends it fires fireball - very basic. But what if i want to fireball remove mana and start cooldown after casting was success but not interrupted, i just create a child, overwrite 2 functions: ability activated server and cast finished moving those two nodes from activation to** cast finished**, right now on a child you can get acces to any step of ability, client and server one and i feel like even without documentation by function name only you kinda understand what is doing.

if i would go too far, price might be changed :wink:

That stuff already exists on the marketplace.

Other than that, @CriErr, something like an ability builder would be really nice, depending on how “friendly” you would make it. Thinking of Blueprint settings for Spell Type (AoE, Buff, Debuff, Projectile, etc), range, damage, cost for clicking it together would be cool for more basic abilities. The actual skills/spells would also need to have the ability to call some custom methods/callbacks for checking prerequisites that are outside of your system (character level/stats/whatever).


thats here, but this very basic builder is not and i dont sure how and should i make this extra UI which is gonna operate with stuff which you alredy have and if you have it it works by themself anyway :), currently everything driven by you premade “ability actor” which is a child/copy of “everything in one ability actor” and this datatable where stats are going from. Because if u think about it, what is “AOE” for you ability is depends hardly on ability, so i want to provide basic functions to operate with those stuff(like “explosion” - you plug your aoe into explosion node and put it in whatever ability step you want it to hapen) and also i want to provide ability templates, like basic projectile, basic AOE, basic aura(toggle) and basic buff, which gonna give a sence what can be done, but still they are a child or copy of “all in one” ability actor and follow idea of inheritance, as far as i understand it from non programmer perspective.

Also, with simple modification it can become a weapon, a shotgun, you use reload animation as delay between shots and everything else is pretty much a same or if its a machine gun, you use a main timeline which meant to be a cooldown as hard coded delay between shots and use animation notification of shooting as actual event of spawning bullet, again everything else is the same. So think of it more as a “template builder” than an actual spell system with only spells, spell schools and other stuff, you could add it, just add some variable to datatable, call it fire spells and done, now you can access it and do some fancy stuff.

**** I am in that exact situation mate. I am trying to do a spell sistem which only uses cooldowns as the resource (no mana). I could definetly use something like that and attach the stats to it later.