Имунитет само от банове

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
EMOTO2.COM
Извън линия
Потребител
Потребител
Мнения: 345
Регистриран на: 11 Яну 2018, 17:02
Се отблагодари: 26 пъти
Получена благодарност: 31 пъти
Обратна връзка:

Имунитет само от банове

Мнение от EMOTO2.COM » 12 Юни 2022, 17:58

Здравейте, мислих всякакви вариянти но незнам как би се получило. Трябва ми някакъв вариянт/метод/плугин с който мога да направя така, че определен ник или айпи адрес на играч да неможе да получава бан от админи но същите админи да могат да го кикват, слайват и тн?
Присъедини се към най-доброто място за игра!
https://emoto2.com/

Аватар
SmirnoffBG
Извън линия
Потребител
Потребител
Мнения: 267
Регистриран на: 27 Ное 2016, 19:43
Местоположение: nz
Се отблагодари: 77 пъти
Получена благодарност: 38 пъти
Обратна връзка:

Имунитет само от банове

Мнение от SmirnoffBG » 12 Юни 2022, 18:05

тряя просто да едитнеш бан системата и в нея ако знаеш как да спреш просто бана
или по заобиколното, да се направи плъгин, който ще е над бана и ще проверява всички бан команди за тая с твоито ип и ако някой я е написал да я спира, но от ся ти казвам аз няма да го правя тва :д
El-Super Respawn = 87.121.54.85:27016
BG Trewa Respawn = 91.92.137.205:27015

Аватар
EMOTO2.COM
Извън линия
Потребител
Потребител
Мнения: 345
Регистриран на: 11 Яну 2018, 17:02
Се отблагодари: 26 пъти
Получена благодарност: 31 пъти
Обратна връзка:

Имунитет само от банове

Мнение от EMOTO2.COM » 12 Юни 2022, 21:41

То няма бан системи, ползва се amx_banmenu и amx_banip от админите само. Аз знам какво и как да спирам но невиждам вариянт да стане така както го искам без редакции примерно по имунитета?
Присъедини се към най-доброто място за игра!
https://emoto2.com/

Аватар
zolfeca
Извън линия
Администратор
Администратор
Мнения: 417
Регистриран на: 10 Окт 2016, 23:48
Се отблагодари: 24 пъти
Получена благодарност: 92 пъти

Имунитет само от банове

Мнение от zolfeca » 12 Юни 2022, 21:59

Няма нужда от друг плъгин, а да се редактира текущия плъгин, който се ползва за бановете. Прави се една проверка по ник/ип и това е.

Аватар
EMOTO2.COM
Извън линия
Потребител
Потребител
Мнения: 345
Регистриран на: 11 Яну 2018, 17:02
Се отблагодари: 26 пъти
Получена благодарност: 31 пъти
Обратна връзка:

Имунитет само от банове

Мнение от EMOTO2.COM » 12 Юни 2022, 22:12

Хмм трябва да се получи.

Код за потвърждение: Избери целия код

public actionBanMenu(id, key)
{
	switch (key)
	{
		case 7:
		{
			
			++g_menuOption[id]
			g_menuOption[id] %= ArraySize(g_bantimes);

			g_menuSettings[id] = ArrayGetCell(g_bantimes, g_menuOption[id]);

			displayBanMenu(id, g_menuPosition[id])
		}
		case 8: displayBanMenu(id, ++g_menuPosition[id])
		case 9: displayBanMenu(id, --g_menuPosition[id])
		default:
		{
			new player = g_menuPlayers[id][g_menuPosition[id] * 7 + key]
			new name[32], name2[32], authid[32], authid2[32]
		
			get_user_name(player, name2, 31)
			get_user_authid(id, authid, 31)
			get_user_authid(player, authid2, 31)
			get_user_name(id, name, 31)
			
			new userid2 = get_user_userid(player)

			log_amx("Ban: ^"%s<%d><%s><>^" ban and kick ^"%s<%d><%s><>^" (minutes ^"%d^")", name, get_user_userid(id), authid, name2, userid2, authid2, g_menuSettings[id])

			if (g_menuSettings[id]==0)
			{
				new maxpl = get_maxplayers();
				for (new i = 1; i <= maxpl; i++)
				{
					show_activity_id(i, id, name, "%L %s %L", i, "BAN", name2, i, "PERM");
				}
			}
			else
			{
				new tempTime[32];
				formatex(tempTime,sizeof(tempTime)-1,"%d",g_menuSettings[id]);
				new maxpl = get_maxplayers();
				for (new i = 1; i <= maxpl; i++)
				{
					show_activity_id(i, id, name, "%L %s %L", i, "BAN", name2, i, "FOR_MIN", tempTime);
				}
			}
			
			if (equal("4294967295", authid2)
				|| equal("HLTV", authid2)
				|| equal("STEAM_ID_LAN", authid2)
				|| equali("VALVE_ID_LAN", authid2))
			{
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}
			else
			{
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}

			server_exec()

			displayBanMenu(id, g_menuPosition[id])
		}
	}
	
	return PLUGIN_HANDLED
}
Това е кода за бан менюто (amx_banmenu команда)
А това е кода за amx_banip командата:

