Anyway to Detect FPS Setting? Issue with Skill Speed [Solved]

So in my game, I have an issue using Task.Wait on the client, Its usually normal and Okay at 60 FPS and lower, Is there a possible way to detect what Setting a player has set too? Like if the Player has 120 FPS or 240 FPS, To do an If Statement to see it.

The issue is that Skills become Absurdly fast because the FPS goes higher than 60

FPS Higher than 60:

FPS Limited to 60:

Please I need to know if this is a thing I can detect. and would Really appreciate it!

3 Likes

If the only issue here is that the animations are too fast, maybe it would be best to instead provide a set amount of time to wait for task.wait. A simple fix to make your animation match what it would be if the user were playing at 60fps would be do replace all task.wait()s with task.wait(1 / 60).

1 Like

But is there any optimal way to detect that basically? Like
If UserFPS is 60 then “task.wait(1,60)”
or UserFPS is 240 then 'task.wait(1,240)"

Just curious, but why would you want to do that? By default, task.wait() will wait until the next frame (see the Scheduler article for more information about this). If the user has 60fps, then task.wait would wait for 1/60 seconds (for our purposes). If you explicitly have it wait for 1/60 seconds, then it it would be independent of the fps of the user.

1 Like

Just curious here, task.wait() is based off the clients next frame? Always thought it’s the “servers” for some reason.

1 Like

I mean you could use RunService to essentially detect how many frames were rendered for a second, and use that as avg, updating it every other second.

Oh wait actually? I had no idea it did that, Just tested it and it worked on all FPS Correctly, Thank you a ton!

task.wait() waits for a singular render (on the client) or Physics render on the server.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.