GetPlayerFPS example - 
JernejL -  28.08.2010
So I see noone made any examples from my suggestion how to build a fps counter using drunklevel, so here is a basic copy-pastable code i wrote for my needs that you can use: 
pawn Код:
new pDrunkLevelLast[MAX_PLAYERS];
new pFPS[MAX_PLAYERS];
 
public OnPlayerConnect(playerid) {
    pDrunkLevelLast[playerid]   = 0;
    pFPS[PlayerID]          = 0;
}
 
public OnPlayerUpdate(playerid) {
    
    // handle fps counters.
    
    new drunknew;
    drunknew = GetPlayerDrunkLevel(playerid);
    
    if (drunknew < 100) { // go back up, keep cycling.
        SetPlayerDrunkLevel(playerid, 2000);
    } else {
        
        if (pDrunkLevelLast[playerid] != drunknew) {
            
            new wfps = pDrunkLevelLast[playerid] - drunknew;
            
            if ((wfps > 0) && (wfps < 200))
                pFPS[playerid] = wfps;
            
            pDrunkLevelLast[playerid] = drunknew;
        }
        
    }
    
}
 
The first person to make a Filterscript out of this with a on-screen FPS textdraw gets eternal gratitude from the turtle! 
Remember, this will only work correctly with 0.3b, also you can still set drunk level to >2000 and it will work properly, the trick does not interfere / break any existing script functionality.
Re: GetPlayerFPS example - [03]Garsino -  28.08.2010
Good tutorial! But next time use PVars? :P
Re: GetPlayerFPS example - 
Brian_Furious -  28.08.2010
NIce, i'll test it tomrrow..but it looks nice
P.S it works only for 0.3b?
Re: GetPlayerFPS example - 
Kitten -  28.08.2010
Nice ill test it soon !
Re: GetPlayerFPS example - 
JernejL -  28.08.2010
It only works for 0.3b yes, i obviously stated that in my post. 
Also, i don't use pvars because the script i am working with needs THE ULTIMATE PERFORMANCE at runtime, last time i checked arrays were still faster than pvars.
Re: GetPlayerFPS example - [03]Garsino -  28.08.2010
Well with PVars you can share the FPS through other scripts. But I guess there are other workarounds
Re: GetPlayerFPS example - 
Gamer_Z -  29.08.2010
here you go:
pawn Код:
#include <a_samp>
new pDrunkLevelLast[MAX_PLAYERS];
new pFPS[MAX_PLAYERS];
public OnFilterScriptInit(){
    SetTimer("DisplayFPS",1000,1);
    return 1;
}
public OnPlayerConnect(playerid) {
    pDrunkLevelLast[playerid]   = 0;
    pFPS[playerid]          = 0;
}
public OnPlayerUpdate(playerid) {
    // handle fps counters.
    new drunknew = GetPlayerDrunkLevel(playerid);
    if (drunknew < 100) { // go back up, keep cycling.
        SetPlayerDrunkLevel(playerid, 2000);
    } else {
        if (pDrunkLevelLast[playerid] != drunknew) {
            new wfps = pDrunkLevelLast[playerid] - drunknew;
            if ((wfps > 0) && (wfps < 200))
                pFPS[playerid] = wfps;
            pDrunkLevelLast[playerid] = drunknew;
        }
    }
}
forward DisplayFPS();
public DisplayFPS(){
    new FPSmsg[20];
    for(new i; i < MAX_PLAYERS; i++)if(IsPlayerConnected(i)){
        format(FPSmsg,20,"Your FPS is: %d",pFPS[i]);
        //Show it here on-screen and set PVar
    }
}
 
rest you can do yourself 
Re: GetPlayerFPS example - 
Brian_Furious -  29.08.2010
Quote:
					Originally Posted by  gamer_Z
 
 
