Gameplay ability system, ticking Gameplay ability

Hi,

I work with the GAS and I have a design question.

I need to have an ability with tick update. The common way for this is to use an AbilityTask, but we are limited to 1000 tasks, and my ability could be call more than 1000 times.

Is it ok to make the ability tick ?

Thanks

While this is very late. I stumbled on this post with the same question and thought I would reply with the information I gathered.

I primarily use ability tasks for tick events (a simple DoOnTick task works wonders for 95% of use cases) however, if there are hundreds of tasks potentially running at once, we defer to a ticking actor or set of actors (visible or not) and spawn/clean them up within the ability.

A simple actor class/BP which has it’s Tick exposed is plenty for most use cases.

Possible Workflow:



- Use GameplayAbility to spawn ticking actor(s)
- If required, give spawned actor(s) reference to ability or actor info
- Use Wait Target Confirm to keep the ability running while actor(s) tick
   - For example: while the users mouse button is pressed
   - Here, the actors will tick on, doing whatever gameplay business you would like
- Use Target Confirmation to end the ability to destroy the ticking Actor(s)
   - For example: when the mouse button is released


Of course this doesn’t account for many network elements out-of-the-box but it might spark something for your projects. [FONT=“Helvetica Neue”]

1 Like