Cum scap de boti cu reclame?

Discutii legate de instalarea, configurarea si modificarea unui server de Counter-Strike.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

User avatar
CsN^ ;x
Membru eXtream
Membru eXtream
Posts: 3560
Joined: 02 Apr 2012, 16:58
Detinator Steam: Nu
CS Status: Retras din domeniul Counter-Strike
Reputatie: Fost moderator
Location: Bucuresti
Has thanked: 797 times
Been thanked: 607 times

22 Apr 2015, 18:41

cyby wrote:Ai auto-join team?
Da am,am server mod deathrun si trebuie acel plugin :|
Addons HNS level,gravity,xp DOWNLOAD ( e țeapă)
https://5filme.com/ - un simplu site de filme pentru timpul liber
RoyalServer 2
User avatar
cyby
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1777
Joined: 16 Jul 2011, 21:46
Detinator Steam: Da
Detinator server CS: Da
Reputatie: Scripter eXtreamCS
Fost Moderator ajutator
Has thanked: 146 times
Been thanked: 396 times

22 Apr 2015, 18:47

Am facut un update minor, va rog sa reluati amxx-ul de sus cui trebuie.

@CsN - altfel nu am cum, baga automat botul la joc, asa il forteaza sa ramana spec.
93.114.82.17:27015 - Monster Invasion CO-OP Mod
User avatar
CsN^ ;x
Membru eXtream
Membru eXtream
Posts: 3560
Joined: 02 Apr 2012, 16:58
Detinator Steam: Nu
CS Status: Retras din domeniul Counter-Strike
Reputatie: Fost moderator
Location: Bucuresti
Has thanked: 797 times
Been thanked: 607 times

22 Apr 2015, 18:56

cyby wrote:Am facut un update minor, va rog sa reluati amxx-ul de sus cui trebuie.

@CsN - altfel nu am cum, baga automat botul la joc, asa il forteaza sa ramana spec.
Şi o altă metodă nu există...??Chiar am nevoie de o rezolvare şi eu că e plin logul cu reclamă.?
Addons HNS level,gravity,xp DOWNLOAD ( e țeapă)
https://5filme.com/ - un simplu site de filme pentru timpul liber
User avatar
cyby
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1777
Joined: 16 Jul 2011, 21:46
Detinator Steam: Da
Detinator server CS: Da
Reputatie: Scripter eXtreamCS
Fost Moderator ajutator
Has thanked: 146 times
Been thanked: 396 times

22 Apr 2015, 19:05

| Afiseaza codul
#include <amxmodx>

new const TAG[] = "[AMXX]";
new g_msg[33][192], g_msg_saytext, g_maxplayers, g_repeatmsg[33];

public plugin_init()
{
	register_plugin("Another Check Bot", "1.0", "cyby");
	
	register_clcmd("say", "check_say");
	register_clcmd("say_team", "check_say");
	
	g_msg_saytext = get_user_msgid("SayText");
	g_maxplayers = get_maxplayers();
}

public client_connect(id)
{
	if(fnGetSameIP(id) > 3)
		server_cmd("kick #%d ^"Nu pot intra 4 jucatori cu acelasi IP pe server!^"", get_user_userid(id));
}

public client_putinserver(id)
{
	formatex(g_msg[id], charsmax(g_msg[]), "");
	g_repeatmsg[id] = 0;
}

public check_say(id)
{
	static chat[192];
	read_argv(1, chat, charsmax(chat));
	if(strlen(chat) > 4)
	{
		if(equal(g_msg[id], chat))
		{
			g_repeatmsg[id]++
			color(id, ".v%s.g Te rugam sa nu mai repeti acelasi mesaj!");
			if(g_repeatmsg[id] == 4)
				kickbot(id);
			return PLUGIN_HANDLED;
		}
		if(equal(g_msg[id], ""))
			formatex(g_msg[id], charsmax(g_msg[]), "%s", chat);
	}
	g_repeatmsg[id] = 0;
	return PLUGIN_CONTINUE;
}

public kickbot(id)
{
	static name[32];
	get_user_name(id, name, charsmax(name));
	color(0, ".v%s.g Bot-ul.e %s.g a fost dat afara pentru spamchat.", TAG, name);
	server_cmd("kick #%d ^"Bot detectat^"", get_user_userid(id));
}

stock color(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, g_msg_saytext, _, players)
				write_byte(players)
				write_string(msg)
				message_end()
			}
		}
	}
}

