Download

Is there a function that can lower a value over time?

I am trying to have a value lowered overtime. As an example, if I wanted to change the max walk speed, I would want that change to be gradual over a specific number of seconds until it hits my desired number.

Is there a function for that?

Hi! Use looped timeline and subtract something from your variable, and use delay or something like that. Of course you need to set little Branch construction to check floor or ceil value

If you’re already using a timeline, why not use the value of the timeline as the new value? In your example pic, the timeline’s value is “Direction”, but you’re not actually using it.

You don’t need the delay node, or a second variable for the amount you’re decreasing, as both of those things are provided directly by a timeline.

edit as an example, here’s a timeline that decreases the max speed from 100 (when the timeline starts) to 50 (when it completes). Demonstrating that it works, is a Tick event printing out the current Max Speed value. No Delay nodes, no extra variables, no extra logic, just keep it simple and let the Timeline do all that for you.

Alrighty, I managed to get that to work. Thank you very much for that. Question, are you using a created variable for speed? If so an alternative would be to use the get character movement first, and then to use the max speed. You just use the variables in place already. I just don’t like having too many variables in a character blueprint.