here you go: 
pawn Код: 
#include <a_samp>
  new pDrunkLevelLast[MAX_PLAYERS]; new pFPS[MAX_PLAYERS];
  public OnFilterScriptInit(){     SetTimer("DisplayFPS",1000,1);     return 1; }
  public OnPlayerConnect(playerid) {     pDrunkLevelLast[playerid]   = 0;     pFPS[playerid]          = 0; }
  public OnPlayerUpdate(playerid) {
      // handle fps counters.
      new drunknew = GetPlayerDrunkLevel(playerid);
      if (drunknew < 100) { // go back up, keep cycling.         SetPlayerDrunkLevel(playerid, 2000);     } else {
          if (pDrunkLevelLast[playerid] != drunknew) {
              new wfps = pDrunkLevelLast[playerid] - drunknew;
              if ((wfps > 0) && (wfps < 200))                 pFPS[playerid] = wfps;
              pDrunkLevelLast[playerid] = drunknew;         }
      }
  }
 
  damn, it's easy, useful and works
  forward DisplayFPS(); public DisplayFPS(){     new FPSmsg[20];     for(new i; i < MAX_PLAYERS; i++)if(IsPlayerConnected(i)){         format(FPSmsg,20,"Your FPS is: %d",pFPS[i]);         //Show it here on-screen and set PVar     } }  
 
rest you can do yourself    
 | 
 
it's easy, useful and works
Re: GetPlayerFPS example - [L3th4l] -  29.08.2010
Looks good 
Re: GetPlayerFPS example - 
Flake. -  29.08.2010
thanks for this you finally showed everyone 
Re: GetPlayerFPS example - 
nemesis- -  29.08.2010
Quote:
					Originally Posted by  JernejL
 
 
So I see noone made anx examples from my suggestion how to build a fps counter using drunklevel, so here is a basic copy-pastable code i wrote for my needs that you can use:  
 
The first person to make a Filterscript out of this with a on-screen FPS textdraw gets eternal gratitude from the turtle!  
 
Remember, this will only work correctly with 0.3b, also you can still set drunk level to >2000 and it will work properly, the trick does not interfere / break any existing script functionality. 
 | 
 I had a working /fps command the very same day you posted your whitepaper on it.  The logic was simple enough to follow to work out the math.  Mine is different though: my /fps brings up a dialog which shows the FPS of every player on the server with an 'update' button to refresh it all.  I also do not have the range check that you do since I have other functions that can break the FPS function on a specific player if they start playing with functions that drastically alter their drunk level (i.e. /mdrunk, /wine, /beer, etc).  That, or you can just direct it to a player (i.e. /fps <player name>).  Come by my server some time and do /fps 

.
Re: GetPlayerFPS example - 
JernejL -  29.08.2010
Quote:
					Originally Posted by  nemesis-
 
 
I had a working /fps command the very same day you posted your whitepaper on it.  The logic was simple enough to follow to work out the math.  Mine is different though: my /fps brings up a dialog which shows the FPS of every player on the server with an 'update' button to refresh it all.  I also do not have the range check that you do since I have other functions that can break the FPS function on a specific player if they start playing with functions that drastically alter their drunk level (i.e. /mdrunk, /wine, /beer, etc).  That, or you can just direct it to a player (i.e. /fps <player name>).  Come by my server some time and do /fps   .  
 | 
 We had this for months as admin-only-manual-drunk-fps-checker in 0.3a on partyserver, and with 0.3b it's public functions: see /fps /goodfps & /laggers, uses dialogs too. 
My implementation will not break if you set drunk level (and highier than 2000 drunk level on partyserver is set if you driveby too much)
Re: GetPlayerFPS example - 
Hiddos -  29.08.2010
I'm wondering where all this FPS crap came from so suddenly... because it was stated in the 0.3b topic that /fpslimit saves?
Looks good, even though I'm wondering why somebody would want to get somebody else's FPS :S
Re: GetPlayerFPS example - 
Calgon -  29.08.2010
Quote:
					Originally Posted by  Hiddos
 
 
I'm wondering where all this FPS crap came from so suddenly... because it was stated in the 0.3b topic that /fpslimit saves? 
 
Looks good, even though I'm wondering why somebody would want to get somebody else's FPS :S 
 | 
 It can be useful to detect if someone's lagging or HP hacking. Seeing as you could get their FPS rate, ping & other dependencies.
Re: GetPlayerFPS example - 
Cank -  29.08.2010
nice, but how does it work?
what does the drinlevel have to do with fps?
Re: GetPlayerFPS example - 
MrDeath537 -  29.08.2010
OMFG, amazing. Using it!. Thanks you.
Re: GetPlayerFPS example - 
[XST]O_x -  29.08.2010
Dude you rock,thanks!
Made an FS(with your credits OFC.)
http://forum.sa-mp.com/showthread.ph...112#post815112
Re: GetPlayerFPS example - 
JernejL -  29.08.2010
Quote:
					Originally Posted by  Cank
 
 
nice, but how does it work? 
what does the drinlevel have to do with fps? 
 | 
 It has to do with how drinklevel is synced and decremented, drunk level decrements FPS amout each second, which is synced in that interval. 
Hiddos: 0.3b adds some new trick to help getting player fps in more precise manner.
Re: GetPlayerFPS example - 
MrDeath537 -  29.08.2010
Seriously, you're a genious...
I'm using it, thanks for tutorial.
Re: GetPlayerFPS example - 
Flake. -  30.08.2010
Quote:
					Originally Posted by  [XST]O_x
 
 
 | 
  haha nice i just made smth like this about a hour ago then look a look at the forums and saw this FS