Originally posted by ExtraLifeMatt
View Post
Announcement
Collapse
No announcement yet.
Able Ability System Info and Support Thread
Collapse
X
-
Founder and CEO of Angry Penguin Studio, LLC
Dallas, TX USA
https://www.facebook.com/AngryPenguinStudios
- 1 like
-
Originally posted by TheNoontide View PostFinally got my combos working, thanks for the update!Able Ability System - A high performance, robust ability system for UE4. Now Available!
Comment
-
Originally posted by Kelreth View PostHey!Fairly new to able so they're probably easy-to-solve, but I've got three quick questions, would greatly appreciate if anyone could help me with them
So I'm trying to create a Fireball that needs to be cast (in this example 0.7s) and after that fires it's Projectile (if the cast was not interrupted).
How I'm doing that currently (any better solutions, especially when I want to modify cast-times in-game later?):
Have an Ability activate upon Input that starts a 0.7s long Ability. At 0.6999 I spawn an Actor that has a Sphere Collider and the Particle System attached.
If the Collider touches another Character a second Activity is played for 0.0001s that deals damage and plays a passive "Burn" ability on the target hit.
Soooo, to my questions:
1) How could I go about having an Ability that I can activate DURING the Fireballs cast-time but that would NOT cancel it's cast? For example let the player activate an Ability where he teleports a set distance or let him move (quicker) while casting the Spell.
2) About moving while casting: What would be the best solution to make players move at only lets say 20% of their speed while casting any Ability? Slow them down manually in "On Ability Start" and then speed them up again in "On Ability End"? Or applying a passive ability that lasts until the cast is done? Or maybe use Gameplay Tags in some fashion?
3) About the "Burn" passive. I would like it to apply a completely separate Burn instead of Stacking and/or refreshing the Duration of the old one. So if the target player has a Burn on him that's still lasting 3 seconds I want that Burn to stay untouched and apply a new, completely independent Burn, even though it comes from the same Fireball Ability.
I haven't quite figured out a way to do this since the checkboxes under "Passive" only allow for Stacking and Refreshing mechanics (as far as I know?).
and for 2) ive already listed some solutions, i guess i'll just try around with that and take whatever works best ;P
but does anyone have a solution for my third question? is this something Able supports or do I have to write my own logic for that?
and about casting Abilities: what if one player has - lets say - a powerUp that lets him cast 50% quicker for a short amount of time.
That would mean reducing the length of an Able Ability by 50% for one player but not for the other. Any way to achieve this within Able?
As far as i can tell you can only "get Length" of an Ability, but never set it (in Blueprints). Any chance this will ever be introduced? (maybe as a "length scale"?)
The only current solution I would find is to craft a custom Cast-time System and fire a 0.0001 second Able Ability at the end of the cast.
However that would make me have to do all the networked Animations, Sounds, Particles etc..., which Able does so beautifully, myself.
Comment
-
Originally posted by Kelreth View Post
Okay so I've found a workaround for 1) just make the ability that will be activated during another ability passive
and for 2) ive already listed some solutions, i guess i'll just try around with that and take whatever works best ;P
but does anyone have a solution for my third question? is this something Able supports or do I have to write my own logic for that?
and about casting Abilities: what if one player has - lets say - a powerUp that lets him cast 50% quicker for a short amount of time.
That would mean reducing the length of an Able Ability by 50% for one player but not for the other. Any way to achieve this within Able?
As far as i can tell you can only "get Length" of an Ability, but never set it (in Blueprints). Any chance this will ever be introduced? (maybe as a "length scale"?)
The only current solution I would find is to craft a custom Cast-time System and fire a 0.0001 second Able Ability at the end of the cast.
However that would make me have to do all the networked Animations, Sounds, Particles etc..., which Able does so beautifully, myself.
An Ability scale sounds like a good idea, I'll add that for the next update (there may be some trickiness with getting Animations/Particles scaled but it should be do-able). You can already override the cooldown length, but that doesn't help much in your use case.Able Ability System - A high performance, robust ability system for UE4. Now Available!
Comment
-
did the update go live? i dont see the update on launcherFounder and CEO of Angry Penguin Studio, LLC
Dallas, TX USA
https://www.facebook.com/AngryPenguinStudios
Comment
-
Originally posted by ExtraLifeMatt View Post
When you go to Apply the Burn, you could query the Passives already running on the target and then just apply the longer version(Burn2, Burn3, etc). Able expects Abilities to be unique, so you can't have two Burns running on a target (merely 2 stacks of the same Burn ability). So you'll need to break them out into discrete Abilities (even if they are simple copy/pastes) anyway.
An Ability scale sounds like a good idea, I'll add that for the next update (there may be some trickiness with getting Animations/Particles scaled but it should be do-able). You can already override the cooldown length, but that doesn't help much in your use case.
Alright good to know, I'll figure something out then.
Awesome !! I'll glady wait for that update then <3
Comment
-
Originally posted by AP_Studios View Postdid the update go live? i dont see the update on launcherAble Ability System - A high performance, robust ability system for UE4. Now Available!
Comment
-
Originally posted by AP_Studios View Postdid the update go live? i dont see the update on launcher
Not yet managed to work out how to add some spread and recoil to my raycasts, if someone has another hint, I'm all ears and eyes ! I'll promise to highlight the use of Able if I ever get to record my WIP stuff ^^
Comment
-
Originally posted by TheNoontide View Post
Yep, ran it on 4.17 and no problems yet, only little bug I encountered was a compiler result "unrecognized tab" whenever I create a new Able Blueprint. Abiliy Animation Node is working too!
Not yet managed to work out how to add some spread and recoil to my raycasts, if someone has another hint, I'm all ears and eyes ! I'll promise to highlight the use of Able if I ever get to record my WIP stuff ^^Originally posted by ExtraLifeMatt View Post
I haven't received an email from Epic so I don't think so? They have it so hopefully it'll go out soon.
I assume hes running the 4.16 in 4.17?
Now i am confused.
I am also running 4.17 and on open, i get TONS of ABLE errors (because its missing, so, they are 100% expected)
^^ nevermind. Looks like it updated but the launcher needed to restart. I hate the launcher.....Founder and CEO of Angry Penguin Studio, LLC
Dallas, TX USA
https://www.facebook.com/AngryPenguinStudios
Comment
-
Hey!
Just reporting a little bug..So I'm spawning an Actor that doesn't ever move with a very simple Ability - basically just a Zone that stays for a while and heals those inside. However when spawning that with Able (not with the Spawn Actor node - it's fine there!) I always get the following PIE Error:
" Warning Healzone_C_0.Sphere has to have 'Simulate Physics' enabled if you'd like to AddImpulse. "
When changing the Collider Transform from "Movable" into "Static" or "Stationary" the Error says:
" Warning Mobility of Healzone_C_0 : Sphere has to be 'Movable' if you'd like to AddImpulse. "
I'm assuming that's because Able tries to add it's Velocity from the Task Properties to the Actor after spawning it, even though I've left that at 0.
I've also mentioned it in an E-Mail to you, but once again, could there maybe be an Option (boolean?) to opt out of Able applying Velocity to spawned Actors?
That way it wouldn't take away from people entirely controlling their velocity with Able - but it would also enable other Users to control their Velocity with other means or, like in my case, just not apply any.(And you do already have such Options like for example the "Set Owner" boolean for that same Task^^)
Or maybe just not trying to apply Velocity when the Root Component's Transform is Static or Stationary would also be fine
Here's how the Ability is set up so you can replicate the bug: https://puu.sh/xqPWJ/2cc3dc1294.jpg
The "Healzone" Actor is simply a Sphere Collider with a large radius and an equally large Particle System attached to it.Last edited by Kelreth; 09-03-2017, 06:45 PM.
Comment
-
Originally posted by Kelreth View PostHey!
Just reporting a little bug..So I'm spawning an Actor that doesn't ever move with a very simple Ability - basically just a Zone that stays for a while and heals those inside. However when spawning that with Able (not with the Spawn Actor node - it's fine there!) I always get the following PIE Error:
" Warning Healzone_C_0.Sphere has to have 'Simulate Physics' enabled if you'd like to AddImpulse. "
When changing the Collider Transform from "Movable" into "Static" or "Stationary" the Error says:
" Warning Mobility of Healzone_C_0 : Sphere has to be 'Movable' if you'd like to AddImpulse. "
I'm assuming that's because Able tries to add it's Velocity from the Task Properties to the Actor after spawning it, even though I've left that at 0.
I've also mentioned it in an E-Mail to you, but once again, could there maybe be an Option (boolean?) to opt out of Able applying Velocity to spawned Actors?
That way it wouldn't take away from people entirely controlling their velocity with Able - but it would also enable other Users to control their Velocity with other means or, like in my case, just not apply any.(And you do already have such Options like for example the "Set Owner" boolean for that same Task^^)
Or maybe just not trying to apply Velocity when the Root Component's Transform is Static or Stationary would also be fine
Here's how the Ability is set up so you can replicate the bug: https://puu.sh/xqPWJ/2cc3dc1294.jpg
The "Healzone" Actor is simply a Sphere Collider with a large radius and an equally large Particle System attached to it.Able Ability System - A high performance, robust ability system for UE4. Now Available!
Comment
-
Yes indeed it is just a Warning for this case, but in other cases that Velocity actually gets in the way and needs workarounds. And I also like my Projects as Warning-free as possible!
So a huge thanks once again for adding it to your list, it will help me and my OCD a lot
However today I stumbled across a nastier bug: The entire Engine crashes when trying to cancel a passive Ability.
Here's how to recreate the bug step-by-step from a new Project (with Engine v4.16.3, Able v1.70):
1) Create a new Project. I'll be creating a 3rd Person Blueprint Project but it should happen on any kind of project really.
2) Enable Able Plugin and add an Ability Component to the Player Character (in my case: "ThirdPersonCharacter").
3) Make an Able Ability:
- Length 0.7s.
- 1 Task which is "Play Animation" and just choose the "ThirdPersonJump_Loop".
- Finally activate "Is Looping" and set the Loop End to 0.7s.
4) Add 2 Action Mappings to your Project: "ActivateAbility" and "CancelAbility". I bound them to Keyboard 1 and 2.
5) Set up your Action Mappings in your Player Character Blueprint to Activate / Cancel the Ability you created like so: https://puu.sh/xrIhB/fbc81d5f5c.png
6) Go try your Setup. When pressing 1 your Character should start the Animation and loop it infinitely. When pressing 2 it cancels the whole thing as it should.
7) Now go back to your Ability and enable "Is Passive" and hit "Play" again. The Engine will crash when pressing 2 so make sure you saved beforehand.
This not only occurs with the Ability having an Animation Task which is possibly not meant for passive Abilities. I encountered this with an Ability that only had a Particle Effect to play. Also, it even happens when removing the "Play Animation" Task (so even when the Ability does not have a single Task).
Edit: Forgot to include a Screenshot of the Crash so here it ishttps://puu.sh/xrJcN/b6ac1f33a4.png
Last edited by Kelreth; 09-04-2017, 08:16 PM.
Comment
Comment