Download

How could speed up and slow down a timer by distance to actor.

I am working with AI and have set a condition based on distance of player to AI actor.
Below a value is instant detect and above makes them move to player triggering the instant detect once below the distance.
But I want to start a timer by event that fills a bar, that when full then detect the player, but I want to scale the fill speed base on distance EG: The closer a player is to the AI the quicker it fills, and further away the slower It fills.

Anyone know how to do this correctly?

That sounds like Age in AIPerception.

Age will increase from 0 so long as the player is in the perception field. There is a max age as well, but I haven’t much success in accessing it in bp.

Alternatively, you can set up the AIPerception OnTargetSenseUpdated, using the SuccessfullySensed bool from the Sense return to know when the player is in sight, fire off your timer and trigger the event when it expires. If the player leaves perception, clear the timer.

good advice.
I already have a system where the player will be detected by distance, But I want something more organic and less robotic.
My idea is to have a icon above the AI head that once filled up is an instant detection.
My goal would be to scale my distance from between 1 meter and 30 and map range clamp to the value my eye meter fills up.
I have already tried this approach but it didnt work yet.
I have seen a system like this In metal gear solid 5 and the last of us.

StIll need help with this .
Just need a way to scale the speed of a timer / Timeline based on distance to an actor.
Closer I am the quicker the timer or timeline will be and reach a number value quicker.
Im also trying to limit to a range of 0 meters to 40 meters.
here is what I have tried but im a bit lost And need help.