Able Ability System Info and Support Thread

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).