1. sayfa (Toplam 2 sayfa)

Eklenti küçük edit

Gönderilme zamanı: Pzr Oca 30, 2022 10:14 pm
gönderen Mehmetaga
Merhaba, aşağıda attığım eklenti fps sınırını geçen oyunculara slay atıyor. Bu eklentiyi slay atması yerine 5 saniye freeze atacak şeklinde düzenler misiniz? Freezesi biten oyuncu hala fps sınırını aşıyorsa tekrar freezelensin. Teşekkürler.

Kod: Tümünü seç

#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#define PLUGIN "High FPS Detector"
#define VERSION "1.0"
#define AUTHOR "DPCS"

new iFrames[33]

#define FPSSINIR 230

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_forward(FM_PlayerPreThink, "Forward_PlayerPreThink")
}

public Forward_PlayerPreThink(id) {
	if(!is_user_alive(id)) return FMRES_IGNORED
	
	iFrames[id]++
	return FMRES_IGNORED
}

public client_authorized(id) {
	client_cmd(id, "fps_max 200;")
	client_cmd(id, "fps_modem 200;")
}

public client_putinserver(id) {
	iFrames[id] = 0
	set_task(1.0, "ShowFps",id+19075, _, _, "b")
}

public client_disconnect(id) {
	if(task_exists(id+19075)) {
		remove_task(id+19075)
	}
}

public ShowFps(id)
{
	id -= 19075
	if(is_user_alive(id) && iFrames[id] >= FPSSINIR) {
		new szName[33]
		get_user_name(id, szName, 33)
		renkli_yazi(0, "!g[BGZE] !n[ !t%s !n] Adli Oyuncu Slaylandi. !nKonsola fps_max 200 ve fps_modem 200 Yazip Lutfen FPS'nizi sabitleyin.", szName)
		user_silentkill(id)
	}
	iFrames[id] = 0
}

stock renkli_yazi(const id, const input[], any:...)
{
	new count = 1, players[32]
	static msg[191]
	vformat(msg, sizeof(msg) - 1, input, 3)
	
	replace_all(msg, 190, "!n", "^x01")
	replace_all(msg, 190, "!g", "^x04")
	replace_all(msg, 190, "!t", "^x03")
	
	if(id) players[0] = id; else get_players(players, count, "ch")
	for(new i = 0; i < count; i++)
	{
		if(is_user_connected(players[i]))
		{
			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
			write_byte(players[i])
			write_string(msg)
			message_end()
		}
	}
}

Eklenti küçük edit

Gönderilme zamanı: Pzr Oca 30, 2022 10:37 pm
gönderen semihh6060
Bu eklenti yerine fps sınırlandırıcı kullanabilirsin.

Eklenti küçük edit

Gönderilme zamanı: Pzr Oca 30, 2022 11:10 pm
gönderen Mehmetaga
semihh6060 yazdı: Pzr Oca 30, 2022 10:37 pm Bu eklenti yerine fps sınırlandırıcı kullanabilirsin.
Bu eklentinin amacı zaten o. Oyuncular suncuya girince otomatik kodları uyguluyor. Fakat bazı oyuncular konsoldan değişiyor. Bunu engellemek amaçlı böyle bir eklenti kullanıyorum.

Eklenti küçük edit

Gönderilme zamanı: Pzr Oca 30, 2022 11:18 pm
gönderen semihh6060
Mehmetaga yazdı: Pzr Oca 30, 2022 11:10 pm
semihh6060 yazdı: Pzr Oca 30, 2022 10:37 pm Bu eklenti yerine fps sınırlandırıcı kullanabilirsin.
Bu eklentinin amacı zaten o. Oyuncular suncuya girince otomatik kodları uyguluyor. Fakat bazı oyuncular konsoldan değişiyor. Bunu engellemek amaçlı böyle bir eklenti kullanıyorum.
Biliyorum amacının o olduğunu. Kullanıcı değiştirse bile server sürekli o fpse sabitlicek. Tabii bu serveri yorabilir. Dediğin eklenti daha mantıklıdır belkide.

Eklenti küçük edit

