Custom Smoke Anti 16 bit играчите се оплакват от лаг и пада фпс

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
Ant1Lamer
Извън линия
Потребител
Потребител
Мнения: 217
Регистриран на: 08 Окт 2016, 00:03
Се отблагодари: 18 пъти
Получена благодарност: 3 пъти

Custom Smoke Anti 16 bit играчите се оплакват от лаг и пада фпс

Мнение от Ant1Lamer » 19 Апр 2021, 23:52

Това е плугина бачка си ползвам и sprite, обаче повечето играчи и пада фпс аз лично нямам проблеми и си играя на 100. Може би защото имат слабо видео, но все пак качвам плугина да го погледнете и дали може да се пренапише или да се направи нещо по въпроса

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

#include < amxmodx >
#include < reapi >

#pragma semicolon 1

// Modified by mx?! at 18.01.2020, base version was 1.07
// Changes:
// Old AMXX versions support dropped (now plugin require 183+)
// Plugin ported to ReAPI (base version uses fakemeta & engine)
// Refactoring
// Added AMXX autoconfig option
// Added new cvar 'sv_smokestyle'
// Default 'sv_smokeduration' cvar value raised from 10.0 to 15.0
#define VERSION "1.08"

/* -------------------- */

// Create config in 'configs/plugins', and execute it?
#define AUTO_CFG

// Use reliable messages (guaranteed delivery, but can cause client overflow)
// Comment to use unreliable messages
#define USE_RELIABLE

// Path to custom smoke sprite
new const SMOKE_SPRITE[ ] = "sprites/smokegrenade_grey.spr";

/* -------------------- */

#if defined USE_RELIABLE
	#define MSG_TYPE MSG_ALL
#else
	#define MSG_TYPE MSG_BROADCAST
#endif

new const CUSTOM_CLASSNAME[ ] = "custom_smoke";

new g_iCvar_Enebled;
new Float:g_flCvar_Duration;
new g_iCvar_SpritesCount;
new g_iCvar_Style;
new g_iSmokeSpriteIndex;

public plugin_precache( )
{
	register_plugin( "Custom Smoke", VERSION, "bionext" );

	if( !file_exists( SMOKE_SPRITE ) )
	{
		set_fail_state( "Can't find '%s'", SMOKE_SPRITE );
	}

	g_iSmokeSpriteIndex = precache_model( SMOKE_SPRITE );

	force_unmodified( force_exactfile, { 0, 0, 0 }, { 0, 0, 0 }, SMOKE_SPRITE );
}

public plugin_init( )
{
	func_RegCvars( );

	RegisterHookChain( RG_CGrenade_ExplodeSmokeGrenade, "OnExplodeSmokeGrenade_Pre" );
	RegisterHookChain( RG_CSGameRules_RestartRound, "OnRestartRound_Pre" );
}

