Jump to content
naught

FPS Monitoring Script

Recommended Posts

FPS Monitoring Script

v1.0.2.1 - v1 Release Candidate b1

By Naught


Github: https://github.com/dylanplecki/ArmaScripts/tree/master/Arma%202/FPS%20Monitor

Issues: https://github.com/dylanplecki/ArmaScripts/issues

Download: https://raw.github.com/dylanplecki/ArmaScripts/master/Arma%202/FPS%20Monitor/fpsmon.sqf

Original Thread: http://forums.unitedoperations.net/index.php/topic/21280-fps-monitoring-script/?hl=fps+monitor


Description

This script can monitor and report the FPS of all machines in a mission - server, headless clients, clients, and even your own! It will silently hint to you (on a specified interval) your FPS, the server's FPS, all of the headless clients' average FPS, and all of the players' average FPS. Now you can know how well other players are running the mission, if the server is gasping for CPU cycles, whether you should optimize a script or not, or if the headless client is running fast enough to handle your huge AI load. And it's as easy as locally loading a running a function! This function can even be loaded from a debug console and run, as it requires no dependencies other and CBA be loaded.

Here's an outline of what the silent hint will look like:

Local FPS: minFPS - avgFPS
Server FPS: minFPS - avgFPS / count
Headless FPS: avgMinFPS - avgAvgFPS / count
Client FPS: avgMinFPS - avgAvgFPS / count

Note: This script can be loaded and executed on any machine, without a need to install anything on the others.

Here's an image of the [old] initial version if you're interested:

arma2oa_2013_11_23_23_30_31_962.png


Syntax

call FPSMON_fnc_monitor; // Turns off script

delayInt call FPSMON_fnc_monitor; // Turns on/off script with delay

[delayInt] call FPSMON_fnc_monitor; // Turns on/off script with delay


Requirements

  • Arma 3 1.0
  • Arma 2 OA 1.62
  • CBA A2/OA/A3 1.0

Note: The dependency on CBA is due to the CBA_fnc_globalExecute function being required for the ability to load the function on one machine yet execute it on all - If you want to make a fork of this script using the BI_fnc_mp function to remove the CBA dependency, be my guest, and post it up here.

Edited by Naught

Share this post


Link to post
Share on other sites

Great piece of work! I couldn't test it by now, but i will. This one may help me solving performance issues i am trying to find and fix for weeks now. Thanks!

Share this post


Link to post
Share on other sites

Is there any major difference between this and the #monitor cmd?

Share this post


Link to post
Share on other sites
Is there any major difference between this and the #monitor cmd?

This script monitors and reports local FPS, all of the headless clients' FPS (averaged), all of the players' FPS (averaged), and the server FPS, instead of just the server FPS (like the #monitor command does). It gives you better insight into the performance of other players and the headless clients.

Share this post


Link to post
Share on other sites

Nice work Naught. These kind of scripts are necessary so that mission/mod makers can see the effect they have on machines, or for users to see just HOW to get the best FPS.

Share this post


Link to post
Share on other sites

Hey guys;

Nice script.

I´ve a doubt, in order to make it work. Do I´ve to put anything at the init.sqf. To make it run, I meant.

Share this post


Link to post
Share on other sites
Hey guys;

Nice script.

I´ve a doubt, in order to make it work. Do I´ve to put anything at the init.sqf. To make it run, I meant.

Yes, you can either throw the contents of the download file (fpsmon.sqf) into the init.sqf or you can execVM the file.

Share this post


Link to post
Share on other sites

Will be experimenting with this and a FPS sensitive AI spawning script. Good work!

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×