Gönderilme zamanı: Çrş Şub 02, 2022 12:53 am
gönderen Mehmetaga
semihh6060 yazdı: Pzr Oca 30, 2022 11:18 pm
Mehmetaga yazdı: Pzr Oca 30, 2022 11:10 pm
semihh6060 yazdı: Pzr Oca 30, 2022 10:37 pm Bu eklenti yerine fps sınırlandırıcı kullanabilirsin.
Bu eklentinin amacı zaten o. Oyuncular suncuya girince otomatik kodları uyguluyor. Fakat bazı oyuncular konsoldan değişiyor. Bunu engellemek amaçlı böyle bir eklenti kullanıyorum.
Biliyorum amacının o olduğunu. Kullanıcı değiştirse bile server sürekli o fpse sabitlicek. Tabii bu serveri yorabilir. Dediğin eklenti daha mantıklıdır belkide.
Evet dediğin gibi sunucuyu yorabilir. Benim dediğim gibi yapabilecek var mı?

Eklenti küçük edit

Gönderilme zamanı: Cum Şub 04, 2022 12:21 am
gönderen vburakustunel
Güncel, farklı hesapla açmışım konuyu yeni farkettim :D

Eklenti küçük edit

Gönderilme zamanı: Pzr Şub 06, 2022 2:25 pm
gönderen vburakustunel
Konu günceldir.

Eklenti küçük edit

Gönderilme zamanı: Pzr Şub 06, 2022 10:10 pm
gönderen vburakustunel
Güncel.

Eklenti küçük edit

Gönderilme zamanı: Pzt Şub 07, 2022 12:27 pm
gönderen Colditz
Dener misin?

Kod: Tümünü seç

#include <amxmodx>
#include <reapi>

new bool:g_blIsPlayerConnectedAndAlive[MAX_CLIENTS + 1];
new g_iFrames[MAX_CLIENTS + 1];
new g_iCvar;

public plugin_init() {
    register_plugin("FPS Sinir", "0.0.1", "Schwarper");

    RegisterHookChain(RG_CBasePlayer_Spawn, "@CBasePlayer_Spawn_Post", .post = true);
    RegisterHookChain(RG_CBasePlayer_Killed, "@CBasePlayer_Killed_Post", .post = true);
    RegisterHookChain(RG_CBasePlayer_PreThink, "@CBasePlayer_PreThink_Pre", .post = false);

    bind_pcvar_num(create_cvar("fps_sinir", "240"), g_iCvar);
}

public client_disconnected(pPlayer) {
    g_blIsPlayerConnectedAndAlive[pPlayer] = false;
    remove_task(pPlayer);
}

@CBasePlayer_Spawn_Post(const pPlayer) {
    if(get_member(pPlayer, m_bJustConnected)) {
        client_cmd(pPlayer, "fps_max 200;");
        client_cmd(pPlayer, "fps_modem 200;");
        return;
    }

    g_iFrames[pPlayer] = 0;
    g_blIsPlayerConnectedAndAlive[pPlayer] = true;
    set_task(1.0, "@CheckFpsPerSec", pPlayer, .flags = "b");
}

@CBasePlayer_Killed_Post(const pVictim) {
    g_blIsPlayerConnectedAndAlive[pVictim] = false;
    remove_task(pVictim);
}

@CBasePlayer_PreThink_Pre(const pPlayer) {
    if(!g_blIsPlayerConnectedAndAlive[pPlayer]) {
        return;
    }

    g_iFrames[pPlayer]++;
}

@CheckFpsPerSec(const pPlayer) {
    if(g_iFrames[pPlayer] >= g_iCvar) {
        set_task(3.0, "@UnFreeze", pPlayer);
        set_entvar(pPlayer, var_flags, get_entvar(pPlayer, var_flags) | FL_FROZEN);

        client_print_color(pPlayer, pPlayer, "^4Fps Siniri: ^3%i^1. ^4Fps sinirini gectigin icin 3 saniye donduruldun.", g_iCvar);
    }

    g_iFrames[pPlayer] = 0;
}

@UnFreeze(const pPlayer) {
    set_entvar(pPlayer, var_flags, get_entvar(pPlayer, var_flags) & ~FL_FROZEN);
    client_print_color(pPlayer, pPlayer, "^4 3 ^1saniyelik cezan bitti. ^3Lutfen fps sinirini gecmeyin. ^4Fps siniri^1: ^3%i", g_iCvar);
}

Eklenti küçük edit

Gönderilme zamanı: Pzt Şub 07, 2022 3:40 pm
gönderen vburakustunel

Kod: Tümünü seç

ze_fps_siniri.sma(26) : warning 217: loose indentation
ze_fps_siniri.sma(27) : warning 217: loose indentation
ze_fps_siniri.sma(37) : error 017: undefined symbol "pPlayer"
ze_fps_siniri.sma(37) : error 088: number of arguments does not match definition

2 Errors.
Could not locate output file ze_fps_siniri.amx (compile failed).
Böyle bir hata verdi.