Yes, any animation notifies will fire like normal.
I think Iām missing something badly but I canāt get it to work when I set Targeting > Target Logic to āBlackboardā and set Dynamic Properties > Identifier to the name of the Blackboard key where my target actor is. When I check the Blackboard, that object is set properly, itās just not being forwarded to Able.
Is there any chance you could post some more demos/videos, they help a lot but most of them are from 2+ years ago. Thanks!
Happy holidays everyone!
Edit: doing a custom targeting and fetching blackboard value manually is working perfectly.
Iāll dig into that and make a local repro to see what I find. Thanks for the report and glad you found a temporary work around.
is your blackboard key public? you sure get self actor returns the character? does the character have access to blackboard or maybe you need to run it from owner (controller) ?
For some reason the engine crashes when i try to open a ability if i have this on my character
Unfortunately, I donāt own Smooth-Sync, so I canāt tell you why they arenāt playing nice together. Thereās a couple things you can try to narrow it down.
1.) Disable Async Tasks to prevent any thread safety issues that might occur between the two.
2.) Try and narrow down which Task doesnāt like working with Smooth-Sync.
If you post the callstack (youāll find it in your logs) of the crash, that may help as well.
this is the callstack
Unhandled exception
UE4Editor_SmoothSyncPlugin!USmoothSync::adjustOwnerTime() [d:\build++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\smoothsyncplugin\source\smoothsyncplugin\private\smoothsync.cpp:2352]
UE4Editor_SmoothSyncPlugin!USmoothSync::TickComponent() [d:\build++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\smoothsyncplugin\source\smoothsyncplugin\private\smoothsync.cpp:728]
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Core
UE4Editor_Core
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_AbleEditor!FAbilityEditorViewportClient::Tick() [d:\build++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ableeditor\private\abilityeditor\ablabilityeditorviewportclient.cpp:230]
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor
UE4Editor
UE4Editor
UE4Editor
UE4Editor
kernel32
ntdll
i fixed it for now by changing the preview character to another one which doesnt have the smooth sync component
Yea, looks like Smooth Sync doesnāt like how the Editor is ticking the Viewport. Not shocked, I move the time around as you scrub the timeline which Smooth Sync probably isnāt happy with.
Hey there ,
I really like your work with the Plugin so far, but I ran into a ābuild failedā problem yesterday; after uninstall and reinstall the ABLE plugin in the Epic Launcher for the 4.22.3, my project unable to build with āExclusive Nativizationā (no ABLE assets in my āList of Blueprint assets to nativizeā array, just a Blueprint Function Library, nothing else), because of this:
Building 13 actions with 16 processes...
UATHelper: Packaging (Windows (64-bit)): [1/13] Default.rc2
UATHelper: Packaging (Windows (64-bit)): [2/13] SharedPCH.Core.cpp
UATHelper: Packaging (Windows (64-bit)): [3/13] Project_Alvus.cpp
UATHelper: Packaging (Windows (64-bit)): [4/13] PCH.NativizedAssets.cpp
UATHelper: Packaging (Windows (64-bit)): [5/13] Module.NativizedAssets.gen.6_of_6.cpp
UATHelper: Packaging (Windows (64-bit)): [6/13] Module.NativizedAssets.gen.3_of_6.cpp
UATHelper: Packaging (Windows (64-bit)): [7/13] Module.NativizedAssets.gen.1_of_6.cpp
UATHelper: Packaging (Windows (64-bit)): [8/13] Module.NativizedAssets.gen.2_of_6.cpp
UATHelper: Packaging (Windows (64-bit)): [9/13] Module.NativizedAssets.gen.4_of_6.cpp
UATHelper: Packaging (Windows (64-bit)): [10/13] Module.NativizedAssets.gen.5_of_6.cpp
UATHelper: Packaging (Windows (64-bit)): [11/13] Module.NativizedAssets.cpp
UATHelper: Packaging (Windows (64-bit)): F:\Unreal Engine 4\Engine\UE_4.22\Engine\Source\../Plugins/Marketplace/Able/Source/AbleCore/Classes/ablSettings.h(46): error C4800: Implicit conversion from 'const float' to bool. Possible information loss
UATHelper: Packaging (Windows (64-bit)): F:\Unreal Engine 4\Engine\UE_4.22\Engine\Source\../Plugins/Marketplace/Able/Source/AbleCore/Classes/ablSettings.h(46): note: consider using explicit cast or comparison to 0 to avoid this warning
UATHelper: Packaging (Windows (64-bit)): Took 28,5399801s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (Windows (64-bit)): ERROR: UnrealBuildTool failed. See log for more details. (C:\Users\Jim\AppData\Roaming\Unreal Engine\AutomationTool\Logs\F+Unreal+Engine+4+Engine+UE_4.22\UBT-Project_Alvus-Win64-Development.txt)
UATHelper: Packaging (Windows (64-bit)): (see C:\Users\Jim\AppData\Roaming\Unreal Engine\AutomationTool\Logs\F+Unreal+Engine+4+Engine+UE_4.22\Log.txt for full exception trace)
UATHelper: Packaging (Windows (64-bit)): AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (Windows (64-bit)): BUILD FAILED
PackagingResults: Error: Unknown Error
I donāt understand why is this happening right after the plugin reinstall, because before that everything was just fineā¦ : (
By the way, I reinstalled the Plugin because the ABLE crashes really often in various scenarios, sadly.
For example; I run into a crash a lot when Iām working with the Plugin assets opened in a window while creating a combo system and recompile an other, completely different type of Blueprint, like an Actor Component and not even an ABLE Graph:
Unhandled exception
UE4Editor_AbleEditor!FAblAbilityEditor::Tick() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ableeditor\private\abilityeditor\ablabilityeditor.cpp:374]
UE4Editor_UnrealEd!FTickableEditorObject::TickObjects() [d:\build\++ue4\sync\engine\source\editor\unrealed\public ickableeditorobject.h:47]
UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\editorengine.cpp:1411]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:403]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3967]
UE4Editor!GuardedMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launch.cpp:168]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:145]
UE4Editor!WinMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:275]
UE4Editor!__scrt_common_main_seh() [d:\agent\_work\3\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll
What do you think? Any suggestions?
Hmmm, the first one looks like a legit type conversion error. That should be a bool, no idea why itās a float (probably dumb copy and paste error on my part). Iāll get a fix out for that.
The 2nd one looks like itās failing to create a context, which a null check would fix. Let me get in a fix for that as well.
Thanks for the report and sorry for the temporary headache.
@Kelen I think I see what happened.
The āDynamic Property Identiferā is specifically for Able usage when you have a dynamic property bound (youāll see ā+ā signs on certain fields in Able, where you can bind some Blueprint logic to get a value at runtime). The Dynamic Property Identifier is there in case you have multiple Tasks / Targeting / Etc all using the dynamic property values so you can determine in your blueprint function which Task is calling that function.
For BB Keys, you just want to add the key to the āBlackboard Keysā array under the targeting properties. When I did that, it worked as expected.
@JimPhoenix Iāve gone ahead and submitted a fix for those crashes (should appear hopefully sometime this week). Again, sorry for the hiccup.
Able v3.23
@ thanks a lot, I will try the fixes out and if you donāt mind I will report other bugs or crashes, may even be QoL suggestions in the future here to further improve and polish the Plugin.
Keep up the good work , I truly appreciate your effort with ABLE, itās a really powerful and useful system.
Absolutely. I love feedback. Lots of features have come from users like yourself.
Thanks for the tips, it turns out I was looking at the wrong thing.
I appologize for the stupid question but I canāt find Blackboard keys array? Is it somewhere else? Itās a 4.23 project by the way.
like most things with blakboard relatedā¦ you must know the key ānameā by checking itā¦ there is no reference. You must also know what type it is not to crash the engine so if you target something that is not an actor base class or not even an object - in example boolā¦ it wont work.
Yea, thatās not the question he has. I just noticed the category that has that property exposed is hidden. I didnāt notice it due to some local changes on my end.
Iāll get a fix out.
If you want to fix it locally, just change the Category to something like āBlackboardā in ablTargetingMisc.h line 89.
/* What Keys to use when attempting to grab an Actor from the Blackboard */
UPROPERTY(EditInstanceOnly, Category = "**Blackboard**", meta = (DisplayName = "Blackboard Keys"))
TArray<FName> m_BlackboardKeys;
Hey there ,
I experienced some really strange behaviors with the ABLEās parent-child relations handling (with UE 4.22.3) and collected some crashlogs, so letās begin; if I create a āMasterā aka. Parent ABLE ability, then add some tasks to it, finish it for now, then after this I create some child ABLE Abilities from that **Master **ability **(Right Click ā Create a Child Blueprint Class) **and later on I add an other task, like a Check Condition logic to the **Master **ability the childs donāt get this change right after that. Okey, what if I check the āInheritableā chackbox? Well, if I do that, the Childs donāt want to save themselfs from this point and the Editor gives me these pop-up windows:
Lines from the log:
LogSlate: Window 'Message' being destroyed
LogSavePackage: Warning: Referencers of AblSpawnActorTask /Game/Gameplay/AISystem/Abilities/01_Minor/Able_AI_Minor_Melee_Attack.Default__Able_AI_Minor_Melee_Attack_C:AblSpawnActorTask_0:
LogSavePackage: Warning: Able_AI_Minor_Melee_Attack_C /Game/Gameplay/AISystem/Abilities/01_Minor/Able_AI_Minor_Melee_Attack.Default__Able_AI_Minor_Melee_Attack_C (2 refs)
LogSavePackage: Warning: 0) ObjectProperty /Script/AbleCore.AblAbility:m_Tasks.m_Tasks
LogSavePackage: Warning: 1) ObjectProperty /Script/AbleCore.AblAbility:m_CachedTasks.m_CachedTasks
LogSavePackage: Warning: Able_AI_Minor_Melee_Attack_Child_01_C /Game/Gameplay/AISystem/Abilities/01_Minor/Able_AI_Minor_Melee_Attack_Child_01.Default__Able_AI_Minor_Melee_Attack_Child_01_C (1 refs)
LogSavePackage: Warning: 0) ObjectProperty /Script/AbleCore.AblAbility:m_CachedTasks.m_CachedTasks
LogSlate: Window 'Message' being destroyed
EditorErrors: New page: Save Output
EditorErrors: Warning: Can't save /Content/Gameplay/AISystem/Abilities/01_Minor/Able_AI_Minor_Melee_Attack_Child_01.uasset: Graph is linked to external private object AblSpawnActorTask /Game/Gameplay/AISystem/Abilities/01_Minor/Able_AI_Minor_Melee_Attack.Default__Able_AI_Minor_Melee_Attack_C:AblSpawnActorTask_0 (m_Cached
Tasks)
LogSlate: FSceneViewport::OnFocusLost() reason 2
LogSlate: Window 'Packages Failed To Save' being destroyed
LogSlate: FSceneViewport::OnFocusLost() reason 0
After this event, if I just go and unfill the āInheritableā checkbox in the **Master **ability, save the ability and then go back to one of the childs, the mentioned task leaves a blank line in the Child abilityās Timeline and the Editor just crash and it gives me this log:
Unhandled exception
UE4Editor_AbleEditor!SAblAbilityTimelineNode::DetermineDragType() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ableeditor\private\abilityeditor\sabilitytimelinetrack.cpp:477]
UE4Editor_AbleEditor!SAblAbilityTimelineNode::OnCursorQuery() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ableeditor\private\abilityeditor\sabilitytimelinetrack.cpp:229]
UE4Editor_Slate!FSlateApplication::QueryCursor() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:3620]
UE4Editor_Slate!FSlateApplication::TickApplication() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1735]
UE4Editor_Slate!FSlateApplication::Tick() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1679]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:4071]
UE4Editor!GuardedMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launch.cpp:168]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:145]
UE4Editor!WinMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:275]
UE4Editor!__scrt_common_main_seh() [d:\agent\_work\3\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll
Another stange thing happens when I create an other **Master **type ability then some Childs from it and later on in the **Master **ability I check one or more task(s) to be āInheritableā. If I do that, in the Childs all of those tasks (which are have the āInheritableā fill) are now duplicated in the Childsā ability Timeline.
Finally, here are some other crashlogs from the last few days:
Unhandled exception
UE4Editor_AbleCore!UAblAbilityInstance::GetAbility() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\private\ablabilityinstance.cpp:381]
UE4Editor_AbleCore!UAblAbilityComponent::CancelActiveAbility() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\private\ablabilitycomponent.cpp:448]
UE4Editor_AbleCore!UAblAbilityComponent::InternalCancelAbility() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\private\ablabilitycomponent.cpp:976]
UE4Editor_AbleCore!UAblAbilityComponent::CancelAbility() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\private\ablabilitycomponent.cpp:687]
UE4Editor_AbleCore!UAblAbilityComponent::execCancelAbility() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\classes\ablabilitycomponent.h:94]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4643]
UE4Editor_CoreUObject!UObject::CallFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:904]
UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2314]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:809]
UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1033]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:809]
UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1033]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:809]
UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1033]
UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2314]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:809]
UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1033]
UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2314]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:809]
UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1033]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1058]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4643]
UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1464]
UE4Editor_Engine!AActor::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\engine\private\actor.cpp:769]
UE4Editor_Engine!TMulticastScriptDelegate<FWeakObjectPtr>::ProcessMulticastDelegate<UObject>() [d:\build\++ue4\sync\engine\source\runtime\core\public\uobject\scriptdelegates.h:488]
UE4Editor_Engine!FComponentBeginOverlapSignature::Broadcast() [d:\build\++ue4\sync\engine\source\runtime\engine\classes\components\primitivecomponent.h:147]
UE4Editor_Engine!UPrimitiveComponent::BeginComponentOverlap() [d:\build\++ue4\sync\engine\source\runtime\engine\private\components\primitivecomponent.cpp:2489]
UE4Editor_Engine!UPrimitiveComponent::UpdateOverlapsImpl() [d:\build\++ue4\sync\engine\source\runtime\engine\private\components\primitivecomponent.cpp:3035]
UE4Editor_Engine!UPrimitiveComponent::OnComponentCollisionSettingsChanged() [d:\build\++ue4\sync\engine\source\runtime\engine\private\primitivecomponentphysics.cpp:952]
UE4Editor_Engine!UPrimitiveComponent::SetCollisionEnabled() [d:\build\++ue4\sync\engine\source\runtime\engine\private\primitivecomponentphysics.cpp:895]
UE4Editor_Engine!UPrimitiveComponent::execSetCollisionEnabled() [d:\build\++ue4\sync\engine\source\runtime\engine\classes\components\primitivecomponent.h:174]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4643]
UE4Editor_CoreUObject!UObject::CallFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:904]
UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2314]
UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:974]
UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1058]
UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4643]
UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1464]
UE4Editor_Engine!AActor::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\engine\private\actor.cpp:769]
UE4Editor_Engine!FLatentActionManager::TickLatentActionForObject() [d:\build\++ue4\sync\engine\source\runtime\engine\private\latentactionmanager.cpp:206]
UE4Editor_Engine!FLatentActionManager::ProcessLatentActions() [d:\build\++ue4\sync\engine\source\runtime\engine\private\latentactionmanager.cpp:144]
UE4Editor_Engine!UWorld::Tick() [d:\build\++ue4\sync\engine\source\runtime\engine\private\leveltick.cpp:1621]
UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\editorengine.cpp:1618]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:403]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3967]
UE4Editor!GuardedMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launch.cpp:168]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:145]
UE4Editor!WinMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:275]
UE4Editor!__scrt_common_main_seh() [d:\agent\_work\3\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll
Unhandled exception
UE4Editor_AbleCore!UAblAbilityInstance::Initialize() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\private\ablabilityinstance.cpp:58]
UE4Editor_AbleCore!UAblAbilityComponent::PlayAbilityFromEditor() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ablecore\private\ablabilitycomponent.cpp:1443]
UE4Editor_AbleEditor!FAblAbilityEditor::PlayAbility() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\able\source\ableeditor\private\abilityeditor\ablabilityeditor.cpp:1359]
UE4Editor_AbleEditor!TBaseSPMethodDelegateInstance<0,FAblAbilityEditor,0,void __cdecl(void)>::ExecuteIfSafe() [d:\rocketsync\4.22.0-5660361+++ue4+release-4.22\working\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:355]
UE4Editor_Slate!FUICommandList::ExecuteAction() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\commands\uicommandlist.cpp:99]
UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\multibox\stoolbarbuttonblock.cpp:300]
UE4Editor_Slate!SToolBarButtonBlock::OnCheckStateChanged() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\multibox\stoolbarbuttonblock.cpp:325]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,void __cdecl(enum ECheckBoxState)>::ExecuteIfSafe() [d:\build\++ue4\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:355]
UE4Editor_Slate!SCheckBox::OnMouseButtonUp() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\input\scheckbox.cpp:191]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_6c1f6b862bcfb82ea6dcab28fbcc9463> >() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:271]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5598]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:6203]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:6176]
UE4Editor_ApplicationCore!FWindowsApplication::ProcessDeferredMessage() [d:\build\++ue4\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:1842]
UE4Editor_ApplicationCore!FWindowsApplication::DeferMessage() [d:\build\++ue4\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:2292]
UE4Editor_ApplicationCore!FWindowsApplication::ProcessMessage() [d:\build\++ue4\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:1522]
UE4Editor_ApplicationCore!FWindowsApplication::AppWndProc() [d:\build\++ue4\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:772]
user32
user32
UE4Editor_ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages() [d:\build\++ue4\sync\engine\source\runtime\applicationcore\private\windows\windowsplatformapplicationmisc.cpp:130]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3882]
UE4Editor!GuardedMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launch.cpp:168]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:145]
UE4Editor!WinMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:275]
UE4Editor!__scrt_common_main_seh() [d:\agent\_work\3\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll
Thank you for your attention! : )
@JimPhoenix Interestingā¦ Iāll poke at the crash logs. Are you attempting to modify the Inherited tasks? That would definitely cause an error, they should be treated as Read only for the most part.
Well if there is an animation task, I would like to change the task properties here and there (mainly the Animation itself) or if itās a Condition Check the lenght of the task in the timeline, or if itās a Collision Query the position in the timeline, maybe the details of the arc, and so on. Or you maybe referring to some other part from my post above?
My usual methode is l(ike with normal BPs) to create a Master asset, add the needed tasks, build the custom logic in the graph tab within the overwriteable functions and in the main graph as well for the Start / End / Interrupted / Branch Events, and after that I create the Childs from it for melee or range attack variations / combo elements, etc. And yeah, in the iteration phase sometimes I need to add an other task to the Master because I want to extend the features of the ability (add a Custom Event or a Condition Check), so this is where the āfunā begins. : )