public fnGetSameIP(id)
{
	static same_ip, ip[32], ip_from_player[32];
	get_user_ip(id, ip, charsmax(ip), 1);
	same_ip = 0;
	for(new x = 1; x <= g_maxplayers; x++)
	{
		if(!is_user_connected(x) || id == x)
			continue;
			
		get_user_ip(x, ip_from_player, charsmax(ip_from_player), 1);
		if(equal(ip, ip_from_player))
			same_ip++
	}
	return same_ip;
}


Doar primul mesaj e trimis pe chat, restul sunt blocate, iar la 4 mesaje similare out.
Tot primul plugin in lista.

AMXX-ul de mai sus si asta sunt 2 pluginuri total diferite, se folosesc de alte principii, daca n-aveti autojointeam vi-l recomand pe cel de sus.
93.114.82.17:27015 - Monster Invasion CO-OP Mod
Lux0R^
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1222
Joined: 13 Jul 2013, 16:31
Detinator Steam: Da
Reputatie: Scripter eXtreamCS
Moderator ajutator
Has thanked: 15 times
Been thanked: 12 times

23 Apr 2015, 02:06

cyby wrote:
| Afiseaza codul
#include <amxmodx>

new const TAG[] = "[AMXX]";
new g_msg[33][192], g_msg_saytext, g_maxplayers, g_repeatmsg[33];

public plugin_init()
{
	register_plugin("Another Check Bot", "1.0", "cyby");
	
	register_clcmd("say", "check_say");
	register_clcmd("say_team", "check_say");
	
	g_msg_saytext = get_user_msgid("SayText");
	g_maxplayers = get_maxplayers();
}

public client_connect(id)
{
	if(fnGetSameIP(id) > 3)
		server_cmd("kick #%d ^"Nu pot intra 4 jucatori cu acelasi IP pe server!^"", get_user_userid(id));
}

public client_putinserver(id)
{
	formatex(g_msg[id], charsmax(g_msg[]), "");
	g_repeatmsg[id] = 0;
}

public check_say(id)
{
	static chat[192];
	read_argv(1, chat, charsmax(chat));
	if(strlen(chat) > 4)
	{
		if(equal(g_msg[id], chat))
		{
			g_repeatmsg[id]++
			color(id, ".v%s.g Te rugam sa nu mai repeti acelasi mesaj!");
			if(g_repeatmsg[id] == 4)
				kickbot(id);
			return PLUGIN_HANDLED;
		}
		if(equal(g_msg[id], ""))
			formatex(g_msg[id], charsmax(g_msg[]), "%s", chat);
	}
	g_repeatmsg[id] = 0;
	return PLUGIN_CONTINUE;
}

public kickbot(id)
{
	static name[32];
	get_user_name(id, name, charsmax(name));
	color(0, ".v%s.g Bot-ul.e %s.g a fost dat afara pentru spamchat.", TAG, name);
	server_cmd("kick #%d ^"Bot detectat^"", get_user_userid(id));
}

stock color(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, g_msg_saytext, _, players)
				write_byte(players)
				write_string(msg)
				message_end()
			}
		}
	}
}

public fnGetSameIP(id)
{
	static same_ip, ip[32], ip_from_player[32];
	get_user_ip(id, ip, charsmax(ip), 1);
	same_ip = 0;
	for(new x = 1; x <= g_maxplayers; x++)
	{
		if(!is_user_connected(x) || id == x)
			continue;
			
		get_user_ip(x, ip_from_player, charsmax(ip_from_player), 1);
		if(equal(ip, ip_from_player))
			same_ip++
	}
	return same_ip;
}


Doar primul mesaj e trimis pe chat, restul sunt blocate, iar la 4 mesaje similare out.
Tot primul plugin in lista.

AMXX-ul de mai sus si asta sunt 2 pluginuri total diferite, se folosesc de alte principii, daca n-aveti autojointeam vi-l recomand pe cel de sus.



asta e aproximativ ceea ce am postat eu mai inainte din rom_protect, dar cum eu nu sunt "scripter extreamcs" nu prea am fost luat in seama, ce chestie :))
Pauza pana in iulie... licenta ^^

Fara pm-uri pentru pluginuri de zm/furien + tot ce tine de vip.

Codul Scripterului: scripting/codul-scripterului-t362300.html#p2754224
User avatar
cyby
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1777
Joined: 16 Jul 2011, 21:46
Detinator Steam: Da
Detinator server CS: Da
Reputatie: Scripter eXtreamCS
Fost Moderator ajutator
Has thanked: 146 times
Been thanked: 396 times

