Able Ability System Info and Support Thread

Can you pls make some prints to show this?

Able v3.20 has been submitted. Notes below.

[SPOILER]

Able has some amazing users. One is @JSwigart who has been kind enough to share some of his custom changes back with the community. I spent the last few weeks integrating his changes and getting them ready for the community at large. Iā€™ve denoted his changes with (**). So, if you see something you like in these notes with that mark - be sure to give him a thanks!

Able v3.20

Changes

  • New Tasks **

    • Play Camera Shake - Plays a camera shale.

    • Play Forced Feedback (Haptics) - Rumble

    • Overlap Watcher Task - Watches for overlaps and reports to your collision event.

    • Ignore Input Task - Disable Movement, Camera, or All Input on a Pawn.

    • Check Condition Task - Checks for an arbitrary condition. Can be used to prevent Tasks within an Ability from executing until some condition is met.

  • More data validation tests for Tasks and other objects. **

  • Dynamic Binding now supports:

    • Query Shapes

    • Sweep Shapes

    • Particle Parameters

    • Shader Parameters

      • KNOWN ISSUE: Shader Parameters binding generation is still a bit funky given you can have many bindings on the same task. If you want to bind multiple shader parameters, you may need to rename the function appropriately ( ā€œOnGetDynamicBinding_Shader_<DynamicIdentifier>ā€). If you go into the editor and it lets you view the binding from the field drop down on that specific property - then youā€™re all good.

  • Ability Editor will now draw targeting queries / sweep queries when currently selected, this lets you align the volume without continually running the Ability. **

  • Ability Editor now has a ā€œDuplicate Taskā€ option if you right click on a Task. This will make a copy of the Task. It needs its own icon but I didnā€™t want to hold the feature for art sake. :slight_smile:

  • Added OnAbilityStackAdded / OnAbilityStackRemoved callbacks when passive stack changes. **

  • OnAbilityStart / OnAbilityEnd now pass in the Ability Context rather than just the Ability class (which you can still get from the context). !!!C++ API CHANGE!!!

  • Fix an issue where Particle Binding was always using the static value when it went to actually play the effect.

  • Animation Montage Section support. **

  • You can pass in a UDamageType class to the Apply Damage Event.

  • Collision / Sweep types now take in an array of Collision layers. The old single field is deprecated but will still work for the moment.**

  • Silenced some annoying warnings about world context when calling various Ability blueprint functions.

[/SPOILER]

As always, please continue reporting feedback and let me know if you have any issues.

Iā€™m working with my artist buddy to do a pass on the Able documentation / Store page, so expect changes to that as soon as we nail down a plan (hopefully sooner rather than later).

Targeting -> Custom Targeting

Then in your Ability Blueprint, override ā€œFind Targetsā€ (CustomTargetingFindTargetsBP), that has an array parameter named Found Targets. Any actors added to that array are added to the context.

Trying to do this tip aboveā€¦I found a crash problem (like image below)ā€¦When I play animation with able plugin in multiplayer projectā€¦always got this crash errorā€¦I remove animation of able ability and all goes well.

The same error occour on builted engine in 4.23.1.

I can submit logs if you needā€¦

Thatā€™s something with the animation itself. Looks like bad curve data? I saw that before in some other thread. Iā€™d search around and see if you find the issue, thatā€™s outside of Able.

I only stop to play animation in ably ability and the error goes away.
Look your plugin. If I canā€™t play animation in there is 4.23, her are unuseful. I like your plugin but need a better support on this.

PS: The only curves I have in my project are from ALS and I never edited or changed anything about it ā€¦ they are as original and never gave a problem.

I went back and found the error you got in one of my old emails from a user. They got that error when using Advanced Locomotion on 4.23. 4.22 doesnā€™t have the issue. Itā€™s apparently a bug with Advanced Locomotion System, not with Able - or potentially an incompatibility between the two (which I would shocked by since Able just calls UE4ā€™s animation calls).

I fix this by marking RF_ArchetypeObject flag when adding an new ability task. Hope it work for u. :slight_smile:

Hello,

Iā€™m using Able to attempt to play a particle effect on an npc. Iā€™m using custom logic for targeting - however I cannot seem to actually have the particle effect execute on the target npc. I get a lot of crashes trying variations - so thought I should just ask rather than tear my hair out.

Our targeting and combat systems are external to able (hence the custom logic) - weā€™re just using a simple tab targeting mechanism at the moment.

So my ability is just a particle effect.

As I note it has custom targeting :

Iā€™ve overriden ā€œFind Targetsā€, found my target and that is being assigned to ā€œFound Targetsā€.

Iā€™m not quite sure what I should place in the Task Targets section - does Found Targets override this? (Iā€™ve tried a few variations but none seem to work and/or crash).

Any ideas?

This is fixed in the latest update, I just ignore filter out the REINST and such. If I find that doesnā€™t solve peopleā€™s problems, then Iā€™ll look into the Archetype Object flag.

Target Actor should be the correct field. Turn on Verbose for that task and you should get a print out of exactly what is happening. I will note that Play Particle Effect had a couple bugs in it that are fixed in the latest version (namely with the dynamic binding always returning the static particle effect referenced in the Task, and that attached Effects on Targets didnā€™t work correctly).

Do you have an updated tutorial on beams? I canā€™t follow chain lightning tutorial.

What specifically are you having a problem with? Beams should be relatively unchanged.

Sorry I should have been more specific. I do not see a ā€œbeamā€ section in the ā€œplay particle effectā€ task like in the tutorial.

Ah, I believe those should be replaced with Actor Particle Parameters. Beams were super hacky back when I made that tutorial. If they just use Actor parameters you can simply set those. I get what you mean by saying itā€™s out of date, Iā€™ll check it out and see if I can get it updated.

Able v3.21 has been submitted to Epic.

Hi.

Iā€™m finally going to start spending some time with Able and was wondering since you are adding so many new features, will the two year old YOUTUBE videos still be validā€¦ Thanks for all your work.

teak

Yup, theyā€™re all still valid. The only one that is a bit off now is the Chain Lightning with setting up the beam particles. For that, you want to just pass in the source / target as Actor parameters. Other than that, all thatā€™s changed is the skin of the editor and new Tasks have been added (+ features like dynamic bindings).

Loaded for the first time and I started to just click aroundā€¦ Yeah, I know, silly. So, when I open a new ABLE I clicked on VALIDATE and I get a crashā€¦ I didnā€™t do anything else, just click validate. For sure, this is not the normal use of validateā€¦I didnā€™t do anything that needed to be validated, but itā€™s still a crash.

teak

PS: 4.23.1

I thought I had fixed that already, but thanks for the report. It should just return if you try to validate nothing, but obviously something is still assuming a valid ability.

I like to do a branch where I need to press W+LMB to enter in next combo ability.
I try to do this and donā€™t workā€¦the branch pass with only one key pressedā€¦I tried in many ways and couldnā€™t.
This is a Bug??? Can you explain how to do this if Iā€™m wrong???