Hi,
The project I’m working using a fair amount of water environments, I checked the WaterVolume feature.
Everything works just fine except for that “slow-down” effect when exiting the volume.
Here’s a video to show you the issue (the red/green Line below the character is just a debug LineTrace of my Jetpack feature, the only thing allowing me to get out of that ■■■■ water) :
[]
These are the Water Movement parameters inside the Defaults section of my CharacterBlueprint. I’ve tried editing these values but it won’t change anything :
Hi, I’m using an Add Force node, and the closer to the ground the more force I add (LineTrace). I was using a Launch Character node for some time but there was the same issue with water exiting.
EDIT: Well actually I’ve just tried to get back to a Launch Character node and the bug won’t show up. BUT (now I remember why I put it aside) using Launch Character inside the water volume will get you to the falling state, and you’ll just fall, ignoring buoyancy. So can I get my Add Force to work properly ?
I see exactly what you are talking about when using Add Force. I’m still trying to find a workaround for that.
In the meantime you can try playing with the Launch Character. One way I believe should work (I haven’t tried this yet) would be to set the Movement Mode manually through blueprints. You could do something like, on key release see if the player is in the water volume, if so, then set the movement mode to Swimming. If not, set the movement mode to falling. The Walking mode should automatically take effect when the player touches the ground.
Unfortunately LaunchCharacter won’t work in my case. Since my Character rotation system is behaving differently from one MovementMode to another, I can’t allow the MovementMode to be set on falling while in a water volume, it just messes things up.
Even if I set MovementMode to Swimming RIGHT after the LaunchCharacter Node, it just keeps on switching Mode rapidly (I printed it) and that’s really dirty. So yeah, no LaunchCharacter in my case, thanks for the tip though.
Okay, so this possible solution doesn’t set the Movement mode to falling in the water so it may work for you.
Set the Movement mode to Flying while the jetpack button is held and when it is released, set it to Swimming. If the player is out side of a swimming volume the system will automatically set the movement mode to Falling on release.
Sorry to say but that won’t work either. Since the state would be on falling, the Character would ignore the Water settings (such as buoyancy) and so will not ignore gravity, causing the jetpack speed to be different whether going up or down. Sure I could add some nodes to correct it but that would seem a bit too hardcoded.
I’m pretty confident AddForce is still the best (clean) way to get it within my current setting, though I guess the slow-down issue is not that easy to troubleshoot. Thanks again for your time.
I’m unsure of what you mean. This setup is using an Add Force node. The only time the Falling mode is active is when the jetpack is not active and the player is out of water.
Oh, right. Sorry I didn’t get that right. I’ll try it as soon as I can. Just one question though, doesn’t the flying mode set the Character to ignore gravity (I mean when out of water)?