23 Apr 2015, 02:28

Lux0R^ wrote:
cyby wrote:
| Afiseaza codul
#include <amxmodx>

new const TAG[] = "[AMXX]";
new g_msg[33][192], g_msg_saytext, g_maxplayers, g_repeatmsg[33];

public plugin_init()
{
	register_plugin("Another Check Bot", "1.0", "cyby");
	
	register_clcmd("say", "check_say");
	register_clcmd("say_team", "check_say");
	
	g_msg_saytext = get_user_msgid("SayText");
	g_maxplayers = get_maxplayers();
}

public client_connect(id)
{
	if(fnGetSameIP(id) > 3)
		server_cmd("kick #%d ^"Nu pot intra 4 jucatori cu acelasi IP pe server!^"", get_user_userid(id));
}

public client_putinserver(id)
{
	formatex(g_msg[id], charsmax(g_msg[]), "");
	g_repeatmsg[id] = 0;
}

public check_say(id)
{
	static chat[192];
	read_argv(1, chat, charsmax(chat));
	if(strlen(chat) > 4)
	{
		if(equal(g_msg[id], chat))
		{
			g_repeatmsg[id]++
			color(id, ".v%s.g Te rugam sa nu mai repeti acelasi mesaj!");
			if(g_repeatmsg[id] == 4)
				kickbot(id);
			return PLUGIN_HANDLED;
		}
		if(equal(g_msg[id], ""))
			formatex(g_msg[id], charsmax(g_msg[]), "%s", chat);
	}
	g_repeatmsg[id] = 0;
	return PLUGIN_CONTINUE;
}

public kickbot(id)
{
	static name[32];
	get_user_name(id, name, charsmax(name));
	color(0, ".v%s.g Bot-ul.e %s.g a fost dat afara pentru spamchat.", TAG, name);
	server_cmd("kick #%d ^"Bot detectat^"", get_user_userid(id));
}

stock color(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, g_msg_saytext, _, players)
				write_byte(players)
				write_string(msg)
				message_end()
			}
		}
	}
}

public fnGetSameIP(id)
{
	static same_ip, ip[32], ip_from_player[32];
	get_user_ip(id, ip, charsmax(ip), 1);
	same_ip = 0;
	for(new x = 1; x <= g_maxplayers; x++)
	{
		if(!is_user_connected(x) || id == x)
			continue;
			
		get_user_ip(x, ip_from_player, charsmax(ip_from_player), 1);
		if(equal(ip, ip_from_player))
			same_ip++
	}
	return same_ip;
}


Doar primul mesaj e trimis pe chat, restul sunt blocate, iar la 4 mesaje similare out.
Tot primul plugin in lista.

AMXX-ul de mai sus si asta sunt 2 pluginuri total diferite, se folosesc de alte principii, daca n-aveti autojointeam vi-l recomand pe cel de sus.



asta e aproximativ ceea ce am postat eu mai inainte din rom_protect, dar cum eu nu sunt "scripter extreamcs" nu prea am fost luat in seama, ce chestie :))


Nici nu m-am uitat la ce ai postat tu tipule.
Nu cred ca esti singurul care te-ai gandit la asta.
Pentru cei care n-au auto join | Afiseaza codul
#include <amxmodx>

new g_msg_saytext, g_maxplayers;

new g_messages[33];

public plugin_init()
{
	register_plugin("Block FakePlayers", "1.0", "cyby");
	
	register_clcmd("say", "check_say");
	register_clcmd("jointeam", "block_jointeam");
	
	g_msg_saytext = get_user_msgid("SayText");
	g_maxplayers = get_maxplayers();
}

public client_connect(id)
{
	if(fnGetSameIP(id) > 3)
		server_cmd("kick #%d ^"Nu au voie mai multi de 3 jucatori cu acelasi IP!", get_user_userid(id));
}

public block_jointeam(id)
	return PLUGIN_HANDLED;

public client_putinserver(id)
{
	g_messages[id] = 0;
	if(!(get_user_flags(id) & ADMIN_SLAY))
	{
		set_user_info(id, "vgui_menus", "0");
		set_user_info(id, "_vgui_menus", "0");
	}
}

public check_say(id)
{
	if(get_user_team(id) == 0)
	{
		g_messages[id]++
		if(g_messages[id] > 3)
			kickBot(id);
			
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public kickBot(id)
{
	static name[32];
	get_user_name(id, name, charsmax(name));
	color(0, ".v[BFP].e %s.g a fost dat afara pentru spambot.", name);
	server_cmd("kick #%d ^"Bot pentru chat detectat^"", get_user_userid(id));
}

stock color(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, g_msg_saytext, _, players)
				write_byte(players)
				write_string(msg)
				message_end()
			}
		}
	}
}

