Announcement

Collapse
No announcement yet.

Able Ability System Info and Support Thread

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

  • replied
    Hi
    use to use this,
    I Try using again and Select asset is not doing much
    Its just a blank box.
    Any known bugs with 4.18???

    Thanks
    Jesse

    Leave a comment:


  • replied
    Hiyo, first off, great plugin.

    After the update today, I randomly get this exception:

    Code:
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: === Critical error: ===
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: 
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: Fatal error!
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: 
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0xffffffff
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: 
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-CoreUObject.dll!FWeakObjectPtr::operator=() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\coreuobject\private\uobject\weakobjectptr.cpp:29]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-AbleCore.dll!FAblAbilityNetworkContext::FAblAbilityNetworkContext() [e:\program files\epic games\ue_4.17.1_src\engine\plugins\marketplace\able\source\ablecore\private\ablabilitycontext.cpp:179]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-AbleCore.dll!UAblAbilityComponent::ActivateAbility() [e:\program files\epic games\ue_4.17.1_src\engine\plugins\marketplace\able\source\ablecore\private\ablabilitycomponent.cpp:253]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-Engine.dll!FInputActionUnifiedDelegate::Execute() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\classes\components\inputcomponent.h:204]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-Engine.dll!UPlayerInput::ProcessInputStack() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\userinterface\playerinput.cpp:1243]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-Engine.dll!APlayerController::ProcessPlayerInput() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\playercontroller.cpp:2463]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-Engine.dll!APlayerController::TickPlayerInput() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\playercontroller.cpp:4214]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-Engine.dll!APlayerController::PlayerTick() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\playercontroller.cpp:2126]
    [2018.01.16-15.03.25:420][ 63]LogWindows: Error: UE4Editor-Engine.dll!APlayerController::TickActor() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\playercontroller.cpp:4307]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!FActorTickFunction::ExecuteTick() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\actor.cpp:130]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!FTickFunctionTask::DoTask() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\ticktaskmanager.cpp:269]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!TGraphTask<FTickFunctionTask>::ExecuteTask() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\core\public\async\taskgraphinterfaces.h:784]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\core\private\async\taskgraph.cpp:650]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Core.dll!FNamedTaskThread::ProcessTasksUntilQuit() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\core\private\async\taskgraph.cpp:559]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Core.dll!FTaskGraphImplementation::WaitUntilTasksComplete() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\core\private\async\taskgraph.cpp:1327]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!FTickTaskSequencer::ReleaseTickGroup() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\ticktaskmanager.cpp:538]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!FTickTaskManager::RunTickGroup() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\ticktaskmanager.cpp:1450]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!UWorld::RunTickGroup() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\leveltick.cpp:758]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-Engine.dll!UWorld::Tick() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\engine\private\leveltick.cpp:1383]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-UnrealEd.dll!UEditorEngine::Tick() [e:\program files\epic games\ue_4.17.1_src\engine\source\editor\unrealed\private\editorengine.cpp:1650]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor-UnrealEd.dll!UUnrealEdEngine::Tick() [e:\program files\epic games\ue_4.17.1_src\engine\source\editor\unrealed\private\unrealedengine.cpp:402]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor.exe!FEngineLoop::Tick() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\launch\private\launchengineloop.cpp:3215]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor.exe!GuardedMain() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\launch\private\launch.cpp:166]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor.exe!GuardedMainWrapper() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor.exe!WinMain() [e:\program files\epic games\ue_4.17.1_src\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: UE4Editor.exe!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: KERNEL32.DLL!0x0000000018241FE4
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: ntdll.dll!0x0000000018FCEFB1
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: ntdll.dll!0x0000000018FCEFB1
    [2018.01.16-15.03.25:421][ 63]LogWindows: Error: 
    [2018.01.16-15.03.25:440][ 63]LogExit: Executing StaticShutdownAfterError
    [2018.01.16-15.03.25:466][ 63]LogWindows: FPlatformMisc::RequestExit(1)
    [2018.01.16-15.03.25:466][ 63]Log file closed, 01/16/18 09:03:25

    Leave a comment:


  • replied
    Define "CustomScript". I mean, like CalculateDamage you can change your input not only through Editor's detail panel but also at runtime, if user not implement it still good for performance. But, it is difficult to let it generalize. Just an idea.

    Leave a comment:


  • replied
    Originally posted by George.Xiao View Post

    Yea, an option for WorldSpace/LocalSpace is good idea. I will report all bugs and fix method when i found.
    By the way, I think there should be a CustomScript for each Task, because we need many additional stuff beyond your buildin stuff.
    Define "CustomScript". You mean just a generic Blueprint call like CustomEventTask does? My concern there would be it would have to be on the Ability rather than the Task (otherwise you'd have to Blueprint each task which isn't good for performance), and each Task may have different spots where a custom call makes sense (At the start of OnTaskStart, or at the end, maybe just before a query is done, etc) - so I'm not sure how you would generalize that for all tasks.
    Originally posted by Aumaan Anubis View Post

    What bug was that?

    I was having issues with the previewing for Ability Animation Node mode, because it's dependent on the AnimBP variables to let it play in the editor.

    This made my preview for some abilities never work, because they're depending on variables that only become "true" during something triggering it during the actual gameplay (conditions that can't be automatically met while not in-game).

    Perhaps my workflow is in error, but I couldn't really find a way around this.
    The bug was it would blindly set your Animation Mode on the animation instance which caused it to get reset. Now it only sets your Animation Mode if the instance isn't already in that mode.

    With regard to your AnimBP, you could either create a simple AnimBP that only has the Ability Animation Node and then duplicate your actor (name it something like "ActorName_Preview") and set their AnimBP to the slimmed down version, and use that actor as the Preview Actor in Able. Or rearrange your AnimBP so that it's atleast able to get to the Ability Animation Node from your Idle without any other crazy variables.

    If you want to PM me a screenshot of your AnimBP (mainly actual BP where you are setting variables and then your State Machine flow) - I'll happily look it over and see if I can't give you any pointers.

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post
    Able v2.15
    1. Added Backwards Stepping while the Ability is paused. This takes you back a frame (according to the 30 / 60FPS you have defined in the editor settings).
    2. Abilities will auto-pause if you Step forwards/backwards. No more pausing first.
    3. You can hit Left or Right on your keyboard to Step forwards/backwards.
    4. You can click or drag along the timeline to change your preview time forward/backwards.
    5. You can now Snap Tasks to whatever units you wish along the Timeline. Just enable the "Snap Tasks" option in the Editor settings and set the "Snap Unit" to whatever value you want to snap to.
    6. Play Animation Task will preview the animation properly while skipping around if you are using the Ability Animation Node Mode.
    Thank you for these, this gives it parity with the Animation editor on a utility level. Awesome!

    Originally posted by ExtraLifeMatt View Post
    7. Bug fix to Play Animation (Thanks to George.Xiao for that one.)
    What bug was that?

    Originally posted by ExtraLifeMatt View Post
    I'd love to get the animation previewing to work with the other modes (Single Instance / Dynamic Montage) but I (currently) see no way to do that. I was hoping to leverage some of Sequencer's work to help with that, but it looks like Epic is basically forcing in their own Animation Nodes to accomplish that and even then they don't support Dynamic Montage. So, for now, it's only available for the Ability Animation Node mode.
    I was having issues with the previewing for Ability Animation Node mode, because it's dependent on the AnimBP variables to let it play in the editor.

    This made my preview for some abilities never work, because they're depending on variables that only become "true" during something triggering it during the actual gameplay (conditions that can't be automatically met while not in-game).

    Perhaps my workflow is in error, but I couldn't really find a way around this.

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post

    Of course.

    In BlueprintEditorUtils.cpp, add the following line at the top of FBlueprintEditorUtils::RegenerateBlueprintClass(...)

    Code:
    // Purge any NULL graphs
    FBlueprintEditorUtils::PurgeNullGraphs(Blueprint);
    There's an existing call to that method that exists further down, but it's possibly to access NULL graphs earlier in that method (which is what is happening).


    Can you give an example of where the OffsetLocation / OffsetRotation are mismatched? I've had people request for World Space rotation / locations, so that's why there is an option for both - but it should be clearly defined.

    Also there should be no difference between using the FTransform(m_Offset) and simply calling OutTransform.AddToTranslation(m_Offset). One is allocating an entire FTransform to provide a simple vector addition (which happens during the Transform multiplication), the other just skips that temporary allocation. Were you seeing this fix things for you?

    And yes, bugs are a constant struggle. I've been trying to move towards more bug fixing rather than new features (beyond some editor improvements like Timeline scrubbing and stepping backwards that I'm working on now). Definitely report any bugs you see and I'll happily fix them. I use Able in my own game projects and I definitely fix any bugs I find myself and then broadcast those out.
    Yea, an option for WorldSpace/LocalSpace is good idea. I will report all bugs and fix method when i found.
    By the way, I think there should be a CustomScript for each Task, because we need many additional stuff beyond your buildin stuff.

    Leave a comment:


  • replied
    Alright, putting the final touches on Able v2.15, should be out early next week. This update was meant mainly to give the Ability Editor some love, so here's what's new:







    Able v2.15
    1. Added Backwards Stepping while the Ability is paused. This takes you back a frame (according to the 30 / 60FPS you have defined in the editor settings).
    2. Abilities will auto-pause if you Step forwards/backwards. No more pausing first.
    3. You can hit Left or Right on your keyboard to Step forwards/backwards.
    4. You can click or drag along the timeline to change your preview time forward/backwards.
    5. You can now Snap Tasks to whatever units you wish along the Timeline. Just enable the "Snap Tasks" option in the Editor settings and set the "Snap Unit" to whatever value you want to snap to.
    6. Play Animation Task will preview the animation properly while skipping around if you are using the Ability Animation Node Mode.
    7. Bug fix to Play Animation (Thanks to George.Xiao for that one.)
    8. Bug fix to Play Animation Tasks showing the wrong length in the editor if you modified the Play rate. (Thanks to shadowkami for reporting that one).

    I'd love to get the animation previewing to work with the other modes (Single Instance / Dynamic Montage) but I (currently) see no way to do that. I was hoping to leverage some of Sequencer's work to help with that, but it looks like Epic is basically forcing in their own Animation Nodes to accomplish that and even then they don't support Dynamic Montage. So, for now, it's only available for the Ability Animation Node mode.

    Also if you open up your Ability and just immediately jump the time around (which is completely valid) - if you don't see the animation changing, check your blend times. If you still don't see a change, try stepping forward then backwards. I'm not unconvinced that it takes a frame or two for an Animation to completely start for the first time.

    Please report any bugs.

    As always, your feedback is what keeps Able going. Thanks for your continued support!

    (Also this new photo system on the forums is terrible. )
    Last edited by ExtraLifeMatt; 01-14-2018, 04:25 PM.

    Leave a comment:


  • replied
    Originally posted by Aumaan Anubis View Post
    ^ This is one of the reasons I like this product so much, your dedication to improving its quality, adding fixes to any bugs you find and ones that users report. I don't think I've ever had something that got bug fixes this fast after reported.

    Seriously, good work
    <3 You've been there since the beginning Aumaan, I always welcome your feedback / suggestions.

    Leave a comment:


  • replied
    ^ This is one of the reasons I like this product so much, your dedication to improving its quality, adding fixes to any bugs you find and ones that users report. I don't think I've ever had something that got bug fixes this fast after reported.

    Seriously, good work

    Leave a comment:


  • replied
    Originally posted by mikecoker View Post

    Matt,

    I have the same error as these guys trying to test multiplayer code. Can you post the fix here so I (and future readers) can apply it to the engine? Thanks!


    [2018.01.09-15.21.46:013][ 3]LogLinker: Warning: Can't find file for asset '/Script/AbleEditor' while loading NULL.
    [2018.01.09-15.21.46:013][ 3]LoadErrors: Failed to load /Script/AbleEditor.AblAbilityGraph Referenced by PackageMetaData
    [2018.01.09-15.21.46:013][ 3]LogUObjectGlobals: Warning: Failed to load '/Script/AbleEditor': Can't find file for asset '/Script/AbleEditor' while loading NULL.
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error: === Critical error: ===
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error:
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error: Fatal error!
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error:
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000060
    Of course.

    In BlueprintEditorUtils.cpp, add the following line at the top of FBlueprintEditorUtils::RegenerateBlueprintClass(...)

    Code:
            // Purge any NULL graphs
            FBlueprintEditorUtils::PurgeNullGraphs(Blueprint);
    There's an existing call to that method that exists further down, but it's possibly to access NULL graphs earlier in that method (which is what is happening).
    Originally posted by George.Xiao View Post
    Hi,
    I think you should debug all your OffsetLocation and OffsetRotation, this two should always be local space, but your code is world space at here and local space at there. And! your local space convert is wrong, your code is OutTransform *= FTransform(m_Rotation) then OutTransform.AddToTranslation(LocalSpaceOffset), in fact, your can just code like OutTransform = FTransform(m_Offset) * (FTransform(m_Rotation) * OutTransform) by simple.
    Your plugin is awesome, but many bug, i think you should debug overall, at least do some unit test. Thanks!
    Can you give an example of where the OffsetLocation / OffsetRotation are mismatched? I've had people request for World Space rotation / locations, so that's why there is an option for both - but it should be clearly defined.

    Also there should be no difference between using the FTransform(m_Offset) and simply calling OutTransform.AddToTranslation(m_Offset). One is allocating an entire FTransform to provide a simple vector addition (which happens during the Transform multiplication), the other just skips that temporary allocation. Were you seeing this fix things for you?

    And yes, bugs are a constant struggle. I've been trying to move towards more bug fixing rather than new features (beyond some editor improvements like Timeline scrubbing and stepping backwards that I'm working on now). Definitely report any bugs you see and I'll happily fix them. I use Able in my own game projects and I definitely fix any bugs I find myself and then broadcast those out.

    Leave a comment:


  • replied
    Hi,
    I think you should debug all your OffsetLocation and OffsetRotation, this two should always be local space, but your code is world space at here and local space at there. And! your local space convert is wrong, your code is OutTransform *= FTransform(m_Rotation) then OutTransform.AddToTranslation(LocalSpaceOffset), in fact, your can just code like OutTransform = FTransform(m_Offset) * (FTransform(m_Rotation) * OutTransform) by simple.
    Your plugin is awesome, but many bug, i think you should debug overall, at least do some unit test. Thanks!
    Last edited by George.Xiao; 01-11-2018, 01:57 AM.

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post
    [USER="15849"]
    Knaarke So that crash is due to some funkiness when recompiling the Blueprint that causes nullptrs in the Blueprint Graphs when the game launches in standalone via the Editor. It's a one line fix (I've reported it to Epic a few weeks back - but then the Holidays hit), so if you don't mind editing Engine code - I can give you the fix.
    Matt,

    I have the same error as these guys trying to test multiplayer code. Can you post the fix here so I (and future readers) can apply it to the engine? Thanks!


    [2018.01.09-15.21.46:013][ 3]LogLinker: Warning: Can't find file for asset '/Script/AbleEditor' while loading NULL.
    [2018.01.09-15.21.46:013][ 3]LoadErrors: Failed to load /Script/AbleEditor.AblAbilityGraph Referenced by PackageMetaData
    [2018.01.09-15.21.46:013][ 3]LogUObjectGlobals: Warning: Failed to load '/Script/AbleEditor': Can't find file for asset '/Script/AbleEditor' while loading NULL.
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error: === Critical error: ===
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error:
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error: Fatal error!
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error:
    [2018.01.09-15.21.46:724][ 3]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000060

    Leave a comment:


  • replied
    Originally posted by Aumaan Anubis View Post
    I would love this actually! O_O
    Me too!

    Leave a comment:


  • replied
    Originally posted by ExtraLifeMatt View Post
    But, maybe I'll just break them up into various Genres or behaviors and let people select which they want rather than trying to make them so generic.
    I would love this actually! O_O

    Leave a comment:


  • replied
    Originally posted by shadowkami View Post
    How can i play a TrailData particle?
    I'm not sure what a TrailData particle is? That may be specifically for the Weapon Trails system that uses Anim Notifies - which you would put in your Animation itself, not within Able.
    Originally posted by shadowkami View Post
    I play a particle in able class,and I set Ability Properties "Loop" is true,when I cancel this ability node,the Client's particle destroy,but the server is not.
    I deselect the "loop",there are destroy true.
    Particles should never play on the server, or are you talking about a Listen server? I'm not sure why looping would change anything, Able simply passes all that info to the Particle system. You may want to check and make sure your Particle is setup properly.
    Originally posted by Ubersoldat42 View Post
    Hey so I'm trying to create a parry system for some of the abilities. The idea is that, if an enemy is attacking, if my parry bool is set to true, then the collision query from their attack should branch into a stagger ability, instead of go all the way through.
    I can't seem to understand how custom branch conditions are used at all. Any help would be greatly appreciated.
    Also, maybe using branching isn't the right method? Maybe I should cancel the ability and run some check in the NPC logic?
    You could use a Branch for that (Add a Custom Branch condition that just checks for the parry bool and set your parry Ability as the Branch Ability). Or try your second approach where on your Player, when damage is dealt, if you are parrying - don't apply the damage, but instead call some "OnParried" Ability on your NPC that just cancels the current Ability and instead plays the staggered Ability.

    Personally I think the 2nd approach is a bit more flexible and what I would likely go with.

    Leave a comment:

Working...
X