BANNED
|
04-05-2017
, 18:02
Edite plugin to make kick=banip
|
#1
|
Hello, i'm making new protection plugin by adding many plugins in one but i have a litle bit problem , i need to Change this plugin from kick client to banip client , is any body can Solve this with no errors & no warnings ?
Quote:
/*
Simple plugin to detect hlds buffer v1,v2,v3,v3 patched
[*] The method is pretty easy, the fake player sent doesn't have enough information, you can check it using rcon user
So he have 7 information which is not normal at all. " I CAN'T EXPLAIN VERY WELL xD SO PLEASE TAKE A LOOK AT THE CODE "
(c) Spawner aka Freezo ( Any bug, reply here : [fDetector-Hlds] Anti Hlds buffer v2,v3,v3 patched [0.1] )
|^_^|
- Anass
*/
#include <amxmodx>
#include <amxmisc>
#include <orpheu>
enum PData
{
ItemType[ 31 ],
ItemValue[ 31 ]
}
new iCount[33];
new get[ 600 ];
new iItem , iItemType , PlayerData[ 20 ][ PData ];
public plugin_init()
{
register_plugin(
"Freezo aka Spawner",
"0.1",
"[fHlds-Detector] v2,v3,v3(patched v4)"
)
register_cvar("anti_hldsbuffer", "0.1" , FCVAR_SERVER | FCVAR_SPONLY )
}
public client_connect(id)
{
new szSteamid[33]
get_user_authid(id ,szSteamid, charsmax(szSteamid))
if(equal(szSteamid,"STEAM_ID_LAN") || equal(szSteamid, "VALVE_ID_LAN") || is_user_steam(id) )return PLUGIN_HANDLED;
iCount[id] = 0;
iItemType = 0;
iItem = 0;
new OrpheuHook:handlePrintf = OrpheuRegisterHook( OrpheuGetFunction( "Con_Printf" ), "Con_Printf" );
new szName[32]
get_user_name(id, szName,charsmax(szName))
server_cmd( "user ^"%s^"",szName );
server_exec();
OrpheuUnregisterHook( handlePrintf );
for ( new i = 0 ; i < iItem ; i++ ) iCount[id]++;
if(iCount[id] == 7){
new sIp[32];
get_user_ip(id, sIp, charsmax(sIp), 1);
server_cmd("kick #%d ^"|| fHlds-Detector || Hlds Buffer Detected^"", get_user_userid(id));
log_to_file("hldsBuffer.txt", "[ fHlds-Detector ][Name=%s][STEAMID=%s][IP=%s]",szName, szSteamid, sIp);
iCount[id] = 0;
}
return PLUGIN_CONTINUE;
}
public OrpheuHookReturn:Con_Printf( const fmtGet[], const msgGet[] )
{
formatex( get , charsmax( get ) , "%s" , msgGet )
if ( iItemType == 0 )
{
copy( PlayerData[ iItem ][ ItemType ] , charsmax( PlayerData[][ ItemType ] ) , get );
iItemType = 1;
}
else
{
copy( PlayerData[ iItem++ ][ ItemValue ] , charsmax( PlayerData[][ ItemType ] ) , get );
iItemType = 0;
}
return OrpheuSupercede;
}
// Credits to an unknow author
stock bool:is_user_steam(id)
{
static dp_pointer;
if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
{
server_cmd("dp_clientinfo %d", id);
server_exec();
return (get_pcvar_num(dp_pointer) == 2) ? true : false;
}
return false;
}
|
[PS]this is only part of the plugin
i'm making this web site for THIS plugin
i will post it here soon
|
|