public fnGetSameIP(id)
{
	static same_ip, ip[32], ip_from_player[32];
	get_user_ip(id, ip, charsmax(ip), 1);
	same_ip = 0;
	for(new x = 1; x <= g_maxplayers; x++)
	{
		if(!is_user_connected(x) || id == x)
			continue;
			
		get_user_ip(x, ip_from_player, charsmax(ip_from_player), 1);
		if(equal(ip, ip_from_player))
			same_ip++
	}
	return same_ip;
}

Si la asta m-am luat dupa tine?

Sau asta:
Recomand asta, da kick imediat ce s-a conectat pe server DOAR CELOR FARA AUTO JOINTEAM | Afiseaza codul
#include <amxmodx>

new bool:g_firstcommand[33];

public plugin_init()
	register_plugin("check console", "1.0", "cyby");
	
public client_command(id)
{
	if(!is_user_connected(id))
		return;
	
	if(!g_firstcommand[id])
	{
		static comanda[64], name[32];
		read_argv(0, comanda, charsmax(comanda));
		get_user_name(id, name, charsmax(name));
		if(containi(comanda, "jointeam") != -1)
			server_cmd("kick #%d ^"Nu acceptam boti de spam pe server.^"", get_user_userid(id));
		g_firstcommand[id] = true;
	}
}

public client_disconnect(id)
	g_firstcommand[id] = false;

public client_putinserver(id)
	g_firstcommand[id] = false;
93.114.82.17:27015 - Monster Invasion CO-OP Mod
User avatar
Carnacior
Membrul anului 2016
Membrul anului 2016
Posts: 1762
Joined: 23 Jun 2013, 14:08
Detinator Steam: Da
CS Status: I eat more pussy than cervical cancer
Detinator server CS: jb.b-zone.ro
SteamID: -
Reputatie: Fost Scripter eXtreamCS
Membrul anului 2016
Membru Club eXtreamCS (1 iul )
Location: Targu Mures
Has thanked: 5 times
Been thanked: 13 times
Contact:

23 Apr 2015, 08:47

ultima versiune de r4ge guard rezolva botii :meme
http://www.extreamcs.com/forum/anunturi ... l#p2216928
Ai nevoie de o protectie pentru server? R4GE Server Guard
Cel mai avansat si folosit plugin de protectie romanesc public! Nu ma crezi? VERIFICA


http://www.facebook.com/xyz.aron
Follow me for random bullshit and possibly interesting updates
Skype @ xyz_aron


Image
Lux0R^
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1222
Joined: 13 Jul 2013, 16:31
Detinator Steam: Da
Reputatie: Scripter eXtreamCS
Moderator ajutator
Has thanked: 15 times
Been thanked: 12 times

23 Apr 2015, 10:19

cyby wrote:
Lux0R^ wrote:
cyby wrote:
| Afiseaza codul
#include <amxmodx>

new const TAG[] = "[AMXX]";
new g_msg[33][192], g_msg_saytext, g_maxplayers, g_repeatmsg[33];

public plugin_init()
{
	register_plugin("Another Check Bot", "1.0", "cyby");
	
	register_clcmd("say", "check_say");
	register_clcmd("say_team", "check_say");
	
	g_msg_saytext = get_user_msgid("SayText");
	g_maxplayers = get_maxplayers();
}

public client_connect(id)
{
	if(fnGetSameIP(id) > 3)
		server_cmd("kick #%d ^"Nu pot intra 4 jucatori cu acelasi IP pe server!^"", get_user_userid(id));
}

public client_putinserver(id)
{
	formatex(g_msg[id], charsmax(g_msg[]), "");
	g_repeatmsg[id] = 0;
}

public check_say(id)
{
	static chat[192];
	read_argv(1, chat, charsmax(chat));
	if(strlen(chat) > 4)
	{
		if(equal(g_msg[id], chat))
		{
			g_repeatmsg[id]++
			color(id, ".v%s.g Te rugam sa nu mai repeti acelasi mesaj!");
			if(g_repeatmsg[id] == 4)
				kickbot(id);
			return PLUGIN_HANDLED;
		}
		if(equal(g_msg[id], ""))
			formatex(g_msg[id], charsmax(g_msg[]), "%s", chat);
	}
	g_repeatmsg[id] = 0;
	return PLUGIN_CONTINUE;
}

