Able Ability System Info and Support Thread

Feature request: Please let us change EndTime for PlayAnimation node. For example we can use some notifies to change play rate etc

Why not just add support for changing the play rate instead? Or maybe just query if the animation asset is still playing.

In your “Example 5 - Burning Man”, you override the “calculate damage for actor function” and set the target mannequin’s “damaged by ability” variable to the ability.
Is there a way to do this for an unknown target actor? Or is it just easier to make children of a single parent actor or something similar?

You could make an interface or some such for the actor. In my projects I tend to have a base class that all my enemies / players inherit from (MyGameCharacter) which has some basic fields and such (Tags, OnHit calls, etc). You could do something similar.

Hi guys, I have such an error when I try to compile able blueprint ability. I added to Inputs Abl Ability Context variable (but I can not set visibility as with other variables if it is the case). Should I give references to “self” somewhere else, eg. in Player Character? Anyone can help?

1- You should create a discord for this awesome product :wink:

2-In your downloadable project, when I press play, it said machinegun has compile error. skipping it fix it.

3-Each time I open one of your 2 ability, it ask for a preview asset (I put firstcharacter bp) and a second empty screen (with no indication what it used for) is displayed after selecting the preview asset.
Regardless of the asset I select, the ability editor preview is empty.

4- machine gun has no sfx played.

Im trying to get familiar with your product using your demo project.

Yea, those projects are fairly out of date(4.16?). I need to just re-compile them against the latest.

The Ability Editor Preview Asset flow changed in 3.0, you need to add the classes you want to use for your Preview Asset to the Able Editor Settings under “Preview Asset Allowed Classes”. Then you can just use the drop down next to the Preview Asset on the Toolbar and select the asset you want to use.

There should be no sound effects in the Machine Gun asset (or at least I don’t recall hooking it up). Again, I just need to do a pass on the examples real quick and update them. I’ll try and knock that out sometime this week.

The Context is const (read-only) in most callbacks, so yea, you need to make sure any methods you are calling are also const, or store the information on another object (like the Player Character as you suggested).

Thanks for your fast reply :wink:

Yes, ive figure out that after all your update your UI may have changed.

Maybe some new tutorial is a good idea too.

You should let us download your TPersoncharacter template too :wink:

Thanks for your time updating all this… ive bough your product last weekend… and to be honest its a nightmare to follow tutorial that shows a different UI… hard to figure out what we do wrong when we dont get what you get on your video lol

For instance, your “creating a simple ability tutorial”… you dont have the same prompt on the screen.

I remember switching the version of the engine to your template…(right click on project file). maybe i should have open it normally and let UE4 recompile as im usually doing when dealing with outdated/new engine version plugins.

Just a reminder that i do think your optimization alone worth every penny of your product… but its really hard to find tutorial or other people making video using your product and searching for able ability give a lot of tutorial regarding the builtin ability system of UE4 …not yours…

having your own discord will help having a community helping each other and saving you time. (if you are not familiar with discord, i can help you administrating it).

Regarding your machine gun, i mistyped… i mean in your video we see VFX… decal… at the moment, you only have the gun animation working…i dont see any other visual effect.

Note: in the marketplace page, you give a link to a tutorial (creating a simple ability i think)… this link is not public… so when people get on your youtube page from the other link…we dont see this kinda important tutorial on your youtube page. It tooks me a day to notice that lol

And people are talking about showroom… i dont think ive seen the download link (except recently, from a comment…i think) you should put all your video on the store page and on the first post of this forum.

Hmmm, I hadn’t seen that. I’ll investigate.

So the Store page actually has a very small text limit and I’m pushing against it hard. That said, I’ll try and clean things up and link all the projects in one place (likely on and have the store page link to that).

Maybe this can help with the characters limit:

Most things are already using URL shorteners. The problem is the count is the RAW character count, not the formatted character count. So even all those hidden links still go against the limit. That said, I want to do a store page refresh and just use a large image for the main body followed by a series of links for tutorials, samples, etc. Just gotta bully my artist buddy for some time. :slight_smile:

Kinda stupid question, but how do I reference the user of the ability? I’m trying to cast to my character in the ability, but I am not sure how to get the character for the “object” input of the cast.

Assuming you pass in your character when you create the Ability Context:

Ability Context -> GetSelfActor -> Cast to Your Character.

Thank you. I forgot all about the context pin.

@ExtraLifeMatt where goes DynamicBranchAbility and OnGetBranchAbility function? I’m using combo system which need to pick which ability to branch to and I see that in new version there is no dynamic branch…

I see there is FGetAblAbility - but how to use it in C++ not in BPs?
I have my own Ability class (in c++) extending from UAblAbility and earlier I could just override OnGetBranchAbility function and point to my combo system.

OnGetBranchAbility is deprecated (or should be). Just add the Function Binding by clicking on the + next to the Ability on the branch task.If you want to do it in C++ just basically copy the name of the method you would get in blueprints, add it to your Ability class, and make sure it’s a UFUNCTION.

You can step through the BindDynamicProperties method on the Branch task to watch it try and find the method.