PDA

View Full Version : Automatic Lowrate Fixxer


Stylaa
06-24-2010, 03:53
Heres my Plugin ( Edit of the Rate Checker )

What i have done Wrong ?
It dont work :)
Nothing happens ingame when i set the Rate to example 2000



#include < amxmodx >
#include < amxmisc >
#include < engine >
#include < cstrike >
#include < fun >
#include < fakemeta >
#include < hamsandwich >

#define PLUGIN "Lowrate Fixxer"
#define VERSION "1.00"
#define AUTHOR "Stylaa"
#define AUTHOR_ICQ "797-081"

forward GlobalTimer();

// - // - // - // - // - // - // - //

new minrate, maxrate, mincmdrate, maxcmdrate, minupdaterate,maxupdaterate,mininterp, maxinterp;
new g_rateon, g_updaterateon, g_cmdrateon, g_interpon, g_minmodelon, minmodelforce;

enum pInfo // Plugin Store Data
{
pConnected,
pName[32],
pRate[32],
pCMDRate[32],
pUpdateRate[32],
pSteamID[35],
pinterp[32],
pminmodels[32],

pDetectedRate[32],
pDetectedCmdRate[32],
pDetectedUpdateRate[32],
pDetectedInterp[32],
pDetectedMinModels[32],
};
new PluginInfo[32][pInfo];
new num
new players[32];

// - // - // - // - // - // - // - //

public plugin_init()
{
register_plugin( PLUGIN, VERSION, AUTHOR );
register_cvar( "lowrateforcer_version", VERSION, FCVAR_SERVER | FCVAR_SPONLY );

// Rate
g_rateon =register_cvar("lr_rateon","1")
minrate =register_cvar("lr_minrate","20000")
maxrate =register_cvar("lr_maxrate","25000")
// Cmdrate
g_cmdrateon =register_cvar("lr_cmdrateon","1")
mincmdrate =register_cvar("lr_mincmdrate","99")
maxcmdrate =register_cvar("lr_maxcmdrate","101")
// Update Rate
g_updaterateon =register_cvar("lr_updaterateon","1")
minupdaterate =register_cvar("lr_minupdaterate","99")
maxupdaterate =register_cvar("lr_maxupdaterate","101")
// Interp
g_interpon =register_cvar("lr_checkinterp","1")
mininterp =register_cvar("lr_mininterp","0.09")
maxinterp =register_cvar("lr_maxinterp","0.1")
// Minmodels
g_minmodelon =register_cvar("lr_minmodelcheck","1")
minmodelforce =register_cvar("lr_setminmodelsto","0")


set_task( 3.0, "GlobalTimer", _, _, _, "b" )

return PLUGIN_CONTINUE
}

