←  Problemy z pluginami

AMXX.pl: Support AMX Mod X i SourceMod

»

Interpowiec - Blad po komilacji

Zablokowany

  • +
  • -
karolo_k - zdjęcie karolo_k 13.03.2011

Witam, mam taki sma:
/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "Poprawne rate"
#define VERSION "1.0"
#define AUTHOR "Sn!ff3r"

new bool:timetocheck[33]

new c_minrate, c_minupdaterate, c_maxinterp, c_say, g_minrate, g_minupdaterate, Float:g_maxinterp, g_say

public plugin_init() 
{
	register_plugin(PLUGIN, VERSION, AUTHOR)	
	
	RegisterHam(Ham_Spawn, "player", "client_spawn", 1)	
	
	register_event("HLTV", "cache_cvars", "a", "1=0", "2=0")
	
	c_minrate = register_cvar("sv_minclrate", "20000")
	c_minupdaterate = register_cvar("sv_minclupdaterate", "45")
	c_maxinterp = register_cvar("sv_maxclniterp", "0.01")
	c_say = register_cvar("sv_informcl", "1")
	
	cache_cvars()
}

public client_connect(id)
{	
	timetocheck[id] = false
}

public client_spawn(id)
{
	static updaterate[6], rate[6]
	
	get_user_info(id, "cl_updaterate", updaterate, 5)
	get_user_info(id, "rate", rate, 5)
	
	if(str_to_num(updaterate) < g_minupdaterate)
	{
		client_cmd(id, "cl_updaterate %d", g_minupdaterate)
		
		if(g_say)
		{
			client_print(id, 3, "[CE_UPDATERATE] Twoje cl_updaterate zostalo ustawione na %d", g_minupdaterate)
		}
	}
	
	if(str_to_num(rate) < g_minrate)
	{
		client_cmd(id, "rate %d", g_minrate)
		
		if(g_say)
		{
			client_print(id, 3, "[RATE] Twoje rate zostalo ustawione na %d", g_minrate)
		}
	}
	
	timetocheck[id] = true
	
	static h
	h = register_forward(FM_CmdStart, "client_cmdstart", 1)	
	set_task(0.01, "unregister", h)
}

public unregister(h)
{
	unregister_forward(FM_CmdStart, h, 1)
}

public client_cmdstart(id, uc_handle, seed)
{
	if(timetocheck[id])
	{
		static value
		value = get_uc( uc_handle, UC_LerpMsec )

		if(float(value) / 1000.0 > g_maxinterp + 0.005) // maly fix 
		{			
			client_cmd(id, "ex_interp %0.2f", g_maxinterp)	
			
			if(g_say)
			{
				client_print(id, 3, "[INTERP] Twoje ex_interp  zostalo ustawione na %0.2f", g_maxinterp)
			}
		}
		timetocheck[id] = false
	}
}

public cache_cvars()
{
	g_minrate = get_pcvar_num(c_minrate)
	g_minupdaterate = get_pcvar_num(c_minupdaterate)
	g_maxinterp = get_pcvar_float(c_maxinterp)
	g_say = get_pcvar_num(c_say)	
}

No i ogoleni plugin działa ale ja wszedłem na serwer z innym interpen niż 0.01 to mi w czasie wysiwetlilo sie:
[INTERP] Twoje ex_interp  zostalo ustawione na 0.00
A jak wpisałem w konsoli ex_interp to mi wyswietlilo 0.009000
Odpowiedz

  • +
  • -
phoeniX - zdjęcie phoeniX 15.03.2011

Nie lepiej łatwiej napisać? Do 100 linijek? :]
Odpowiedz

Skull3D - zdjęcie Skull3D 15.03.2011

Używaj tego
Interp Changer 1.4 - AMXX.pl: Support AMX Mod X
Polecam działa w 100%
Odpowiedz

  • +
  • -
karolo_k - zdjęcie karolo_k 17.03.2011

Nie lepiej łatwiej napisać? Do 100 linijek? :]

Gdybym umiał to pewnie bym napisał 8?
na razie testuje ten od CienkiPL
Odpowiedz

Skull3D - zdjęcie Skull3D 17.03.2011

karolo_k

Jak masz zly interp to pisz w say
/interp
jak ktos ma zly interp to pisz w say
/interpall
Moge ci odswiezanie dac co 2sek jak chcesz
Odpowiedz

  • +
  • -
karolo_k - zdjęcie karolo_k 18.03.2011

To nie można zrobić tak żeby co 2 sek (czy jakis inny czas) samo wpisywalo "interpall"
Odpowiedz

  • +
  • -
Karpielek - zdjęcie Karpielek 18.03.2011

Po prostu do tego pierwszego pluginu zmień cvar:
sv_maxclniterp 0.02
Powinno działać poprawnie.
Użytkownik Karpielek edytował ten post 18.03.2011 20:41
Odpowiedz

  • +
  • -
karolo_k - zdjęcie karolo_k 18.03.2011

karolo_k

Jak masz zly interp to pisz w say
/interp
jak ktos ma zly interp to pisz w say
/interpall
Moge ci odswiezanie dac co 2sek jak chcesz



Po prostu do tego pierwszego pluginu zmień cvar:
sv_maxclniterp 0.02
Powinno działać poprawnie.

No ale to on co 2 sekundy bedzie sprawdzal czy ktos nie zmianil czy co 2 sekundy bedzue wszystkim ustawiac na 0.01?
Odpowiedz

  • +
  • -
Leihto - zdjęcie Leihto 19.03.2011

#include <amxmodx>

#define PLUGIN "Nowy Plugin"
#define VERSION "1.0"
#define AUTHOR "Blak Rajder"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
set_task(5.0, "wymuszanie", _,_,_, b)
}
public wymuszanie(id)
{
client_cmd(id, "ex_interp 0.01")
}
Tak masz najprostrze wymuszanie co 5 sekund ;)
Odpowiedz

  • +
  • -
karolo_k - zdjęcie karolo_k 19.03.2011

To jest cały kod?

On ma wszystkim wymusic 0.01 (nie wazne czy steam player czy non steam )?
Odpowiedz

  • +
  • -
Karpielek - zdjęcie Karpielek 19.03.2011

Jak plugin będzie sprawdzał co 2 sekundy lub będzie wymuszał co 5 sekund będzie zamulac serwer...
Przecież plugin poprawne__rate jest wystarczający, wymusza na początku rundy interp.

Na 2 protokoły:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Wymuszanie interpu"
#define VERSION "1.0"
#define AUTHOR "StreaM*"

/* Co ile sekund ma wymuszac linijka 11 */
public plugin_init() {
    register_plugin("Wymuszanie interpu", "1.0", "StreaM*")
    set_task(30.0, "interp", _, _, _, "b")
}
/* Wartosc interpu mozesz zmienic w 12 linijce */
public interp()
{
    client_cmd(0, "ex_interp 0.01")
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1045{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/

Wymusza interp co 30 sekund
Użytkownik Karpielek edytował ten post 19.03.2011 18:46
Odpowiedz

  • +
  • -
Leihto - zdjęcie Leihto 19.03.2011

public interp()
{
client_cmd(0, "ex_interp 0.01")
}

Jak tak bedziesz robil to dopiero bedzie spam.. Ustawiasz na 0 czyli wszystkim. Jesli gracze beda roznie sie dolaczac do serwera to bedzie wymuszalo niezwykle czesto ;) Z reszta. W twoim kodzie nie jest potrzebna biblioteka <amxmisc> :) No i w sumie to jest ten sam kod co moj.. Tylko zmieniony czas wymuszania interpu i to co napisalem wyzej :coto:

To jest cały kod?

On ma wszystkim wymusic 0.01 (nie wazne czy steam player czy non steam )?

Tak to jest caly kod i on bedzie wymuszal kazdemu interp ;] (I na steam i na ns)
Użytkownik Blak Rajder edytował ten post 19.03.2011 18:51
Odpowiedz

  • +
  • -
Lukasz5 - zdjęcie Lukasz5 20.03.2011

A jeżeli gracz nie ma odpowiednich ustawień cl_updaterate, cl_cmdrate, rate to ex_interp 0.01 nie zadziała... ;]
Odpowiedz
Zablokowany