Awesome, thanks for the kind words and the confirmation on X One / Linux. I only had a PS4 devkit to test locally, but everything was written to be cross platform - glad that seems to be working as expected.
Yea, that’s the socket rotation issue I’m currently chasing. I think it’s just a bone transform space issue (so the fix should be fairly easy), but I need to confirm. It’s on my list for work this weekend.
How to change Collision Sweep FireEvent in real time,not in this Collision Sweep Node 's last frame.I wan’t write a skill , it like dash,but this Collision Sweep Fire Event in this end.
Sweep requires the actor to be at the end spot. It’s meant for melee strikes and things like that. If you’re using a dash, you could just use a query rather than a sweep that is the size of where you’ll be moving. Or just assign a tag to the player for the duration of the dash that enemies check for and apply collision damage when the player overlaps them.
I’ve got a bit of a bug or issue, I have two separate abilities that have different cooldowns, however when I use one of them, both are put into cooldown in the same timeframe (one being 5 seconds, the other being 10), I’m trying to make it so the cooldowns are separate rather than global. Is there any way I could fix this? Cheers.
Ability Cooldown is tied to the name of the Ability (which gets hashed). As long as the Abilities have two separate names, they shouldn’t share a cooldown.
I found another problem, when i play one animation and then play another animation, this two animation not smooth switch, even if change blendin/blendout. Smooth switch animation is very important for me, i don’t know how to with able.
The Blend In/Out only works on Dynamic Montage / Ability Animation Node - not Single Node (it’s just not supported). Personally I use the Ability Animation Node, which you can find a tutorial on how to setup here: https://extralifestudios.atlassian.net/wiki/x/BYBK
Hmm, odd, both abilities are different names, might it be because I called them both ‘Ability_[name]’? Technically both are different names, just follow the same style guide. Still having issues with the cooldowns though
I wouldn’t think so, but I’ll investigate. Can you give me the name of the Abilities so I can re-create things on my end? You can PM me them if you don’t want to post them publicly.
Yea, I both try Dynamic Montage / Ability Animation Node, but no use, If i use PlayAnimationMontage node in blueprint, this problem is gone, i don’ t know why, then, I just compare your PlayAnimation source code with UE4’s PlayAnimationMontage source code, and i can’t find where is different. But switch play montage is still not smooth in Able, I’m confused.
Were these Abilities you had just created? I was able to reproduce this with brand new Abilities I had created (basically the hash code never got called so they all had the same hash), but upon restarting the editor - everything worked as expected.
I’ve added some code to aggressively make sure the hash is generated while you are in the editor since PostLoad may not have been called due to the object being new.
I created these a few days ago, and I did try to restart the editor a few times. I’ll attempt to get it going again tonight and post an update here.
EDIT: Seems to work now! That’s really weird, I’ll start restarting the editor every few abilities that are added now, I experienced the issue after restarting after adding them. But now they seem to work, pretty odd.
Added “Play Rate” to Abilities. This is a modifier applied to time passed to the Ability during it’s update so a value of 0.5 plays the Ability at half speed, 2.0 is double, and 1.2 is 20% faster. You can set it directly, or override the “GetPlayRate” method to dynamically change the play rate based on whatever gameplay mechanics you have (you can use GetBasePlayRate to get the value you’ve defined on the Ability). This value isn’t cached so if you modify it during an Ability’s execution - it will immediately take effect.
Fixed an issue with Socket Rotation being incorrect (let me know if you run into any issues).
Fixed an issue where Cooldowns weren’t being properly applied on Abilities you had created during an Editor session. If you still see this behavior, simply modify any field on the Ability and the system will fix itself.
A note about Play Rate. I plan to update PlayAnimation Task to automatically scale itself along with the Ability Play Rate (so Animation Play Rate * Ability Play Rate ) but that will have to go in the 2.11 update as I completely forgot about it till just now and cancelling product updates is nasty business. I’ll likely make it an option so if you want your animation to play at normal rate no matter what the Ability rate is - you can keep that behavior.
What attack from Castlevania? The whip attack? I bet that’s just a simple AABB query, so you could set up a simple box query (not sweep) that just goes the length of the whip. Or you could setup your whip with a sphere component at the end and just use Able to turn on/off that component.
There’s a number of ways you could go about this. Hard to know what to suggest without knowing more about the gameplay you’re going for.