Announcement

Collapse
No announcement yet.

Able Ability System Info and Support Thread

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Thank for info!

    How I can get CurrentTime from running passive abilities (GetCurrentPassiveAbilities) - I would like to show TimeRatio in my HUD, and I don't have context there to get time ratio...
    How to create first person shooter game from scratch. Lots of tutorials: http://www.shootertutorial.com - celebrating 50th Tutorial!

    My Marketplace Assets

    Comment


      There is an crash without call stack unfortunately

      - Use SetShaderParameter on Active Ability,
      - Use SetShaderParameter on Passive Ability,
      - Run Active Ability - check if shader changes (eg. color), then activate passive ability with the same shader param name,
      How to create first person shooter game from scratch. Lots of tutorials: http://www.shootertutorial.com - celebrating 50th Tutorial!

      My Marketplace Assets

      Comment


        Originally posted by intoxicat3 View Post
        Thank for info!

        How I can get CurrentTime from running passive abilities (GetCurrentPassiveAbilities) - I would like to show TimeRatio in my HUD, and I don't have context there to get time ratio...
        AblAbilityComponent::GetCurrentPassiveAbilities()
        For Each Passive:
        AblAbilityComponent::GetAbilityCooldownRatio (only takes in an Ability, doesn't require a context).


        Originally posted by intoxicat3 View Post
        There is an crash without call stack unfortunately

        - Use SetShaderParameter on Active Ability,
        - Use SetShaderParameter on Passive Ability,
        - Run Active Ability - check if shader changes (eg. color), then activate passive ability with the same shader param name,
        Unfortunately, without a callstack it's hard to tell what's going on. Odds are you have an invalid shader parameter (or it could be something completely unrelated - need a callstack to figure out for sure).
        Able Ability System - A high performance, robust ability system for UE4. Now Available!

        Comment


          AblAbilityComponent::GetCurrentPassiveAbilities()
          For Each Passive:
          AblAbilityComponent::GetAbilityCooldownRatio (only takes in an Ability, doesn't require a context).
          yes but I don't want to get Cooldown, but CurrentTime for Ability. I need to know TimeRatio for specific Ability.

          As for crash - will try to figure this out.
          How to create first person shooter game from scratch. Lots of tutorials: http://www.shootertutorial.com - celebrating 50th Tutorial!

          My Marketplace Assets

          Comment


            Originally posted by intoxicat3 View Post
            yes but I don't want to get Cooldown, but CurrentTime for Ability. I need to know TimeRatio for specific Ability.

            As for crash - will try to figure this out.
            Ah, I see. Yea, there's no way to currently get that value (you could easily add it though). I'll put it on my list.
            Able Ability System - A high performance, robust ability system for UE4. Now Available!

            Comment


              you could easily add it though
              Can you help? Basically Times need Context and when I create Context it creates "new ability" so can't get actual running time for passive ability.
              How to create first person shooter game from scratch. Lots of tutorials: http://www.shootertutorial.com - celebrating 50th Tutorial!

              My Marketplace Assets

              Comment


                Originally posted by intoxicat3 View Post
                Can you help? Basically Times need Context and when I create Context it creates "new ability" so can't get actual running time for passive ability.
                PM'd you the required changes.
                Able Ability System - A high performance, robust ability system for UE4. Now Available!

                Comment


                  I found another bug and fix it like picture show.Click image for larger version

Name:	20171219112844.png
Views:	5
Size:	43.5 KB
ID:	1401878

                  Comment


                    Hi, I found a bug when i use custom task function, i create a custom task and added to ability, then i modify custom task code and recompile, if i open the ability at this time, it will cause crash or disable the task in ability. Picture show the crash code and reason.Click image for larger version

Name:	QQ截图20171219143428.png
Views:	8
Size:	165.5 KB
ID:	1401937

                    Comment


                      Originally posted by George.Xiao View Post
                      Hi, I found a bug when i use custom task function, i create a custom task and added to ability, then i modify custom task code and recompile, if i open the ability at this time, it will cause crash or disable the task in ability. Picture show the crash code and reason.Click image for larger version

Name:	QQ截图20171219143428.png
Views:	8
Size:	165.5 KB
ID:	1401937
                      I'll add a check there to fix the crash and remove any null ptrs. UE4 can be a bit finicky when it comes to referencing a blueprint that then gets recompiled and thus the class changes.

                      Thanks for the report!
                      Able Ability System - A high performance, robust ability system for UE4. Now Available!

                      Comment


                        Matt,

                        1. Can you make your AI decorators and tasks be able to take blackboard keys that specify the ability, rather than having to specify the exact ability in the behavior tree? If I'm using various AIs that share a behavior tree, but have different abilities for their attacks, I need to be able to push those into the tree.

                        2. Can you provide a map of values I can push into the ability context that I can pull out later in callback methods on the ability? Again, it's helpful to setup some ability functionality and then pass specific data on creation that is evaluated on execution.

                        Thanks

                        Comment


                          Idk if this has been asked before but would it be possible to have an ability that holds all the animations, collisions, etc. and depending on the button input switches between the animations. As an example say I have a light attack combo right, that has different cancel windows that leads to a different combo from each cancel would it be possible to hold all of that in a single ability or would I have to make a separate ability per move?

                          Comment


                            Originally posted by Kuro_Dev View Post
                            Idk if this has been asked before but would it be possible to have an ability that holds all the animations, collisions, etc. and depending on the button input switches between the animations. As an example say I have a light attack combo right, that has different cancel windows that leads to a different combo from each cancel would it be possible to hold all of that in a single ability or would I have to make a separate ability per move?
                            You would make individual Abilities and then link them using Branch actions. So, a typical combo chain would look like: Light Attack 1 -> Light Attack 2 -> Light Attack 3 -> Heavy Attack/Flourish

                            So that's 4 separate Abilities, each with their collision/animation/sounds/effects, and you just link them with some input on the Branch check (input, a game stat of some sort, or whatever you need).

                            Having all that info in one HUGE ability would be really cumbersome to work with (or let's say you wanted to remove Light Attack 3 or replace it with something else - you'd have to redo the entire thing).
                            Able Ability System - A high performance, robust ability system for UE4. Now Available!

                            Comment


                              Originally posted by ExtraLifeMatt View Post

                              Hmmm... I don't see you specifying a blend time in there, I assume Play Montage is just defaulting to some blend. I'll investigate.
                              Hi, Happy new year!
                              I finally found the problem, and fixed it like picture show. Hope you can also fixed it at next update, thanks! By the way, I give you a suggest, you can add a "IsEnable" option in Task base class, so that we can iteration our ability more easy, Not delete it, Hmmm.. , not so good, add it agian, Oh, god, my option must redo. Just a suggest.

                              Click image for larger version

Name:	20171226155732.png
Views:	5
Size:	26.6 KB
ID:	1404573

                              Comment


                                Originally posted by George.Xiao View Post

                                Hi, Happy new year!
                                I finally found the problem, and fixed it like picture show. Hope you can also fixed it at next update, thanks! By the way, I give you a suggest, you can add a "IsEnable" option in Task base class, so that we can iteration our ability more easy, Not delete it, Hmmm.. , not so good, add it agian, Oh, god, my option must redo. Just a suggest.

                                Click image for larger version

Name:	20171226155732.png
Views:	5
Size:	26.6 KB
ID:	1404573
                                What did that fix for you? If you're already in AnimationBlueprint mode, then setting it again shouldn't do anything. Basically the check you added is in the SetAnimationMode method anyway.

                                Also, I purposely didn't add an IsEnabled option because I've worked with similar systems and you end up with large amounts of disabled Tasks because Designers will see no benefit to deleting the task ("Well, maybe I'll use it again some day?"). Which means you have just useless data you are iterating through every time you go to launch an Ability which is just wasted time. I opted for forcing deleting so that Abilities were clean and as lean as possible.
                                Able Ability System - A high performance, robust ability system for UE4. Now Available!

                                Comment

                                Working...
                                X