Код за потвърждение: Избери целия код

public cmdBanIP(id, level, cid)
{
	if (!cmd_access(id, level, cid, 3))
		return PLUGIN_HANDLED
	
	new target[32], minutes[8], reason[64]
	
	read_argv(1, target, 31)
	read_argv(2, minutes, 7)
	read_argv(3, reason, 63)
	
	new player = cmd_target(id, target, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS | CMDTARGET_ALLOW_SELF)
	
	if (!player)
	{
		return PLUGIN_HANDLED
	}
	
	new authid[32], name2[32], authid2[32], name[32], hostname[64], ip[32]
	new userid2 = get_user_userid(player)

	get_user_authid(player, authid2, 31)
	get_user_authid(id, authid, 31)
	get_user_name(player, name2, 31)
	get_user_name(id, name, 31)
	get_user_name(0, hostname, 63)
	get_user_ip(player, ip, 31)
	
	new timer[64]
	
	get_time("%H:%M:%S Date: %d/%m/%Y", timer, 63)
	
	log_amx("Ban: ^"%s<%d><%s><>^" ban and kick ^"%s<%d><%s><>^" (minutes ^"%s^") (reason ^"%s^")", name, get_user_userid(id), authid, name2, userid2, authid2, minutes, reason)

	new temp[64], banned[16], nNum = str_to_num(minutes)
	if (nNum)
		format(temp, 63, "%L", player, "FOR_MIN", minutes)
	else
		format(temp, 63, "%L", player, "PERM")
	format(banned, 15, "%L", player, "BANNED")

	new address[32]
	get_user_ip(player, address, 31, 1)

	if (reason[0])
		server_cmd("kick #%d ^"%s (%s %s)^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, reason, banned, temp, minutes, address)
	else
		server_cmd("kick #%d ^"%s %s^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, banned, temp, minutes, address)
	
	client_cmd(player, "echo ^n")
	client_cmd(player, "echo ======================================================")
	client_cmd(player, "echo |EMOTO2.COM| Banned from: ^"%s^"", hostname)
	client_cmd(player, "echo |EMOTO2.COM| Nick: ^"%s^" | IP: %s", name2, ip)
	client_cmd(player, "echo |EMOTO2.COM| Ban from admin: ^"%s^"", name)
	client_cmd(player, "echo |EMOTO2.COM| Time: %s", timer)
	if (strlen(reason) > 0)
	{
		client_cmd(player, "echo |EMOTO2.COM| Reason: ^"%s^"", reason)
		client_cmd(player, "echo |EMOTO2.COM| Ban time: ^"%s^"", temp)
	}
	else
	{
		client_cmd(player, "echo |EMOTO2.COM| Reason: No reason typed")
		client_cmd(player, "echo |EMOTO2.COM| Ban time: ^"%s^"", temp)
	}
	client_cmd(player,"echo |EMOTO2.COM| For unban write in skype: emoto2.com")
	client_cmd(player,"echo ======================================================^n")
	
	switch(get_cvar_num("amx_show_activity"))
	{
		case 1:
		{
			ColorMessage(0, "^x04[EMOTO2.COM]^x01 Player^x03 %s^x01 has been banned by an admin.", name2)
			
			if (strlen(reason) > 0)
			{
				set_hudmessage(0, 255, 0, 0.05, 0.30, 0, 6.0, 12.0, 0.1, 0.2, 10);
				ShowSyncHudMsg(0, HudSync, "%s has been banned!^nBan time: %s.^nReason: %s", name2, temp, reason)
			}
			else
			{
				set_hudmessage(0, 255, 0, 0.05, 0.30, 0, 6.0, 12.0, 0.1, 0.2, 10);
				ShowSyncHudMsg(0, HudSync, "%s has been banned!^nBan time: %s.^nWithout reason.", name2, temp)
			}
		}
		case 2:
		{
			ColorMessage(0, "^x04[EMOTO2.COM]^x01 Player^x03 %s^x01 has been banned by^x03 %s^x01.", name2, name)
			
			if (strlen(reason) > 0)
			{
				set_hudmessage(0, 255, 0, 0.05, 0.30, 0, 6.0, 12.0, 0.1, 0.2, 10);
				ShowSyncHudMsg(0, HudSync, "%s has been banned!^nBan time: %s.^nBy admin: %s.^nReason: %s", name2, temp, name, reason)
			}
			else
			{
				set_hudmessage(0, 255, 0, 0.05, 0.30, 0, 6.0, 12.0, 0.1, 0.2, 10);
				ShowSyncHudMsg(0, HudSync, "%s has been banned!^nBan time: %s.^nBy admin: %s.^nWithout reason.", name2, temp, name)
			}
		}
	}
	
	return PLUGIN_HANDLED
}
Ако може да я добавиш тази проверка за ип-та или никове на играчи и кода да е за 1.8.2 версия на мода.
Присъедини се към най-доброто място за игра!
https://emoto2.com/

