[ROZWIĄZANY] [] [0] color_chat.inl::ColorC...
MaxiKINGer 30.07.2012
[] [0] color_chat.inl::ColorChat (line 72)
[] [1] check_player.inl::prebanned_check_ (line 64)
Może nareszcie ktoś weźmie to na poważnie i zajmie się tym błędem proszę ...
Wgrałem to: http://amxx.pl/topic...guracja-dproto/ + "poprawiona" funkcja z tego tematu: http://amxx.pl/topic...rebanned-check/
Wszystkie pliki macie w obu tematach, więc nie bd tutaj podawał...
iii ...
Przez to g...no raz przynajmniej w ciągu dnia pada serwer (pamięć ...)
@ pliczek podany w poprzednim temacie nie działa jbc (.inl)
Linia nr 72 w pliczku color_chat.inl:
Edited by MaxiKINGer, 30.07.2012 13:06.
[] [1] check_player.inl::prebanned_check_ (line 64)
Może nareszcie ktoś weźmie to na poważnie i zajmie się tym błędem proszę ...
Wgrałem to: http://amxx.pl/topic...guracja-dproto/ + "poprawiona" funkcja z tego tematu: http://amxx.pl/topic...rebanned-check/
Wszystkie pliki macie w obu tematach, więc nie bd tutaj podawał...
iii ...
L 07/30/2012 - 13:34:58: [] Displaying debug trace (plugin "amxbans_main.amxx") L 07/30/2012 - 13:34:58: [] Run time error 25: parameter error L 07/30/2012 - 13:34:58: [] [0] color_chat.inl::ColorChat (line 72) L 07/30/2012 - 13:34:58: [] [1] check_player.inl::prebanned_check_ (line 64)Wszystko sprowadza się do tego, że gdy ktoś wcześniej zbanowany (potem odbanowany) wbija na serwer sypią się te logi.
Przez to g...no raz przynajmniej w ciągu dnia pada serwer (pamięć ...)
@ pliczek podany w poprzednim temacie nie działa jbc (.inl)
Linia nr 72 w pliczku color_chat.inl:
vformat(message[1], 191, msg, 4);Cała funkcja z tą linią:
public ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...) { new message[ 192 ]; switch(type) { case YELLOW: // Yellow { message[0] = 0x01; } case GREEN: // Green { message[0] = 0x04; } default: // White, Red, Blue { message[0] = 0x03; } } vformat(message[1], 191, msg, 4); // Make sure message is not longer than 192 character. Will crash the server. message[189] = '^0'; new team, ColorChange, index, MSG_Type; if(!id) { index = FindPlayer(); MSG_Type = MSG_ALL; } else { MSG_Type = MSG_ONE; index = id; } team = get_user_team(index); ColorChange = ColorSelection(index, MSG_Type, type); ShowColorMessage(index, MSG_Type, message); if(ColorChange) { Team_Info(index, MSG_Type, TeamName[team]); } }
Edited by MaxiKINGer, 30.07.2012 13:06.
MaxiKINGer 30.07.2012
public prebanned_check_(failstate, Handle:query, error[], errnum, data[], size) { new id = data[0] if (failstate) { new szQuery[256] MySqlX_ThreadError( szQuery, error, errnum, failstate, 16 ) return PLUGIN_HANDLED } new ban_count=SQL_ReadResult(query, 0) if(ban_count < get_pcvar_num(pcvar_show_prebanned_num)) return PLUGIN_HANDLED new name[32], player_steamid[35] get_user_authid(id, player_steamid, 34) get_user_name(id, name, 31) for(new i=1;i<=plnum;i++) { if(is_user_bot(i) || is_user_hltv(i) || !is_user_connected(i) || i==id) continue if(get_user_flags(i) & ADMIN_CHAT) { ColorChat(i, RED, "[AMXBans] ^x01%L",i, "PLAYER_BANNED_BEFORE", name, player_steamid, ban_count) } } log_amx("[AMXBans] %L",LANG_SERVER, "PLAYER_BANNED_BEFORE", name, player_steamid, ban_count) return PLUGIN_HANDLED }
Dokładnie:
ColorChat(i, RED, "[AMXBans] ^x01%L",i, "PLAYER_BANNED_BEFORE", name, player_steamid, ban_count)
Hleb
30.07.2012
Zobacz do czego doszedłem
funkcja ta ma 3 argumenty, licząc po "PLAYER_BANNED_BEFORE".
Zobaczyłem plik tekstowy z tłumaczeniem dla amxbansa
tekst wymaga 4 argumentów: 3 na znaki, 1 na liczbę całkowitą. Prościej pisząc, brakuje 1 argumentu.
Jak później się dowiedziałem, chodzi o adres IP gracza.
Rozwiązanie nr 1
Usunąc z linijki PLAYER_BANNED_BEFORE w pliku amxbans.txt (znajdziesz go w addons -> amxmodx -> data -> lang) "%s". Czyli ma wyglądać tak
Rozwiązanie nr 2
funkcję prebanned_check_ zamienić na to
To jakie rozwiązanie wybierzesz, to już tylko od Ciebie zależne
Dziękuję.
ColorChat(i, RED, "[AMXBans] ^x01%L",i, "PLAYER_BANNED_BEFORE", name, player_steamid, ban_count)
funkcja ta ma 3 argumenty, licząc po "PLAYER_BANNED_BEFORE".
Zobaczyłem plik tekstowy z tłumaczeniem dla amxbansa
PLAYER_BANNED_BEFORE = [AMXBans]<%s> %s %s zostal wczesniej zbanowany %i razy.
tekst wymaga 4 argumentów: 3 na znaki, 1 na liczbę całkowitą. Prościej pisząc, brakuje 1 argumentu.
Jak później się dowiedziałem, chodzi o adres IP gracza.
Rozwiązanie nr 1
Usunąc z linijki PLAYER_BANNED_BEFORE w pliku amxbans.txt (znajdziesz go w addons -> amxmodx -> data -> lang) "%s". Czyli ma wyglądać tak
PLAYER_BANNED_BEFORE = [AMXBans]<%s> %s zostal wczesniej zbanowany %i razy.
Rozwiązanie nr 2
funkcję prebanned_check_ zamienić na to
public prebanned_check_(failstate, Handle:query, error[], errnum, data[], size) {
new id = data[0]
if (failstate) {
new szQuery[256]
MySqlX_ThreadError( szQuery, error, errnum, failstate, 16 )
return PLUGIN_HANDLED
}
new ban_count=SQL_ReadResult(query, 0)
if(ban_count < get_pcvar_num(pcvar_show_prebanned_num))
return PLUGIN_HANDLED
new name[32], player_steamid[35], player_ip[20];
get_user_authid(id, player_steamid, 34)
get_user_name(id, name, 31)
get_user_ip(id, player_ip, 19, 1)
for(new i=1;i<=plnum;i++) {
if(is_user_bot(i) || is_user_hltv(i) || !is_user_connected(i) || i==id)
continue
if(get_user_flags(i) & ADMIN_CHAT) {
ColorChat(i, RED, "[AMXBans] ^x01%L",i, "PLAYER_BANNED_BEFORE", name, player_ip, player_steamid, ban_count)
}
}
log_amx("[AMXBans] %L",LANG_SERVER, "PLAYER_BANNED_BEFORE", name, player_ip, player_steamid, ban_count)
return PLUGIN_HANDLED
}
To jakie rozwiązanie wybierzesz, to już tylko od Ciebie zależne
Dziękuję.
MaxiKINGer 30.07.2012
Oczywiście zmieniłem lang (bo to szybsze ... )
Działa kochanie Ty moje najdroższe!
Dziękuję, wielkie dzięki....
Logi czyste, crash`y już nie będzie, jeszcze raz wielkie dzięki...
Moderator czy inny ktoś niech to przypnie, bo takie błędy się ludziom zdarzają.
Do zamknięcia
Edited by MaxiKINGer, 30.07.2012 14:47.
Działa kochanie Ty moje najdroższe!
Dziękuję, wielkie dzięki....
Logi czyste, crash`y już nie będzie, jeszcze raz wielkie dzięki...
Moderator czy inny ktoś niech to przypnie, bo takie błędy się ludziom zdarzają.
Do zamknięcia
Edited by MaxiKINGer, 30.07.2012 14:47.
Kawon
30.07.2012
Wiadomość wygenerowana automatycznie
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL