Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

Eklenti error logu

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

Eklenti error logu

Mesaj gönderen mr1mr2 »

eklenti error log basmakta , Oyuncuların coguna xp gitmiyor bazılarına gidiyor bu tarz skntılar çıkarıyor sorun nedir?

Kod: Tümünü seç

L 01/01/2022 - 14:23:28: [AMXX] Displaying debug trace (plugin "sapkacoin.amxx", version "1.0")
L 01/01/2022 - 14:23:28: [AMXX] Run time error 10: native error (native "get_user_level")
L 01/01/2022 - 14:23:28: [AMXX] [0]sapkacoin.sma::fw_player_killed (line 1063) 

Kod: Tümünü seç

public fw_player_killed(victim, attacker, shouldgib){
    new level = get_user_level(attacker);
    if(zp_get_user_zombie(victim) && level >= 10){
    g_Jeton[attacker] += 1;
    if(g_gorevler[attacker][3] != 9999){
    g_gorevler[attacker][3]++
} 

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Eklenti error logu

Mesaj gönderen bestcore »

get_user_level fonksiyonunun içeriğini atar mısınız ?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

Eklenti error logu

Mesaj gönderen mr1mr2 »

içerikten kastını tam anlıyamadım ? inc içeriğimi

Kod: Tümünü seç

// Returns player Experience.
native get_user_xp(id)

// Sets player Experience.
native set_user_xp(id, amount)

// Returns player Level.
native get_user_level(id)

// Sets player Level.
native set_user_level(id, amount)

// Returns player Level by Xp.
native get_user_max_level(id)

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Eklenti error logu

Mesaj gönderen bestcore »

Yani nativeyi çektiğin yerden bahsetmiştim. Get_user_level komutu nereden çekiliyor ondan bahsediyorum.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

Eklenti error logu

Mesaj gönderen mr1mr2 »

Kod: Tümünü seç

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <levels>
#include <nvault>
#include <zombieplague2>

#define MAXLEVEL 101

new const LEVELS[MAXLEVEL] = { 
90, // Needed on level 1
180, // Needed on level 2
300, // Needed on level 3
450, // Needed on level 4
700, // Needed on level 5
1200, // Needed on level 6
1800, // Needed on level 7
2800, // Needed on level 8
4100, // Needed on level 9
5200, // Needed on level 10
6000, // Needed on level 11
6800, // Needed on level 12
8200, // Needed on level 13
10200, // Needed on level 14
12000, // Needed on level 15
15000, // Needed on level 16
17500, // Needed on level 17
20500, // Needed on level 18
25500, // Needed on level 19
29000, // Needed on level 20
35000, // Needed on level 21
46000, // Needed on level 22
58000, // Needed on level 23
71000, // Needed on level 24
85000, // Needed on level 25
100000, // Needed on level 26
116000, // Needed on level 27
133000, // Needed on level 28
151000, // Needed on level 29
170000, // Needed on level 30
190000, // Needed on level 31
211000, // Needed on level 32
233000, // Needed on level 33
256000, // Needed on level 34
280000, // Needed on level 35
305000, // Needed on level 36
331000, // Needed on level 37
358000, // Needed on level 38
386000, // Needed on level 39
415000, // Needed on level 40
445000, // Needed on level 41
476000, // Needed on level 42
508000, // Needed on level 43
541000, // Needed on level 44
575000, // Needed on level 45
610000, // Needed on level 46
646000, // Needed on level 47
683000, // Needed on level 48
721000, // Needed on level 49
760000, // Needed on level 50
800000, // Needed on level 51
842000, // Needed on level 52
886000, // Needed on level 53
974000, // Needed on level 54
1020000, // Needed on level 55
1068000, // Needed on level 56
1118000, // Needed on level 57
1170000, // Needed on level 58
1224000, // Needed on level 59
1280000, // Needed on level 60
1338000, // Needed on level 61
1398000, // Needed on level 62
1460000, // Needed on level 63
1524000, // Needed on level 64
1590000, // Needed on level 65
1658000, // Needed on level 66
1728000, // Needed on level 67
1800000, // Needed on level 68
1874000, // Needed on level 69
1950000, // Needed on level 70
2100000, // Needed on level 71
2300000, // Needed on level 72
2600000, // Needed on level 73
3000000, // Needed on level 74
3400000, // Needed on level 75
3700000, // Needed on level 76
4000000, // Needed on level 77
4450000, // Needed on level 78
4800000, // Needed on level 79
5200000, // Needed on level 80
5600000, // Needed on level 81
6000000, // Needed on level 82
6400000, // Needed on level 83
6800000, // Needed on level 84
7200000, // Needed on level 85
7600000, // Needed on level 86
8000000, // Needed on level 87
8400000, // Needed on level 88
8600000, // Needed on level 89
9000000, // Needed on level 90
9400000, // Needed on level 91
9800000, // Needed on level 92
12000000, // Needed on level 93
13000000, // Needed on level 94
14000000, // Needed on level 95
15000000, // Needed on level 96
16000000, // Needed on level 97
17000000, // Needed on level 98
18000000, // Needed on level 99
20000000, // Needed on level 100
99999999 // Needed on level 101

}; // Needed Xp on each Levels

new PlayerXp[33]
new PlayerLevel[33]

new g_Vault
new savexp, save_type, escape_xp_human, escape_xp_zombie

public plugin_init()
{
	register_plugin("Level Sistemi", "1.0", "DPCS")

	save_type = register_cvar("levels_savetype","0") // Save Xp to : 0 = NVault.
	savexp = register_cvar("levels_save","1") // Save Xp by : 2 = Name, 1 = SteamID, 0 = IP.
	escape_xp_human = register_cvar("escape_xp_amount_human", "300") // How much XP given to Humans when escape success?
	escape_xp_zombie = register_cvar("escape_xp_amount_zombie", "150") // How much XP given to Humans when escape success?
	
	register_event("HLTV", "elbasi", "a", "1=0", "2=0")
	register_clcmd("amx_levelsilmenusu", "levelmenu")
	register_clcmd("amx_zxpverme", "level_ver", ADMIN_RCON, "<authid, nick or #userid>")
}

public elbasi()
{
	new players[32],inum,id
	get_players(players,inum)
	for(new i;i<inum;i++)
	{
		id = players[i]
		
		new current_ammopacks = zp_get_user_ammo_packs(id)
        if(get_user_level(id) >= 0)
		{
			zp_set_user_ammo_packs(id, current_ammopacks + 30)
			renkli_yazi(id,"!g[ZE] !tHesabina !g30CP !teklendi.")
		}
	}
}

// Level sifirlama
public levelmenu(id)
{
	if(get_user_flags(id) & ADMIN_RCON)
	{
		static amenu[512]
		formatex(amenu,charsmax(amenu),"\yLevel Sifirlama icin oyuncu sec")
		new menuz = menu_create(amenu,"silmemenu_devam")
		
		new players[32], tempid, pnum
		new szName[32], szTempid[10]
		get_players(players, pnum)
		
		for(new i; i < pnum; i++)
		{
			tempid = players[i]
			if(is_user_connected(tempid) && !is_user_bot(tempid))
			{
				get_user_name(tempid, szName, 31)
				num_to_str(tempid, szTempid, 9)
				
				formatex(amenu, charsmax(amenu), "\w%s", szName)
				menu_additem(menuz, amenu, szTempid)
			}
		}
		
		menu_setprop(menuz,MPROP_EXIT,MEXIT_ALL)
		menu_display(id,menuz,0)
	}
	
	return PLUGIN_HANDLED
}

public silmemenu_devam(id,menu,item)
{
	if(item == MENU_EXIT)
	{
		menu_destroy(menu)
		return PLUGIN_HANDLED
	}
	new access,callback,data[6],iname[64]
	
	menu_item_getinfo(menu,item,access,data,5,iname,63,callback)
	
	new tempid = str_to_num(data)
	
	silmeislem(id, tempid)
	
	menu_destroy(menu)
	return PLUGIN_HANDLED
}

public silmeislem(id, player) {
	if (!player)
	return PLUGIN_HANDLED
	
	set_user_xp(player, 0)
	set_user_level(player, 0)
	SaveLevel(player)
	
	return PLUGIN_HANDLED
}

// Level verme
public level_ver(id, level, cid)
{
	if(!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED
	
	new arg[32], arg2[10], arg3[3]
	read_argv(1, arg, charsmax(arg))
	read_argv(2, arg2, charsmax(arg2))
	read_argv(3, arg3, charsmax(arg3))
	
	if(arg3[0])
		return PLUGIN_HANDLED
	
	new player = cmd_target(id, arg, charsmax(arg))
	if(!player)
		return PLUGIN_HANDLED
	
	set_user_xp(player, str_to_num(arg2))
	SaveLevel(player)
	check_level(player)
	
	return PLUGIN_HANDLED
}

public plugin_cfg()
{
	//Open our vault and have g_Vault store the handle.
	g_Vault = nvault_open("levels")

	//Make the plugin error if vault did not successfully open
	if ( g_Vault == INVALID_HANDLE )
		set_fail_state( "Error opening levels nVault, file does not exist!" )
}

public plugin_precache()
{
	precache_sound("ze_dp/ze_levelup.wav")
}

public plugin_natives()
{
	register_native("get_user_xp", "native_get_user_xp", 1)
	register_native("set_user_xp", "native_set_user_xp", 1)
	register_native("get_user_level", "native_get_user_level", 1)
	register_native("set_user_level", "native_set_user_level", 1)
	register_native("get_user_max_level", "native_get_user_max_level", 1)
}

public plugin_end()
{
	//Close the vault when the plugin ends (map change\server shutdown\restart)
	nvault_close(g_Vault)
}

public client_connect(id)
{
	LoadLevel(id)
}

public client_disconnect(id)
{
	SaveLevel(id)
	
	PlayerXp[id] = 0
	PlayerLevel[id] = 0
}

public zp_round_ended()
{
	new Alive_Terrorists_Number = GetPlayersNum(CsTeams:CS_TEAM_T)
	new Alive_CT_Numbers = GetPlayersNum(CsTeams:CS_TEAM_CT)
	
	new iPlayers[32], iNum
	get_players(iPlayers, iNum, "ace", "CT")
	
	for (new i = 0; i < iNum; i++)
	{
		if(PlayerLevel[iPlayers[i]] < MAXLEVEL-1)
		{
			if((Alive_CT_Numbers > Alive_Terrorists_Number) && (Alive_Terrorists_Number == 0))
			{
				set_user_xp(iPlayers[i], get_user_xp(iPlayers[i]) + get_pcvar_num(escape_xp_human))
				SaveLevel(iPlayers[i])
			}
			else if((Alive_Terrorists_Number > Alive_CT_Numbers) && (Alive_CT_Numbers == 0))
			{
				set_user_xp(iPlayers[i], get_user_xp(iPlayers[i]) + get_pcvar_num(escape_xp_zombie))
				SaveLevel(iPlayers[i])
			}
			check_level(iPlayers[i])
		}
	}
}

public check_level(id)
{
	if(PlayerLevel[id] < MAXLEVEL-1)
	{
		while(PlayerXp[id] >= LEVELS[PlayerLevel[id]])
		{
			PlayerLevel[id]++
			SaveLevel(id)
			
			static name[32]
			get_user_name(id, name, charsmax(name))
			renkli_yazi(0,"!g[DWCS] !n[ !t%s !n] !gAdli Oyuncu !n[ !t%i. !n] !gLevel'e Ulasti.", name, PlayerLevel[id])
		}
	}
}

SaveLevel(id)
{
	new szAuth[33];
	new szKey[64];
	
	if (get_pcvar_num(savexp) == 0)
	{
		get_user_ip(id, szAuth , charsmax(szAuth), 1)
		formatex(szKey , 63 , "%s-IP" , szAuth)
	}
	else if (get_pcvar_num(savexp) == 1)
	{
		get_user_authid(id , szAuth , charsmax(szAuth))
		formatex(szKey , 63 , "%s-ID" , szAuth)
	}
	else if (get_pcvar_num(savexp) == 2)
	{
		get_user_name(id, szAuth , charsmax(szAuth))
		formatex(szKey , 63 , "%s-NAME" , szAuth)
	}
	
	if (!get_pcvar_num(save_type))
	{
		new szData[256]
		
		formatex(szData , 255 , "%i#%i#" , PlayerLevel[id], PlayerXp[id])
		
		nvault_pset(g_Vault , szKey , szData)
	}
}

LoadLevel(id)
{
	new szAuth[33];
	new szKey[40];
	
	if (get_pcvar_num(savexp) == 0)
	{
		get_user_ip(id, szAuth , charsmax(szAuth), 1)
		formatex(szKey , 63 , "%s-IP" , szAuth)
	}
	else if (get_pcvar_num(savexp) == 1)
	{
		get_user_authid(id , szAuth , charsmax(szAuth))
		formatex(szKey , 63 , "%s-ID" , szAuth)
	}
	else if (get_pcvar_num(savexp) == 2)
	{
		get_user_name(id, szAuth , charsmax(szAuth))
		formatex(szKey , 63 , "%s-NAME" , szAuth)
	}
	
	if (!get_pcvar_num(save_type))
	{
		new szData[256];
		
		formatex(szData , 255, "%i#%i#", PlayerLevel[id], PlayerXp[id])
		
		nvault_get(g_Vault, szKey, szData, 255)
		
		replace_all(szData , 255, "#", " ")
		new xp[32], level[32]
		parse(szData, level, 31, xp, 31)
		PlayerLevel[id] = str_to_num(level)
		PlayerXp[id] = str_to_num(xp)
	}
}

// Native: get_user_xp
public native_get_user_xp(id)
{
	return PlayerXp[id]
}

// Native: set_user_xp
public native_set_user_xp(id, amount)
{
	PlayerXp[id] = amount
}

// Native: get_user_level
public native_get_user_level(id)
{
	return PlayerLevel[id]
}

// Native: set_user_xp
public native_set_user_level(id, amount)
{
	PlayerLevel[id] = amount
}

// Native: Gets user level by Xp
public native_get_user_max_level(id)
{
	new gerilevel
	
	if(PlayerLevel[id] > (MAXLEVEL-1)) {
		gerilevel = LEVELS[MAXLEVEL-1]
	}
	else {
		gerilevel = LEVELS[PlayerLevel[id]]
	}
	
	return gerilevel
}

stock GetPlayersNum(CsTeams:iTeam) {
	new iNum
	for( new i = 1; i <= get_maxplayers(); i++ ) {
		if(is_user_connected(i) && is_user_alive(i) && cs_get_user_team(i) == iTeam)
			iNum++
	}
	return iNum
}

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()
		}
	}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Eklenti error logu

Mesaj gönderen bestcore »

Olacağını pek sanmıyorum ama şöyle dener misiniz ?

Kod: Tümünü seç

public fw_player_killed(victim, attacker, shouldgib){
	if(is_user_connected(attacker))
	{
	    new level = get_user_level(attacker);
	    if(zp_get_user_zombie(victim) && level >= 10){
	    g_Jeton[attacker] += 1;
	    if(g_gorevler[attacker][3] != 9999){
	    g_gorevler[attacker][3]++
	}
}

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

Eklenti error logu

Mesaj gönderen mr1mr2 »

deneyim birde bir konuda googlede denk geldim şöyle bir yardımcı olmuş

Kod: Tümünü seç

public fw_player_killed(victim, attacker, shouldgib)
{
    if(! (1<=victim<=g_maxPlayers && 1<=attacker<=g_maxPlayers)) {
        return HAM_IGNORED
    }
    
    new name[32]
    get_user_name(attacker, name, 31)
    
    if(duel_active)
    {
        if(cs_get_user_team(victim) == CS_TEAM_CT && player_challenged[victim])
        {
            knife_duel[attacker] = false
            deagle_duel[attacker] = false
            grenade_duel[attacker] = false
            scout_duel[attacker] = false
            once[attacker] = false
            strip_user_weapons(attacker)
            give_item(attacker, "weapon_knife")
            set_user_rendering(attacker)
            duel_menu(attacker)
        }
        else if(cs_get_user_team(victim) == CS_TEAM_CT && !player_challenged[victim])
        {
            set_task(0.4, "kill_player", attacker)
        }
    }
    remove_task(attacker)
    remove_task(victim)
    return HAM_IGNORED
} }
ve bunu demiş : " hamsandwich forwardlarında HAM returnleri kullanılır. return HAM_IGNORED " bilmiyorum bilgi işine yararmı ?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

Eklenti error logu

Mesaj gönderen mr1mr2 »

evet olmadı dediğin malesef

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

soldierarda.
Mesajlar: 38
Kayıt: Cum Ara 11, 2020 7:35 pm
İletişim:

Eklenti error logu

Mesaj gönderen soldierarda. »

Mario plugininde o kısımda bir sıkıntı mevcut değil Level plugininde oyuncuların xp miktarının sorgulandığı yere oyuncunun oyunda olup olmadığını kontrol ettirirseniz sorun ortadan kalkacaktır.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
mr1mr2
Mesajlar: 519
Kayıt: Çrş Oca 24, 2018 1:04 pm
Konum: Ankara
İletişim:

Eklenti error logu

Mesaj gönderen mr1mr2 »

eyvallah sorun çözüldü.

Link:
Linklerini gizle
Linki Kopyala
Cevapla