public kickbot(id)
{
	static name[32];
	get_user_name(id, name, charsmax(name));
	color(0, ".v%s.g Bot-ul.e %s.g a fost dat afara pentru spamchat.", TAG, name);
	server_cmd("kick #%d ^"Bot detectat^"", get_user_userid(id));
}

stock color(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, g_msg_saytext, _, players)
				write_byte(players)
				write_string(msg)
				message_end()
			}
		}
	}
}

public fnGetSameIP(id)
{
	static same_ip, ip[32], ip_from_player[32];
	get_user_ip(id, ip, charsmax(ip), 1);
	same_ip = 0;
	for(new x = 1; x <= g_maxplayers; x++)
	{
		if(!is_user_connected(x) || id == x)
			continue;
			
		get_user_ip(x, ip_from_player, charsmax(ip_from_player), 1);
		if(equal(ip, ip_from_player))
			same_ip++
	}
	return same_ip;
}


Doar primul mesaj e trimis pe chat, restul sunt blocate, iar la 4 mesaje similare out.
Tot primul plugin in lista.

AMXX-ul de mai sus si asta sunt 2 pluginuri total diferite, se folosesc de alte principii, daca n-aveti autojointeam vi-l recomand pe cel de sus.



asta e aproximativ ceea ce am postat eu mai inainte din rom_protect, dar cum eu nu sunt "scripter extreamcs" nu prea am fost luat in seama, ce chestie :))


Nici nu m-am uitat la ce ai postat tu tipule.
Nu cred ca esti singurul care te-ai gandit la asta.
Pentru cei care n-au auto join | Afiseaza codul
#include <amxmodx>

new g_msg_saytext, g_maxplayers;

new g_messages[33];

public plugin_init()
{
	register_plugin("Block FakePlayers", "1.0", "cyby");
	
	register_clcmd("say", "check_say");
	register_clcmd("jointeam", "block_jointeam");
	
	g_msg_saytext = get_user_msgid("SayText");
	g_maxplayers = get_maxplayers();
}

public client_connect(id)
{
	if(fnGetSameIP(id) > 3)
		server_cmd("kick #%d ^"Nu au voie mai multi de 3 jucatori cu acelasi IP!", get_user_userid(id));
}

public block_jointeam(id)
	return PLUGIN_HANDLED;

public client_putinserver(id)
{
	g_messages[id] = 0;
	if(!(get_user_flags(id) & ADMIN_SLAY))
	{
		set_user_info(id, "vgui_menus", "0");
		set_user_info(id, "_vgui_menus", "0");
	}
}

public check_say(id)
{
	if(get_user_team(id) == 0)
	{
		g_messages[id]++
		if(g_messages[id] > 3)
			kickBot(id);
			
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public kickBot(id)
{
	static name[32];
	get_user_name(id, name, charsmax(name));
	color(0, ".v[BFP].e %s.g a fost dat afara pentru spambot.", name);
	server_cmd("kick #%d ^"Bot pentru chat detectat^"", get_user_userid(id));
}

stock color(const id, const input[], any:...)
{
	new count = 1, players[32];
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, g_msg_saytext, _, players)
				write_byte(players)
				write_string(msg)
				message_end()
			}
		}
	}
}

public fnGetSameIP(id)
{
	static same_ip, ip[32], ip_from_player[32];
	get_user_ip(id, ip, charsmax(ip), 1);
	same_ip = 0;
	for(new x = 1; x <= g_maxplayers; x++)
	{
		if(!is_user_connected(x) || id == x)
			continue;
			
		get_user_ip(x, ip_from_player, charsmax(ip_from_player), 1);
		if(equal(ip, ip_from_player))
			same_ip++
	}
	return same_ip;
}

Si la asta m-am luat dupa tine?

Sau asta:
Recomand asta, da kick imediat ce s-a conectat pe server DOAR CELOR FARA AUTO JOINTEAM | Afiseaza codul
#include <amxmodx>

new bool:g_firstcommand[33];

public plugin_init()
	register_plugin("check console", "1.0", "cyby");
	
public client_command(id)
{
	if(!is_user_connected(id))
		return;
	
	if(!g_firstcommand[id])
	{
		static comanda[64], name[32];
		read_argv(0, comanda, charsmax(comanda));
		get_user_name(id, name, charsmax(name));
		if(containi(comanda, "jointeam") != -1)
			server_cmd("kick #%d ^"Nu acceptam boti de spam pe server.^"", get_user_userid(id));
		g_firstcommand[id] = true;
	}
}