public GlobalTimer()
{
//Get Number of players in the server
get_players(players,num,"c")
//Loop for all players and retrieve rate info
for (new i[1] = 0; i[0] < num; ++i[0]) {

PluginInfo[num][pDetectedRate] = 0;
PluginInfo[num][pDetectedCmdRate] = 0;
PluginInfo[num][pDetectedUpdateRate] = 0;
PluginInfo[num][pDetectedInterp] = 0;
PluginInfo[num][pDetectedMinModels] = 0;

get_user_name(players[num],PluginInfo[num][pName], 31)
get_user_authid(players[num], PluginInfo[num][pSteamID], 34);
get_user_info(players[num], "rate", PluginInfo[num][pRate], 31)
get_user_info(players[num], "cl_updaterate", PluginInfo[num][pUpdateRate], 31)


query_client_cvar(players[i[0]],"cl_cmdrate","cmdrate_result_func",1,i)
query_client_cvar(players[i[0]],"ex_interp","interp_result_func",1,i)
query_client_cvar(players[i[0]],"cl_minmodels","minmodel_result_func",1,i)


if(PluginInfo[num][pRate] >= maxrate || PluginInfo[num][pRate] <= minrate)
{
if(g_rateon == 1)
{
PluginInfo[num][pDetectedRate] = 1;
}
}

if(PluginInfo[num][pCMDRate] >= maxcmdrate || PluginInfo[num][pCMDRate] <= mincmdrate)
{
if(g_cmdrateon == 1)
{
PluginInfo[num][pDetectedCmdRate] = 1;
}
}

if(PluginInfo[num][pUpdateRate] >= maxupdaterate || PluginInfo[num][pUpdateRate] <= minupdaterate)
{
if(g_updaterateon == 1)
{
PluginInfo[num][pDetectedUpdateRate] = 1;
}
}

if(PluginInfo[num][pinterp] >= maxinterp || PluginInfo[num][pinterp] <= mininterp)
{
if(g_interpon == 1)
{
PluginInfo[num][pDetectedInterp] = 1;
}
}

if(g_minmodelon == 1 && PluginInfo[num][pminmodels] != minmodelforce)
{
PluginInfo[num][pDetectedMinModels] = 1;
}

if(PluginInfo[num][pDetectedRate] == 1 || PluginInfo[num][pDetectedCmdRate] == 1 || PluginInfo[num][pDetectedUpdateRate] == 1 || PluginInfo[num][pDetectedInterp] == 1 || PluginInfo[num][pDetectedMinModels] == 1)
{
client_print(0,print_chat,"---> Lowrates of %s<---", PluginInfo[num][pName])

if(PluginInfo[num][pDetectedRate] == 1)
{
client_print(0,print_chat,"-> Rate : %d set to %d", PluginInfo[num][pRate], maxrate)
client_cmd(num, "rate %d", maxrate)
}

if(PluginInfo[num][pDetectedCmdRate] == 1)
{
client_print(0,print_chat,"-> Cmd-Rate : %d set to %d", PluginInfo[num][pCMDRate], maxcmdrate)
client_cmd(num, "cl_cmdrate %d", maxcmdrate)
}

if(PluginInfo[num][pDetectedUpdateRate] == 1)
{
client_print(0,print_chat,"-> Update-Rate : %d set to %d", PluginInfo[num][pUpdateRate], maxupdaterate)
client_cmd(num, "cl_updaterate %d", maxupdaterate)
}

if(PluginInfo[num][pDetectedUpdateRate] == 1)
{
client_print(0,print_chat,"-> eX-Interp : %d set to %d", PluginInfo[num][pinterp], maxinterp)
client_cmd(num, "ex_interp %d", maxinterp)
}

if(PluginInfo[num][pDetectedUpdateRate] == 1)
{
client_print(0,print_chat,"-> cl_minmodels : %d set to %d", PluginInfo[num][pminmodels], maxinterp)
client_cmd(num, "cl_minmodels %d", minmodelforce)
}

}

}

}


public cmdrate_result_func(id,const cvar[],const value[],const param[])
{
copy(PluginInfo[id][pCMDRate][param[0]],31,value)
}

public interp_result_func(id,const cvar[],const value[], const param[])
{
copy(PluginInfo[id][pinterp][param[0]],31,value)
}

public minmodel_result_func(id,const cvar[],const value[], const param[])
{
copy(PluginInfo[id][pminmodels][param[0]],31,value)
}

BLANCIKJOINT_
02-13-2014, 03:55
L 02/13/2014 - 09:30:00: Invalid player id 0
L 02/13/2014 - 09:30:00: [AMXX] Displaying debug trace (plugin "rate_new2.amxx")
L 02/13/2014 - 09:30:00: [AMXX] Run time error 10: native error (native "get_user_info")
L 02/13/2014 - 09:30:00: [AMXX] [0] rate_new2.sma::GlobalTimer (line 90)

JusTGo
02-13-2014, 12:42
you should check if player connected

fysiks
02-13-2014, 12:52
This plugin will not work and is horrible concept to begin with, aka it wouldn't work if it was even possible to run.