I'm back! =)
I decided to test this a couple different ways to make sure I'm not missing anything else before I dive too far. I just attempted the same build (with the IsBlocking set to Replicated) to test networked responses. If the client is set up as the Authority everything works as planned with the little tweak. If I run two clients the Authority works properly and the animation replicates on the !Authority client. Switching to the !Authority client and run the ability and it gets stuck in the middle of channeling with no firing of Ability End.
It looks like the problem is in the UAblChannelingInputConditional.CheckConditional() as it always returns true if the AbilityComponent->IsNetworked() && !AbilityCompontent->IsOwnerLocallyControlled(). With logging this on the second client I was able to see that it was running that code on the client not just on the server and never able to let go of the channeling ability. I'm wondering if I'm missing a piece of code that submits the Input check from the client to the server for letting go of channeling or if I need to add something to the released input event?
A quick note this behaviour happens if running one client with a dedicated server for testing.
Thanks!
I decided to test this a couple different ways to make sure I'm not missing anything else before I dive too far. I just attempted the same build (with the IsBlocking set to Replicated) to test networked responses. If the client is set up as the Authority everything works as planned with the little tweak. If I run two clients the Authority works properly and the animation replicates on the !Authority client. Switching to the !Authority client and run the ability and it gets stuck in the middle of channeling with no firing of Ability End.
It looks like the problem is in the UAblChannelingInputConditional.CheckConditional() as it always returns true if the AbilityComponent->IsNetworked() && !AbilityCompontent->IsOwnerLocallyControlled(). With logging this on the second client I was able to see that it was running that code on the client not just on the server and never able to let go of the channeling ability. I'm wondering if I'm missing a piece of code that submits the Input check from the client to the server for letting go of channeling or if I need to add something to the released input event?
A quick note this behaviour happens if running one client with a dedicated server for testing.
Thanks!
Comment