Anti No-Flash

Неодобрените плъгини биват прехвърляни в този раздел. Не препоръчваме да ги ползвате, тъй като най-вероятно съдържат бъгове или същестуват такива плъгини, които вършат по-добра работа от тези тук.
Аватар
4hazard
Извън линия
Потребител
Потребител
Мнения: 11
Регистриран на: 05 Ное 2016, 19:48
Получена благодарност: 3 пъти

Anti No-Flash

Мнение от 4hazard » 06 Ное 2016, 11:29

Aвтop: Rul4

Oпиcaниe: Toвa e мнoгo пpocт плъгин, ĸoйтo нaмaля пpeимyщecтвoтo xaĸepитe дa изпoлзвaт nо-flаѕh xaĸoвe. Kapa дpyгитe игpaчи дa изчeзнaт, ĸoгaтo игpaчa e нaпълнo флaшнaт, тoзи плъгин имa пoдoбeн eфeĸт пpи тeзи, ĸoитo изпoлзвaт xaĸoвe и тeзи, ĸoитo нe изпoлзвaт: тe нe знaят ĸъдe ca тexнитe пpoтивници и ca нaпълнo пoд тяxнa милocт, пo вpeмe нa cляпocттa.

Лимит:
Зa дa нe ce paзмecтвaт мexaниĸитe нa игpaтa, дpyгитe игpaчи ca cĸpити caмo пo вpeмeтo, ĸoгaтo флaшнaтия e нaпълнo зacлeпeн (нaпълнo бял eĸpaн, бeз пpoзpaчнocт). Дoĸaтo игpaчa имa мaлĸa видимocт (бeлия eĸpaн зaпoчнe дa ce пpaмaxвa), вcичĸи игpaчи щe ce пoĸaжaт.

Зaщo тoзи плъгин e тoлĸoвa пoлeзeн:
Nо-flаѕh xaĸoвeтe ca пpoгpaми зa игpaчи, ĸoитo игнopиpaт peдa нa cъpвъpa пpи пoĸaзвaнeтo нa бял eĸpaн. Oт ĸaĸтo ѕеrvеr-ѕіdе пopядъцитe мoгaт дa бъдaт игнopиpaни oт сlіеnt-ѕіdе xaĸ, тoзи плъгин пpeмaxвa инфopмaциятa, ĸoятo вcичĸи игpaчи пpиeмaт и xaĸoвeтe я нямaт.

СVАR-ѕ:
//Bĸлючвaнe нa плъгинa (Πoдpaзбиpaнe: 1)
аntі_nоflаѕh_оn

//Πpeмaxвa флaшвaнeтo нa игpaч зa тecтoвa цeл (имитиpa nо-flаѕh xaĸ зa вcичĸи игpaчи). (Πoдpaзбиpaнe: 0)
аntі_nоflаѕh_dеmо

//Πpoдължитeлнocт нa пoĸaзвaнe, ĸoгaтo флaшвaнeтo зaпoчнe дa ce пpeмaxвa (Πpoдължитeлнocт: 0.0). Πpeпopъчитeлнo: ocтaвeтe гo нa 0.0.
аntі_nоflаѕh_dеlау

//Игнopиpaнe нa аntі nо-flаѕh eфeĸтa зa избpaнитe oтбopи: 0 = ниĸoй, 1 = Tepopиcтитe, 2 = СТ-тaтa (Πoдpaзбиpaнe: 0)
аntі_nоflаѕh_іgnоrе

Свали плъгина.

Аватар
mount4
Извън линия
Потребител
Потребител
Мнения: 187
Регистриран на: 03 Ное 2016, 19:54
Местоположение: Варна
Обратна връзка:

Re: Anti No-Flash

Мнение от mount4 » 08 Ное 2016, 09:52

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

L 11/08/2016 - 09:43:11: [CSTRIKE] Invalid player 1
L 11/08/2016 - 09:43:11: [AMXX] Run time error 10 (plugin "antinoflash.amxx") (native "cs_get_user_team") - debug not enabled!
L 11/08/2016 - 09:43:11: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
едит: Оправих го, ето новия код:

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

/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Anti-No Flash"
#define VERSION "1.0.8"
#define AUTHOR "Rul4"

new Float:g_flashed_until[33];

new pcv_on;
new pcv_demo;
new pcv_delay;
new pcv_ignore;
new g_msg_screen_fade;
new g_isBot[33];
new g_isAlive[33];
new g_team[33];
new g_plugin_on, g_ignore;

public plugin_init() {

	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_cvar("anti_noflash_version", VERSION, FCVAR_SERVER);	
	
	pcv_on = register_cvar ("anti_noflash_on", "1");
	pcv_demo = register_cvar ("anti_noflash_demo", "0");
	pcv_delay = register_cvar ("anti_noflash_delay", "0.0");
	pcv_ignore = register_cvar ("anti_noflash_ignore_team", "0");

	register_event("ScreenFade", "event_flashed", "b", "7=255");
	register_forward(FM_AddToFullPack, "fw_addtofullpack", 0);
	
	g_msg_screen_fade = get_user_msgid("ScreenFade");
	
	//Just for caching purposes
	RegisterHam( Ham_Spawn, "player", "fw_PlayerSpawn", 1);
	RegisterHam( Ham_Killed, "player", "fw_PlayerKilled", 1);

}