public OnExplodeSmokeGrenade_Pre( pEnt )
{
	if( !g_iCvar_Enebled || !is_entity( pEnt ) )
	{
		return HC_CONTINUE;
	}

	new Float:vOrigin[ 3 ];
	get_entvar( pEnt, var_origin, vOrigin );

	emit_sound( pEnt, CHAN_WEAPON, "weapons/sg_explode.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM );

	set_entvar( pEnt, var_flags, FL_KILLME );

	new pSmokeEnt = rg_create_entity( "info_target", .useHashTable = false );

	if( !pSmokeEnt )
	{
		return HC_SUPERCEDE;
	}

	set_entvar( pSmokeEnt, var_classname, CUSTOM_CLASSNAME );
	set_entvar( pSmokeEnt, var_nextthink, get_gametime( ) );
	set_entvar( pSmokeEnt, var_origin, vOrigin );
	set_entvar( pSmokeEnt, var_animtime, g_flCvar_Duration );
	SetThink( pSmokeEnt, "OnThink_Pre" );

	return HC_SUPERCEDE;
}

public OnThink_Pre( pEnt )
{
	if( !is_entity( pEnt ) )
	{
		return;
	}

	new Float:vOrigin[ 3 ];
	get_entvar( pEnt, var_origin, vOrigin );

	func_SendFireFieldMsg( vOrigin, 100, g_iCvar_SpritesCount, TEFIRE_FLAG_ALPHA, 11 );
	func_SendFireFieldMsg( vOrigin, 150, 5, TEFIRE_FLAG_ALPHA | TEFIRE_FLAG_SOMEFLOAT, 11 );

	new Float:flTime = Float:get_entvar( pEnt, var_animtime ) - 0.25;

	if( flTime > 0.0 )
	{
		set_entvar( pEnt, var_nextthink, get_gametime( ) + 0.25 );
		set_entvar( pEnt, var_animtime, flTime );
	}
	else
	{
		set_entvar( pEnt, var_flags, FL_KILLME );
	}
}

func_SendFireFieldMsg( const Float:vOrigin[ 3 ], iRadius, iSpritesCount, iFlags, iDuration )
{
	if(g_iCvar_Style)
	{
		iFlags |= TEFIRE_FLAG_PLANAR;
	}

	message_begin( MSG_TYPE, SVC_TEMPENTITY );
	write_byte( TE_FIREFIELD );
	write_coord_f( vOrigin[ 0 ] );
	write_coord_f( vOrigin[ 1 ] );
	write_coord_f( vOrigin[ 2 ] + 50 );
	write_short( iRadius );
	write_short( g_iSmokeSpriteIndex );
	write_byte( iSpritesCount );
	write_byte( iFlags );
	write_byte( iDuration );
	message_end( );
}

public OnRestartRound_Pre( )
{
	new pEnt = MaxClients;

	while( ( pEnt = rg_find_ent_by_class( pEnt, CUSTOM_CLASSNAME, .useHashTable = false ) ) )
	{
		set_entvar( pEnt, var_flags, FL_KILLME );
	}
}

func_RegCvars( )
{
	bind_pcvar_num(
		create_cvar(
			"sv_customsmoke",
			"1",
			.description = "Enable custom smoke (1/0) ?" ),
		g_iCvar_Enebled
	);

	bind_pcvar_float(
		create_cvar(
			"sv_smokeduration",
			"25.0",
			.has_min = true, .min_val = 1.0,
			.description = "Smoke duration in seconds" ),
		g_flCvar_Duration
	);

	bind_pcvar_num(
		create_cvar(
			"sv_smokespritescount",
			"30",
			.has_min = true, .min_val = 1.0,
			.description = "Smoke sprites count" ),
		g_iCvar_SpritesCount
	);

	bind_pcvar_num(
		create_cvar(
			"sv_smokestyle",
			"0",
			.description = "Smoke style: 0 - default, 1 - compact" ),
		g_iCvar_Style
	);

#if defined AUTO_CFG
	AutoExecConfig( );
#endif
}
НАУЧИ ПРАВИЛАТА, ЗА ДА ЗНАЕШ КАК ПОРЯДЪЧНО ДА ГИ НАРУШАВАШ!!!

Аватар
s1lata
Извън линия
Потребител
Потребител
Мнения: 228
Регистриран на: 10 Апр 2020, 21:25
Се отблагодари: 69 пъти
Получена благодарност: 26 пъти
Обратна връзка:

Custom Smoke Anti 16 bit играчите се оплакват от лаг и пада фпс

Мнение от s1lata » 20 Апр 2021, 01:18

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

Аватар
m0ney
Извън линия
Потребител
Потребител
Мнения: 285
Регистриран на: 13 Апр 2020, 11:36
Се отблагодари: 83 пъти
Получена благодарност: 39 пъти
Обратна връзка:

Custom Smoke Anti 16 bit играчите се оплакват от лаг и пада фпс

Мнение от m0ney » 20 Апр 2021, 08:27

Качеството на самата смоук граната е ужасно в цс 1.6 и се вижда през нея пък и само лагва(както се оплакват играчите), забележи в колко сървъри я има.. по-добре я махни изцяло. Не мисля, че има оправия.
Изображение
Изображение

Аватар
Ant1Lamer
Извън линия
Потребител
Потребител
Мнения: 217
Регистриран на: 08 Окт 2016, 00:03
Се отблагодари: 18 пъти
Получена благодарност: 3 пъти

Custom Smoke Anti 16 bit играчите се оплакват от лаг и пада фпс

Мнение от Ant1Lamer » 20 Апр 2021, 10:03

Знам че е така забранена е в момента, този спрайт който ползвам не се вижда, дори и на 16 бита, но явно ще е така до сега и аз не съм видял решение за този проблем
НАУЧИ ПРАВИЛАТА, ЗА ДА ЗНАЕШ КАК ПОРЯДЪЧНО ДА ГИ НАРУШАВАШ!!!

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

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

Кой е на линия

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