Аватар
devilchy
Извън линия
Потребител
Потребител
Мнения: 223
Регистриран на: 03 Фев 2017, 14:08
Местоположение: Burgas
Се отблагодари: 3 пъти
Получена благодарност: 6 пъти
Обратна връзка:

Имунитет само от банове

Мнение от devilchy » 13 Юни 2022, 15:58

За слай/слап не знам но админите ти могат да кикват човека дори и със имунитед просто командата е amx_addkick "nick" :)

Аватар
devilchy
Извън линия
Потребител
Потребител
Мнения: 223
Регистриран на: 03 Фев 2017, 14:08
Местоположение: Burgas
Се отблагодари: 3 пъти
Получена благодарност: 6 пъти
Обратна връзка:

Имунитет само от банове

Мнение от devilchy » 14 Юни 2022, 01:45

Ето ти кода тествай на 28 ред пишеш стийм ид то на играча който не искаш да го лови банът, ник и ип не го намирам за читаво ип то се сменя постоянно и ник ако някой хакер смени ника на този който няма бана да го лови ще си имаш проблеми за това го направих със стийм ид, не съм го тествал виж дали става ако има проблем кажи

Код за потвърждение: Избери целия код

public actionBanMenu(id, key)
{
	switch (key)
	{
		case 7:
		{
			
			++g_menuOption[id]
			g_menuOption[id] %= ArraySize(g_bantimes);

			g_menuSettings[id] = ArrayGetCell(g_bantimes, g_menuOption[id]);

			displayBanMenu(id, g_menuPosition[id])
		}
		case 8: displayBanMenu(id, ++g_menuPosition[id])
		case 9: displayBanMenu(id, --g_menuPosition[id])
		default:
		{
			new player = g_menuPlayers[id][g_menuPosition[id] * 7 + key]
			new name[32], name2[32], authid[32], authid2[32]
		
			get_user_name(player, name2, 31)
			get_user_authid(id, authid, 31)
			get_user_authid(player, authid2, 31)
			get_user_name(id, name, 31)
			

       if(equali("TYK PISHI STEAM ID !", authid2){
           return;

       }
			new userid2 = get_user_userid(player)

			log_amx("Ban: ^"%s<%d><%s><>^" ban and kick ^"%s<%d><%s><>^" (minutes ^"%d^")", name, get_user_userid(id), authid, name2, userid2, authid2, g_menuSettings[id])

			if (g_menuSettings[id]==0)
			{
				new maxpl = get_maxplayers();
				for (new i = 1; i <= maxpl; i++)
				{
					show_activity_id(i, id, name, "%L %s %L", i, "BAN", name2, i, "PERM");
				}
			}
			else
			{
				new tempTime[32];
				formatex(tempTime,sizeof(tempTime)-1,"%d",g_menuSettings[id]);
				new maxpl = get_maxplayers();
				for (new i = 1; i <= maxpl; i++)
				{
					show_activity_id(i, id, name, "%L %s %L", i, "BAN", name2, i, "FOR_MIN", tempTime);
				}
			}
			
			if (equal("4294967295", authid2)
				|| equal("HLTV", authid2)
				|| equal("STEAM_ID_LAN", authid2)
				|| equali("VALVE_ID_LAN", authid2))
			{
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}
			else
			{
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}

			server_exec()

			displayBanMenu(id, g_menuPosition[id])
		}
	}
	
	return PLUGIN_HANDLED
}
едитвам си мнението и ти предоставям кода също така и със ип но не ти го предлагам !

Код за потвърждение: Избери целия код

public actionBanMenu(id, key)
{
	switch (key)
	{
		case 7:
		{
			
			++g_menuOption[id]
			g_menuOption[id] %= ArraySize(g_bantimes);

			g_menuSettings[id] = ArrayGetCell(g_bantimes, g_menuOption[id]);

			displayBanMenu(id, g_menuPosition[id])
		}
		case 8: displayBanMenu(id, ++g_menuPosition[id])
		case 9: displayBanMenu(id, --g_menuPosition[id])
		default:
		{
			new player = g_menuPlayers[id][g_menuPosition[id] * 7 + key]
			new name[32], name2[32], authid[32], authid2[32]
		
			get_user_name(player, name2, 31)
			get_user_authid(id, authid, 31)
			get_user_authid(player, authid2, 31)
			get_user_name(id, name, 31)
        new ip2[32]
		   get_user_ip(player, ip2, 31, 1);
			

       if(equali("TYK PISHI IP !", ip2){
           return;

       }
			new userid2 = get_user_userid(player)

			log_amx("Ban: ^"%s<%d><%s><>^" ban and kick ^"%s<%d><%s><>^" (minutes ^"%d^")", name, get_user_userid(id), authid, name2, userid2, authid2, g_menuSettings[id])

			if (g_menuSettings[id]==0)
			{
				new maxpl = get_maxplayers();
				for (new i = 1; i <= maxpl; i++)
				{
					show_activity_id(i, id, name, "%L %s %L", i, "BAN", name2, i, "PERM");
				}
			}
			else
			{
				new tempTime[32];
				formatex(tempTime,sizeof(tempTime)-1,"%d",g_menuSettings[id]);
				new maxpl = get_maxplayers();
				for (new i = 1; i <= maxpl; i++)
				{
					show_activity_id(i, id, name, "%L %s %L", i, "BAN", name2, i, "FOR_MIN", tempTime);
				}
			}
			
			if (equal("4294967295", authid2)
				|| equal("HLTV", authid2)
				|| equal("STEAM_ID_LAN", authid2)
				|| equali("VALVE_ID_LAN", authid2))
			{
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}
			else
			{
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}

			server_exec()

			displayBanMenu(id, g_menuPosition[id])
		}
	}
	
	return PLUGIN_HANDLED
}

Аватар
EMOTO2.COM
Извън линия
Потребител
Потребител
Мнения: 345
Регистриран на: 11 Яну 2018, 17:02
Се отблагодари: 26 пъти
Получена благодарност: 31 пъти
Обратна връзка:

Имунитет само от банове

Мнение от EMOTO2.COM » 14 Юни 2022, 06:32

Тествах втория код но неможе да се компилира...
warning 217: loose indentation
warning 217: loose indentation
warning 217: loose indentation
error 001: expected token: ")", but found "{"
warning 209: function "actionBanMenu" should return a value
warning 217: loose indentation
error 078: function uses both "return" and "return <value>"
Присъедини се към най-доброто място за игра!
https://emoto2.com/


Аватар
devilchy
Извън линия
Потребител
Потребител
Мнения: 223
Регистриран на: 03 Фев 2017, 14:08
Местоположение: Burgas
Се отблагодари: 3 пъти
Получена благодарност: 6 пъти
Обратна връзка:

Имунитет само от банове

Мнение от devilchy » 14 Юни 2022, 22:44

Ти си ми дал само кода за Менюто как искаш да го компилираш xD

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 26 госта