Announcement

Collapse
No announcement yet.

Able Ability System Info and Support Thread

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

  • replied
    Originally posted by ExtraLifeMatt
    Hi, Does Able have Instancing Policy? Just like GAS.
    Instanced per Execution: A copy of the Ability's Object will spawn each time the Ability runs.
    Instanced per Actor: Each Actor will spawn one instance of this Ability when the Ability is first executed, and future executions will reuse it.
    Non-Instanced: This is the most efficient instancing policy in all categories.

    By the way, we've used your plugin for 2 years, it's very powerful, i like it.

    Leave a comment:


  • replied
    Originally posted by vbs View Post
    Hello, I've just watched all the videos you posted and am considering purchasing this system, I wonder, for future video suggestions, or just an answer here: does it make sense to use this system for setting up "pickups", like health, powerups, ammo, etc. So if the player interacts with an item, they can pick it up, store it or consume it and have that ability affect their stats, like health, or ammo count, or even give them new abilities, like picking up weapons or picking up "magic" powers, etc. Does that make sense? A lot of example videos deal with abilities the player already has, and is inflicting on other targets, but can an ability exist in the game world to be picked up and have an effect on the player?
    Able, at it's core, is a data driven system that just plays various tasks (animations, effects, logic, etc) along a timeline. What other system uses that is up to you. You can have weapons that reference different abilities (light attack, strong attack, etc), and then each weapon, when you picked it up, would grant different abilities without you having to change the code around.

    You can do something similar with pick ups (a pick up just plays it's ability on the player when it overlaps with them). I also use Able to do spawn-in animation/effects/sounds for AIs, and whatever else I want to leverage that core system design with.

    Leave a comment:


  • replied
    Hello, I've just watched all the videos you posted and am considering purchasing this system, I wonder, for future video suggestions, or just an answer here: does it make sense to use this system for setting up "pickups", like health, powerups, ammo, etc. So if the player interacts with an item, they can pick it up, store it or consume it and have that ability affect their stats, like health, or ammo count, or even give them new abilities, like picking up weapons or picking up "magic" powers, etc. Does that make sense? A lot of example videos deal with abilities the player already has, and is inflicting on other targets, but can an ability exist in the game world to be picked up and have an effect on the player?

    Leave a comment:


  • replied
    Originally posted by Maxilos View Post

    Sure!
    EDIT: The scratchpad is derived gfrom AblCustomTaskScratchPad, and has nothing added to it.
    I was Able to get it working locally, right now I have a Custom Task that just picks a random number, stores it in the custom scratch pad, and then displays that number when the task is done.

    You can check my setup here:
    https://www.dropbox.com/s/gbawgn9koh...omTask.7z?dl=0

    I was also able to reproduce the crash when recompiling Custom Tasks in Abilities. I'm still working on that fix however.

    EDIT: Looks like there is a new BP Reinstancer, going to look at setting that up for Able Blueprints.
    Last edited by ExtraLifeMatt; 03-16-2020, 12:18 PM.

    Leave a comment:


  • replied
    Hello
    It is a bug when use custom task.
    First I create a custom in bp , and override GetTaskColor to return red;
    And add this task to ability, it work weel ,look the picture one


    and then, I compile the custom task, the task in ability is broken. all function that overide in bp is not work;
    look the picture two



    thank you , it's important for me , hope your answer soon, thank you

    Leave a comment:


  • replied
    Originally posted by Maxilos View Post

    Sure!
    EDIT: The scratchpad is derived gfrom AblCustomTaskScratchPad, and has nothing added to it.
    Hmm, alright. I'll try and repro this locally and let you know what I find (and if a bug fix is required/coming).

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post

    Did the class you create for your ScratchPad inherit from UAblAbilityScratchPad?

    EDIT: The error says it's returning a nullptr.... are you sure it's being returned? Can you post a screenshot of your CreateScratchPadBP?
    Sure!
    EDIT: The scratchpad is derived gfrom AblCustomTaskScratchPad, and has nothing added to it.
    Last edited by Maxilos; 03-15-2020, 01:51 PM.

    Leave a comment:


  • replied
    Originally posted by Maxilos View Post
    Hey Matt!
    First of all, it's an amazing plugin, really makes everything way easier. However, I've encountered pretty much the same problem, as was described by OneSaltyBoy, where whenever I try to use a custom ability in a standalone game, i get a following crash:
    Fatal error: [File:/Build/++UE4/Sync/Engine/Source/Runtime/CoreUObject/Private/Templates/Casts.cpp] [Line: 10] Cast of nullptr to AblAbilityTaskScratchPad failed
    My CreateScratchPadBP is overloaded.
    Did the class you create for your ScratchPad inherit from UAblAbilityScratchPad?

    EDIT: The error says it's returning a nullptr.... are you sure it's being returned? Can you post a screenshot of your CreateScratchPadBP?

    Leave a comment:


  • replied
    Hey Matt!
    First of all, it's an amazing plugin, really makes everything way easier. However, I've encountered pretty much the same problem, as was described by OneSaltyBoy, where whenever I try to use a custom ability in a standalone game, i get a following crash:
    Fatal error: [File:/Build/++UE4/Sync/Engine/Source/Runtime/CoreUObject/Private/Templates/Casts.cpp] [Line: 10] Cast of nullptr to AblAbilityTaskScratchPad failed
    My CreateScratchPadBP is overloaded.

    Leave a comment:


  • replied
    That actu
    Originally posted by ExtraLifeMatt View Post
    michalss Here ya go, try and open this project. The collision is all working for me locally, you can see I laid out a bunch of various collision types (you can hit ~ and type "Able.DrawQueryDebug 1" to see the shapes being rendered).

    I set up a simple "hit reaction" (basically just the explosion particle effect) anytime the character takes damage, which the queries apply. You can move the characters out of range to verify.

    Cone, Sphere, and Box are all tested in this level and appear to be working.

    https://www.dropbox.com/s/zlwu2ixgmp...onTest.7z?dl=0
    Yes, that actually works. Thank you for preview, I'll try the same setup in my project and then give you some feedback.

    Leave a comment:


  • replied
    michalss Here ya go, try and open this project. The collision is all working for me locally, you can see I laid out a bunch of various collision types (you can hit ~ and type "Able.DrawQueryDebug 1" to see the shapes being rendered).

    I set up a simple "hit reaction" (basically just the explosion particle effect) anytime the character takes damage, which the queries apply. You can move the characters out of range to verify.

    Cone, Sphere, and Box are all tested in this level and appear to be working.

    https://www.dropbox.com/s/zlwu2ixgmp...onTest.7z?dl=0

    Leave a comment:


  • replied
    Originally posted by michalss View Post

    Tested, because all my character are parent of one character blueprint, I setted up default collision response to pawn for both and deleted my custom "clickable" collision channel to check if custom channels are not causing the problem. Also didin't worked, simply it does nothing.

    I fixed it for now by spawning actor with sphere collision to check overlap and do damage on overlap (works totally normal). But that is not reason why I bought your plugin. So, there is definietly gonna be some problem in code whether it is visualization, translation or other bug.

    Also as I mentioned, I downloaded your example shooter project and it doesn't worked as well on 4.24.3, one possibility is that damage is not firing or collision is not working correctly.
    Hmm... Alright, let me toss together a quick collision test level and see what I find. Once I have it done, I'll share it out as well if you want to compare settings.

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post


    I think I see the issue, you're using a custom layer (by using the custom preset), but have the object type set to Pawn. That task searches by Layer, not object. Try setting both objects to the Pawn Layer, or World Dynamic and see if they see each other..
    Tested, because all my character are parent of one character blueprint, I setted up default collision response to pawn for both and deleted my custom "clickable" collision channel to check if custom channels are not causing the problem. Also didin't worked, simply it does nothing.

    I fixed it for now by spawning actor with sphere collision to check overlap and do damage on overlap (works totally normal). But that is not reason why I bought your plugin. So, there is definietly gonna be some problem in code whether it is visualization, translation or other bug.

    Also as I mentioned, I downloaded your example shooter project and it doesn't worked as well on 4.24.3, one possibility is that damage is not firing or collision is not working correctly.
    Last edited by michalss; 03-11-2020, 07:06 AM.

    Leave a comment:


  • replied
    Originally posted by michalss View Post

    Thank you, that is useful info.



    Tested out, and nothing happened :-/. So, i guess it's gonna be problem with collision actor data setup but in fact that I have correct collision query settings as you can see from screenshots?


    I think I see the issue, you're using a custom layer (by using the custom preset), but have the object type set to Pawn. That task searches by Layer, not object. Try setting both objects to the Pawn Layer, or World Dynamic and see if they see each other..

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post

    Define "Relative Rotation". It you point it to a blueprint for the preview actor, it'll just instantiate that blueprint - rotation and all. If you just point it to a static/skeletal mesh, then it builds an actor on the fly so the rotation can be off. There is a rotation option in the Able Editor Settings that you can use to rotate the static mesh to point in the correct location.
    Thank you, that is useful info.

    Originally posted by ExtraLifeMatt View Post
    An easy way to test is to just setup a sphere query, put it on yourself (so no translation, rotation, etc) and just set the radius up pretty high. If that works, but then you try and translate it out a bit - then it's a translation bug, otherwise it could be a setup issue with the collision actor data.
    Tested out, and nothing happened :-/. So, i guess it's gonna be problem with collision actor data setup but in fact that I have correct collision query settings as you can see from screenshots?


    Leave a comment:

Working...
X