CommitAbility, CommitAbilityCost, and CheckAbilityCost Not Doing Anything When ”False” Is Returned

I want to display a UI message when the player attempts to use an ability without having the resources for it, so I figured I’d check if the CommitAbility node returns false. Problem is, any logic I put after that node gets ignored, except for Cancel Ability or End Ability. The same thing happens if I try to use the CommitAbilityCost or CheckAbilityCost nodes!

Even with just a basic check like this, the “FALSE” message will never be printed. Does anyone know why?

is the True message printed if true?

1 Like

Yes, the True condition gets evaluated just fine.

I looked at the source code in GameplayAbility.cpp, for the three BP nodes that I’ve having trouble with. Nothing I saw in there leads me to believe they shouldn’t do anything if False is returned. Perhaps I wasn’t reading the code correctly, but I don’t understand why this sort of thing doesn’t happen with any other functions that return a bool.

have you added a cost Gameplay effect?
if yes, what is it looling like?

1 Like

Yep, I’ve had one for a while and it hasn’t presented any of its own issues to my knowledge:


I’ve also confirmed that the False condition for CommitAbility/CommitAbilityCost/CheckAbilityCost does nothing on multiple Gameplay Abilities.