public client_disconnect(id)
	g_firstcommand[id] = false;

public client_putinserver(id)
	g_firstcommand[id] = false;


nu am zis nimic de tine, ziceam de csn, ca degeaba i-am dat ceva de genul, ca tot dupa tine a asteptat
ps : daca citesti bine o sa vezi ca nu am zis nimic de tine, putina atentie ca eu nu caut cearta, mai ales nu cu cei care merita respect :)
Pauza pana in iulie... licenta ^^

Fara pm-uri pentru pluginuri de zm/furien + tot ce tine de vip.

Codul Scripterului: scripting/codul-scripterului-t362300.html#p2754224
User avatar
cyby
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1777
Joined: 16 Jul 2011, 21:46
Detinator Steam: Da
Detinator server CS: Da
Reputatie: Scripter eXtreamCS
Fost Moderator ajutator
Has thanked: 146 times
Been thanked: 396 times

23 Apr 2015, 14:42

Omul a cerut sa scape doar de boti, nu o protectie intreaga :)
93.114.82.17:27015 - Monster Invasion CO-OP Mod
Lux0R^
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 1222
Joined: 13 Jul 2013, 16:31
Detinator Steam: Da
Reputatie: Scripter eXtreamCS
Moderator ajutator
Has thanked: 15 times
Been thanked: 12 times

23 Apr 2015, 19:02

cyby wrote:Omul a cerut sa scape doar de boti, nu o protectie intreaga :)
pai nu am zis sa ia protectia, am zis sa extraga algoritm-ul

nu mai continui ca o dau in off :D>-
Pauza pana in iulie... licenta ^^

Fara pm-uri pentru pluginuri de zm/furien + tot ce tine de vip.

Codul Scripterului: scripting/codul-scripterului-t362300.html#p2754224
TheDark123
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 215
Joined: 11 Sep 2014, 14:53
Detinator Steam: Da
CS Status: Caut Membrii in clanu *SoMeTimeS*
Fond eXtream: 0
Contact:

30 Jul 2015, 01:31

cyby wrote:
| Afiseaza codul
#include <amxmodx>

#define TASK_ID 12939
#define g_max_ips 2
new g_maxplayers;

new bool:g_valid_player[33];

new const reclame[][] =
{
	".ro",
	":27015",
	".com",
	".net",
	".info",
	"furien.",
	"furien .",
	"furien[.]"
}

public plugin_init()
{
	register_plugin("Anti-Bots", "1.0", "cyby");
	
	register_clcmd("say", "check_ads");
	register_clcmd("say_team", "check_ads");
	
	g_maxplayers = get_maxplayers();
}

public client_putinserver(id)
{
	g_valid_player[id] = false;
	set_task(6.0, "set_valid_player", id+TASK_ID);
	if(get_players_sameip(id) >= g_max_ips)
		server_cmd("kick #%d ^"Nu aveti voie %d jucatori cu acelasi IP.^"", get_user_userid(id), g_max_ips);
}

public set_valid_player(id)
{
	id -= TASK_ID;
	if(!is_user_connected(id))
		return;
	
	g_valid_player[id] = true;
}

public client_disconnect(id)
{
	if(task_exists(id+TASK_ID))
		remove_task(id+TASK_ID);
		
	g_valid_player[id] = false;
}

public check_ads(id)
{
	if(!g_valid_player[id])
		return PLUGIN_HANDLED;
	
	static chat[192];
	read_argv(1, chat, charsmax(chat))
	if(!chat[0])
		return PLUGIN_CONTINUE;

	for(new i = 0; i < sizeof reclame; i++)
	{
		if(contain(chat, reclame))
			return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

get_players_sameip(id)
{
	static my_ip[35], another_ip[35], max_ips;
	get_user_ip(id, my_ip, charsmax(my_ip), 1);
	max_ips = 0;
	for(new i = 1; i <= g_maxplayers; i++)
	{
		if(!is_user_connected(i) || i == id)
			continue;
		
		get_user_ip(i, another_ip, charsmax(another_ip), 1);
		if(equal(my_ip, another_ip))
			max_ips++
	}
	return max_ips;
}


Nu lasa 2 jucatori cu acelasi IP.

functioneaza asa cred mersi ^:)^
Post Reply

Return to “Probleme la servere dedicate de Counter-Strike”

  • Information
  • Who is online

    Users browsing this forum: Dot [Bot] and 97 guests