public event_flashed(id){
	
	//Cache this value so it is not called in AddToFullPack
	g_plugin_on = get_pcvar_num(pcv_on);
	
	if (!g_plugin_on || !is_user_connected(id) )
		return PLUGIN_CONTINUE;

	g_ignore = get_pcvar_num(pcv_ignore);
	
	//Up to when this player should be flashed
	g_flashed_until[id] = read_data(2)/4096.0 + get_gametime() + get_pcvar_float(pcv_delay);

	if(get_pcvar_num(pcv_demo)){	
		client_print(id, print_chat, "Gametime: %0.2f - Flashed until: %0.2f",get_gametime(),g_flashed_until[id]);
		remove_flash(id);
	}
	
	return PLUGIN_CONTINUE; 

}

public fw_addtofullpack(es, e, ent, host, flags, player, set){
	
	//Bots and dead players get all the info
	if (!g_plugin_on || !g_isAlive[host] || g_isBot[host])
		return FMRES_IGNORED;
	
	//Workaround for HnS plugin: ignore the anti no-flash effect according to the user's team
	if(g_ignore==g_team[host])
		return FMRES_IGNORED;
	
	if(player)
	{
		//If it is a player, make sure it is not myself and it is alive 
		if(!g_isAlive[ent] || ent == host)
			return FMRES_IGNORED;
	} else 
		if(pev_valid(ent))
		{
			//If it is not a player, find out if this is a grenade
			static Classname[33];
			pev(ent, pev_classname, Classname,32);
			new is_grenade = equal(Classname,"grenade");
	
			//Skip this ent if it is not a grenade but skip own grenades 
			//so cheaters don't realize they are flashed when they throw one
			if(!is_grenade || pev(ent, pev_owner)==host)		
				return FMRES_IGNORED;
	
		} else
			return FMRES_IGNORED;
	
	//If the player is flashed, strip other player's information
	if(get_gametime() < g_flashed_until[host])
	{
		//client_print(host, print_chat, "Gametime: %0.2f - Flashed until: %0.2f",get_gametime(),g_flashed_until[host]);
		forward_return(FMV_CELL, 0);
		return FMRES_SUPERCEDE;
	}
	
	return FMRES_IGNORED;

}

public remove_flash(id){
		
	//Remove flashing form target player for testing purposes
	message_begin(MSG_ONE_UNRELIABLE, g_msg_screen_fade, {0, 0, 0}, id);
	write_short(0);
	write_short(0);
	write_short(0);
	write_byte(0);
	write_byte(0);
	write_byte(0);
	write_byte(0);
	message_end();	

}

//Caching functions
public client_putinserver(id)
{
        g_isBot[id] = is_user_bot(id);
}

public client_disconnect(id)
{
    g_isAlive[id] = false;
    g_isBot[id] = false;
}


public fw_PlayerSpawn(id)
{
	g_isAlive[id] = is_user_alive(id);
	if(g_isAlive[id]) g_team[id] = cs_get_user_team(id); // the check added by mount4
}

public fw_PlayerKilled(id)
{
    g_isAlive[id] = false;
}

Проблема беше ето тук: "g_team[id] = cs_get_user_team(id);"
трябва да стане ето така: "if(g_isAlive[id]) g_team[id] = cs_get_user_team(id); // the check added by mount4"
Последно промяна от mount4 на 08 Ное 2016, 09:58, променено общо 3 пъти.
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

Segmentation fault Изображение <-- Opera browser !

Аватар
JustInCase
Извън линия
Потребител
Потребител
Мнения: 582
Регистриран на: 14 Окт 2016, 23:31
Се отблагодари: 4 пъти
Получена благодарност: 15 пъти

Re: Anti No-Flash

Мнение от JustInCase » 08 Ное 2016, 09:53

Напиши debug зад плъгина в plugins.ini и покажи Error-a тогава.



EDIT : Кажи как го оправи...
MANSION - HNS : 45.144.155.99:27026
ONLINE

Аватар
mount4
Извън линия
Потребител
Потребител
Мнения: 187
Регистриран на: 03 Ное 2016, 19:54
Местоположение: Варна
Обратна връзка:

Re: Anti No-Flash

Мнение от mount4 » 10 Ное 2016, 06:28

НЕ ИЗПОЛЗВАЙТЕ този плъгин!

Намерих начин как да анализирам плъгините които използвам и този излезе на 1во и 2ро място в класацията на най-лошите.
1во - най-много извиквания на функция ; 2ро - наи-дълго време на изпълнение.

http://bukvi.bg/cstrike/addons/amxmodx/ ... d_ones.txt <- анализ по брой извиквания на функция, най-отгоре са най-лошите
http://bukvi.bg/cstrike/addons/amxmodx/ ... ones_2.txt <- анализ по време, най-отгоре са най-дългите времена.

Забележете че се намира на 1 ред в първия файл и на 2ри във втория.

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

antinoflash.amxx.txt->fw_addtofullpack: 137973
antinoflash.amxx.txt->fw_addtofullpack: 0.13178
Това ще рече че има 137973 извиквания на функцията "fw_addtofullpack".
Отделно тази функция се изпълнява за 0.13178 време което е доста.
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

Segmentation fault Изображение <-- Opera browser !

Аватар
didoWEE
Извън линия
Баннат
Баннат
Мнения: 3
Регистриран на: 11 Окт 2016, 15:30

Re: Anti No-Flash

Мнение от didoWEE » 12 Ное 2016, 13:31

mount4 написа:НЕ ИЗПОЛЗВАЙТЕ този плъгин!

Намерих начин как да анализирам плъгините които използвам и този излезе на 1во и 2ро място в класацията на най-лошите.
1во - най-много извиквания на функция ; 2ро - наи-дълго време на изпълнение.
rofl
стига глупости

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

Обратно към “Неодобрени/стари плъгини”

Кой е на линия

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