Announcement

Collapse
No announcement yet.

Able Ability System Info and Support Thread

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

    Originally posted by ExtraLifeMatt View Post

    It shouldn't be trying to load the AbleEditor portion anyway for stand alone (there's no reason for it if it's just launching the blueprint as a compiled asset). I'm still digging into it. Runtime is definitely not intended as that would load the Editor specific code when running the game - which you don't want. Developer sounds okay, but I'm still digging to better understand what is going on here and why that seems to fix it



    I was able to repro it and track the issue down. Looks like if you have a queue'd up animation that you are blending to, that animation gets updated twice (and thus plays 2x).

    The fix is to simply comment out (or remove) this line in the AnimNode_AbilityAnimPlayer.cpp:

    Code:
    //m_NextSequenceInternalTimeAccumulator += Context.GetDeltaTime();
    The MakeSequenceTickRecord does that logic, so it's not needed to do it before hand. I'll push that fix out as well as soon as I understand the fix barney87 is doing and what can come from that. Feel free to make the change locally if you need it before then.
    Yesss, this is great, thank you!

    Comment


      Originally posted by barney87 View Post
      ExtraLifeMatt I found another bug. After creating a custom task two tasks show up in the add task menu in the Able Editor. One of them will crash Unreal Engine Editor.

      To reproduce.

      1. Create third person project
      2. Create new ability based on AblAbility class
      3. Create new custom task based on the AblCustomTask
      4. Click add task in Able Editor in the new ability
      5. You will see two tasks with the same name, except one has a prefix of SKEL
      6. If you click on the SKEL version and save, it will crash UE
      7. If you click on the one not labelled SKEL it seems to work fine.
      Thanks, I'll try this steps and see what I can find. If I had to guess, the SKEL is the uncompiled version of the Custom Task. When you compile a Blueprint it generates a SKEL version (which just has bare bones data - no actual data), and then a final compiled version which is the one you normally interact with. I can try and filter out those SKELs.
      Originally posted by barney87 View Post
      ExtraLifeMatt

      Also, now that I can finally use Able, I am not sure where to get started.

      I have a third person project, and my character shoots projectiles. I use the camera to do a line trace and then offset the rotation of the projectile so that it travels in the direction of my cross-hair. I was hoping I could move my shooting logic into Able.

      Here is the current logic I am using (its not quite complete) but it will give you the gist of what I am trying to do.

      https://blueprintue.com/blueprint/gpilb1y6/

      It doesn't seem like I can do this (cleanly) in Able, what do you think?
      There is a Camera Target Type which looks in the direction of the player camera, as well as offsets available. If you look at my Shooter Game tutorial, I do exactly what you're talking about:

      https://extralifestudios.atlassian.n...2419/Tutorials Watch the Shooter Game video.
      Able Ability System - A high performance, robust ability system for UE4. Now Available!

      Comment


        Originally posted by ExtraLifeMatt View Post

        Thanks, I'll try this steps and see what I can find. If I had to guess, the SKEL is the uncompiled version of the Custom Task. When you compile a Blueprint it generates a SKEL version (which just has bare bones data - no actual data), and then a final compiled version which is the one you normally interact with. I can try and filter out those SKELs.


        There is a Camera Target Type which looks in the direction of the player camera, as well as offsets available. If you look at my Shooter Game tutorial, I do exactly what you're talking about:

        https://extralifestudios.atlassian.n...2419/Tutorials Watch the Shooter Game video.
        ExtraLifeMatt
        I am not sure that we are talking about the same thing. If I was to use the camera target type and spawn a actor projectile from an offset from the location it the projectiles would not line up with the crosshair. In order for the crosshair to be accurate the offset need to be variable, depending on the targets distance from the camera. Obviously this is not the way it works in the real world, however it feels more natural for the player.

        I have drawn a quick diagram which I hope better illustrates how I currently handle projectiles from my third person character. Essentially I get a look at rotation of the hit location from the raytrace and fire the projectile from the character in that direction. (If there is no hit, the projectile will rotate so at the max range of the projectile, it will line up with the crosshair).


        Click image for larger version  Name:	Aiming.jpg Views:	1 Size:	22.2 KB ID:	1462030

        Comment


          ok I got some good news.
          I finally managed to get the 2.21 working on 4.19.1. This is an instruction for people who just bought it and having troubles running it.

          So here's what I did step by step to make it work (and below I will list what doesnt work):

          1. download release version of the engine from github
          2. hit setup.bat and then generate project files
          3. compile the engine from source
          4. close visual, put the plugin in Engine/Plugins/Able
          5. Hit Generate Project files once again (the one in the engine folder, not the project one)
          6. open solution, compile
          7. run the editor - voila, the plugin is enabled by default, has proper events with context etc.


          What DOES NOT work:

          1. getting github version, copying the plugin into the folder before first compilation of the engine and doing the first compilation after putting the plugin there. (so the two step compilation was neccesarry for me)
          2. Getting the 4.19 from marketplace
          3. instaling the plugin through marketplace.

          Hope that helps someone.

          Comment


            Glad to hear you fixed the animation blending! Any idea when the update will be out? I'm not sure how to recompile the plugin; I went into the plugin source and commented the line you said I should comment, and I rebuilt the entire solution but I still have the issue. I'm not building the engine from source.

            Comment


              Originally posted by fernmerc View Post
              Glad to hear you fixed the animation blending! Any idea when the update will be out? I'm not sure how to recompile the plugin; I went into the plugin source and commented the line you said I should comment, and I rebuilt the entire solution but I still have the issue. I'm not building the engine from source.
              I believe you'd have to recompile the engine from source for it to pick that up. My plan is to get the update out on Sunday (which means Epic will process it Monday/Tuesday).
              Able Ability System - A high performance, robust ability system for UE4. Now Available!

              Comment


                Originally posted by ExtraLifeMatt View Post

                I believe you'd have to recompile the engine from source for it to pick that up. My plan is to get the update out on Sunday (which means Epic will process it Monday/Tuesday).
                Ahh I see, looks like I'll wait until Monday then, thanks.

                Comment


                  Able v2.22 has been submitted.

                  - BUGFIX: Blended animations when using the Ability Animation Node would run at 2x speed.
                  - BUGFIX: Crash when using standalone mode (Thanks barney87 ). NOTE: I tested this as thoroughly as I could, but please let me know if you see any weird behavior around packaging your game or anything else.

                  With regard to the Animation Blueprints in the Preview Asset selector, it looks like those classes are now considered "Internal Classes" for some reason. If you click the Options button in the lower right of the class selection picker window, and choose "Show Internal Classes", the Animation Blueprint class shows up like normal and then the assets will show up in the following screen.

                  Trying to figure out why that change occurred and I'll keep you all posted.
                  Able Ability System - A high performance, robust ability system for UE4. Now Available!

                  Comment


                    Originally posted by ExtraLifeMatt View Post
                    Able v2.22 has been submitted.

                    - BUGFIX: Blended animations when using the Ability Animation Node would run at 2x speed.
                    - BUGFIX: Crash when using standalone mode (Thanks barney87 ). NOTE: I tested this as thoroughly as I could, but please let me know if you see any weird behavior around packaging your game or anything else.

                    With regard to the Animation Blueprints in the Preview Asset selector, it looks like those classes are now considered "Internal Classes" for some reason. If you click the Options button in the lower right of the class selection picker window, and choose "Show Internal Classes", the Animation Blueprint class shows up like normal and then the assets will show up in the following screen.

                    Trying to figure out why that change occurred and I'll keep you all posted.
                    Update works, thank you!

                    Comment


                      v2.22, UE4.19.1:

                      1) Playing animation:

                      Single Node mode is just plain broken - setting ability "Play rate" to 2 results animation cutting mid play because of the animation speed not scaling (Scale with Ability Play Rate is set to true). Setting animation Play Rate to 2 cuts it even further, result is - only 1\4th of the animation is played and ability finishes twice faster than with 1x play rate. Setting Finish All Tasks flag does not do anything - is it working at all?

                      Ability Animation Node mode - both Play Rates work, as well as Finish All Tasks flag

                      All blend options - are they tied to anything at all? Changing them does not trigger blending in any case (Single Node, Ability Animation Node, Dynamic Montage). Montage could be blended only via setting blend options in the montage itself.

                      Preview window works only in Single Node mode, in node and montage mode pressing Play simply doesn't do anything.
                      Pressing Reset Preview Asset spawns additional skeletons (up to 4) in ~30% cases.

                      2) Editor (4.19.1 mint) crashes with a 100% chance on play if you don't connect Get Ability Object from Class node to Create Ability Context. And it get's mystically disconnected by itself after editor restart

                      Comment


                        Originally posted by Talanar View Post

                        What DOES NOT work:

                        1. getting github version, copying the plugin into the folder before first compilation of the engine and doing the first compilation after putting the plugin there. (so the two step compilation was neccesarry for me)
                        2. Getting the 4.19 from marketplace
                        3. instaling the plugin through marketplace.

                        Hope that helps someone.
                        2 and 3 works fine for me, i have had no issues with the plugin installation or use using 4.19.x from launcher and marketplace ABLE
                        I even have to zip ABLE and send out to my programmer and he decompresses and drops it into a folder and it works
                        Founder and CEO of Angry Penguin Studio, LLC
                        Dallas, TX USA
                        https://www.facebook.com/AngryPenguinStudios

                        Comment


                          4.19.1 source build.

                          I just bought your plugin after watching your videos. I have an animation from Kubold's Sword and Shield Animset Pro called "Sword_Attack_R" animation sequence. When I have it assigned the preview asset is in TPose. When I play it, it does play. The animation is the first task and then I have an apply damage as a second task.

                          The apply damage does work properly applying damage to the other pawns I have. However the animation while playing will TPose.

                          I played with other options that only result in not playing in the editor and not even the tpose happens in play.

                          I am playing on a dedicate server setup in PIE.

                          I tried to download your dedicated server example but got errors before the editor opens up.

                          Errors for DedicatedServer Example:
                          [2018.04.29-01.32.30:277][ 0]LogFileCache: Scanning file cache for directory 'E:/Unreal_Projects_Reference/AbleDedicatedServerTest/Content/' took 0.02s
                          [2018.04.29-01.32.30:277][ 0]SourceControl: Source control is disabled
                          [2018.04.29-01.32.30:277][ 0]Cmd: MAP LOAD FILE="../../../../Unreal_Projects_Reference/AbleDedicatedServerTest/Content/ThirdPersonBP/Maps/ThirdPersonExampleMap.umap" TEMPLATE=0 SHOWPROGRESS=1 FEATURELEVEL=3
                          [2018.04.29-01.32.30:278][ 0]LightingResults: New page: Lighting Build
                          [2018.04.29-01.32.30:280][ 0]MapCheck: New page: Map Check
                          [2018.04.29-01.32.30:280][ 0]LightingResults: New page: Lighting Build
                          [2018.04.29-01.32.30:293][ 0]LogLinker: Warning: Can't find file '/Script/AbleCore'
                          [2018.04.29-01.32.30:293][ 0]LogLinker: Warning: Can't find file for asset '/Script/AbleCore' while loading ../../../../Unreal_Projects_Reference/AbleDedicatedServerTest/Content/ThirdPersonBP/Blueprints/ThirdPersonCharacter.uasset.
                          [2018.04.29-01.32.30:293][ 0]LoadErrors: Error: /Game/ThirdPersonBP/Blueprints/ThirdPersonCharacter : Can't find file for asset. /Script/AbleCore
                          [2018.04.29-01.32.30:329][ 0]LogLinker: Warning: Can't find file '/Script/AbleCore'

                          Edit:
                          I copied the plugin from the binary install into my source and all compiled ok and editor looks good.

                          Comment


                            Originally posted by Roland_Price View Post
                            v2.22, UE4.19.1:

                            1) Playing animation:

                            Single Node mode is just plain broken - setting ability "Play rate" to 2 results animation cutting mid play because of the animation speed not scaling (Scale with Ability Play Rate is set to true). Setting animation Play Rate to 2 cuts it even further, result is - only 1\4th of the animation is played and ability finishes twice faster than with 1x play rate. Setting Finish All Tasks flag does not do anything - is it working at all?

                            Ability Animation Node mode - both Play Rates work, as well as Finish All Tasks flag

                            All blend options - are they tied to anything at all? Changing them does not trigger blending in any case (Single Node, Ability Animation Node, Dynamic Montage). Montage could be blended only via setting blend options in the montage itself.

                            Preview window works only in Single Node mode, in node and montage mode pressing Play simply doesn't do anything.
                            Pressing Reset Preview Asset spawns additional skeletons (up to 4) in ~30% cases.

                            2) Editor (4.19.1 mint) crashes with a 100% chance on play if you don't connect Get Ability Object from Class node to Create Ability Context. And it get's mystically disconnected by itself after editor restart

                            Single Node may need some love. Most people don't use it, so it may have fallen behind a bit. I'll check it out.

                            Blending options are being passed in on dynamic montage, and they're used in Animation Ability Node to blend between your current Ability animation and any queued up Ability Animations. Unfortunately if you want to setup a blend when going to/from an Ability (to walking or any locomotion for example), you'd have to set that up in the Animation Blueprint itself.

                            Ability Animation Node works in preview as well. Montage used to work, and I haven't changed anything - but I'll investigate that as well.

                            Create Ability Context should crash if you don't pass in an Ability Object as there is a specific assert checking for that. I can try to make that less severe and instead just report an error about it and then your Ability will fail to play as well. I'm not sure why it would just disconnect itself. Can't say I've seen that happen before.

                            Originally posted by acxsasx View Post
                            4.19.1 source build.

                            I just bought your plugin after watching your videos. I have an animation from Kubold's Sword and Shield Animset Pro called "Sword_Attack_R" animation sequence. When I have it assigned the preview asset is in TPose. When I play it, it does play. The animation is the first task and then I have an apply damage as a second task.

                            The apply damage does work properly applying damage to the other pawns I have. However the animation while playing will TPose.

                            I played with other options that only result in not playing in the editor and not even the tpose happens in play.

                            I am playing on a dedicate server setup in PIE.

                            I tried to download your dedicated server example but got errors before the editor opens up.

                            Errors for DedicatedServer Example:
                            [2018.04.29-01.32.30:277][ 0]LogFileCache: Scanning file cache for directory 'E:/Unreal_Projects_Reference/AbleDedicatedServerTest/Content/' took 0.02s
                            [2018.04.29-01.32.30:277][ 0]SourceControl: Source control is disabled
                            [2018.04.29-01.32.30:277][ 0]Cmd: MAP LOAD FILE="../../../../Unreal_Projects_Reference/AbleDedicatedServerTest/Content/ThirdPersonBP/Maps/ThirdPersonExampleMap.umap" TEMPLATE=0 SHOWPROGRESS=1 FEATURELEVEL=3
                            [2018.04.29-01.32.30:278][ 0]LightingResults: New page: Lighting Build
                            [2018.04.29-01.32.30:280][ 0]MapCheck: New page: Map Check
                            [2018.04.29-01.32.30:280][ 0]LightingResults: New page: Lighting Build
                            [2018.04.29-01.32.30:293][ 0]LogLinker: Warning: Can't find file '/Script/AbleCore'
                            [2018.04.29-01.32.30:293][ 0]LogLinker: Warning: Can't find file for asset '/Script/AbleCore' while loading ../../../../Unreal_Projects_Reference/AbleDedicatedServerTest/Content/ThirdPersonBP/Blueprints/ThirdPersonCharacter.uasset.
                            [2018.04.29-01.32.30:293][ 0]LoadErrors: Error: /Game/ThirdPersonBP/Blueprints/ThirdPersonCharacter : Can't find file for asset. /Script/AbleCore
                            [2018.04.29-01.32.30:329][ 0]LogLinker: Warning: Can't find file '/Script/AbleCore'

                            Edit:
                            I copied the plugin from the binary install into my source and all compiled ok and editor looks good.

                            So are you still having issues? Unfortunately I can't view your image, but how are you playing the animation (what mode, have you setup your Animation Blueprint properly, etc)? I've used Kubold's S&S anim set myself for some testing locally and I never ran into any TPose issues.
                            Able Ability System - A high performance, robust ability system for UE4. Now Available!

                            Comment


                              Originally posted by ExtraLifeMatt View Post

                              Blending options are being passed in on dynamic montage, and they're used in Animation Ability Node to blend between your current Ability animation and any queued up Ability Animations. Unfortunately if you want to setup a blend when going to/from an Ability (to walking or any locomotion for example), you'd have to set that up in the Animation Blueprint itself.
                              That clears it up a bit. May I suggest hiding these when they are not relevant? (one animation and no dynamic montage respectively). There is no mentioning of this in your manual for non-coders like myself.

                              Originally posted by ExtraLifeMatt View Post
                              Ability Animation Node works in preview as well. Montage used to work, and I haven't changed anything - but I'll investigate that as well.
                              Unfortunately just saying "it works" didn't fix the problem on my side. This issue occurs in ~20-30% of cases after working heavily with the ability for a while. I'll try to make a video next time I'll catch it. The case with montage however is 100% reproducible all the time. Please address this issue as it is very annoying to always switch back and forth to Single Node mode just to test changes.

                              Originally posted by ExtraLifeMatt View Post
                              Create Ability Context should crash if you don't pass in an Ability Object as there is a specific assert checking for that. I can try to make that less severe and instead just report an error about it and then your Ability will fail to play as well. I'm not sure why it would just disconnect itself. Can't say I've seen that happen before.
                              An error sounds more like an informed way to solve and find issues to me, so that would be helpful indeed. As for the pin disconnect - just out of curiosity I tried it with source built editor and it does not break there, maybe this will help debug it somehow.

                              One more major critical issue that I'm experiencing right now: animations in 3 hit combo are played with a noticeable jitter at the end of the previous and beginning of the next one. All of the possible blends are set to 0. It becomes extremely noticeable when Ability Play Rate is set to 0.2 or lower - it looks like animation the current ability's animation is blending with the next ability's not instantaneously. The setup is done via Kubold's kit and your tutorial.

                              Comment


                                Originally posted by Roland_Price View Post

                                That clears it up a bit. May I suggest hiding these when they are not relevant? (one animation and no dynamic montage respectively). There is no mentioning of this in your manual for non-coders like myself.
                                I'm not sure if I can hide them, but possibly. Otherwise I'll make their description/comment text a bit clearer. The Blend is passed in with Dynamic Montage, but I've had reports that it doesn't do anything - however, that's all Epic's code so I'm not sure what's going on there.

                                Unfortunately just saying "it works" didn't fix the problem on my side. This issue occurs in ~20-30% of cases after working heavily with the ability for a while. I'll try to make a video next time I'll catch it. The case with montage however is 100% reproducible all the time. Please address this issue as it is very annoying to always switch back and forth to Single Node mode just to test changes.
                                Weird. I've never seen Ability Animation Node fail during preview. A video or if you have a simple project, would greatly help me track things down.

                                An error sounds more like an informed way to solve and find issues to me, so that would be helpful indeed. As for the pin disconnect - just out of curiosity I tried it with source built editor and it does not break there, maybe this will help debug it somehow.

                                One more major critical issue that I'm experiencing right now: animations in 3 hit combo are played with a noticeable jitter at the end of the previous and beginning of the next one. All of the possible blends are set to 0. It becomes extremely noticeable when Ability Play Rate is set to 0.2 or lower - it looks like animation the current ability's animation is blending with the next ability's not instantaneously. The setup is done via Kubold's kit and your tutorial.
                                Hmmm, instant blends should be instant but again, I'll set something up locally and see what I can find. Again, if you have a sample project (I own Kubold's S&S set, so no worries there - or replace his animation with a simple walk/jump animation), that can help a bit.
                                Able Ability System - A high performance, robust ability system for UE4. Now Available!

                                Comment

                                Working...
                                X