Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

`Sernik - zdjęcie

`Sernik

Rejestracja: 26.03.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 18.08.2016 09:21
-----

#194327 [FIX] Wyświetlanie się podwójnych banów na stronie

Napisane przez Turtle w 06.12.2010 19:01

tak została zmienione funkcja pobierania banów z bazy.

//get bans for current page
$query  = mysql_query("SELECT ba.*, se.gametype,se.timezone_fixx, aa.nickname FROM `".$config->db_prefix."_bans` AS ba
 LEFT JOIN `".$config->db_prefix."_serverinfo` AS se ON ba.server_ip=se.address
 LEFT JOIN `".$config->db_prefix."_amxadmins` AS aa ON (aa.steamid=ba.admin_nick OR aa.steamid=ba.admin_ip OR aa.steamid=ba.admin_id)
 WHERE ba.expired=0 GROUP BY ba.bid ORDER BY ban_created DESC LIMIT ".$min.",".$config->bans_per_page) or die(mysql_error());


  • +
  • -
  • 3


#571597 Przekierowanie po aktualizacji sierpniowej

Napisane przez Ogen Dogen w 15.09.2013 00:29

Na początku mały wstęp :)

Jak zapewne pamiętacie 14 lutego 2013 była duża aktualizacja , która uniemożliwiła nam korzystania z poleceń connect , bind itp. w pluginach AMXX. Korzystaliśmy wtedy z kodu

client_cmd(id,"Connect ip:port")

Ten kod już nie działa i została znaleziona dziura , którą mogliśmy to ominąć.

client_cmd(id,"^"connect^"ip:port")

Jednakże 29 sierpnia 2013 została wydana kolejna aktualizacja blokująca i tą metodę , ale powalczyłem i znalazłem kolejny sposób na przekierowanie.

client_cmd(id,"echo ^"^";^"Connect^" ip:port")

Nie testowałem innych komend niż echo , lecz z tą komendą działa w 100% :)

W miejscu na początku można umieścić też jakiś tekst do pokazania w konsoli , lecz jeśli nie chcemy nic pisać to wystarczy zostawić tak i wtedy zrobi tylko odstęp np.

"echo ^"Zostales przekierowany^";^"Connect^" ip:port"

  • +
  • -
  • 36


#572005 xREDIRECT [UPDATE 09-02-2011]

Napisane przez SeeK w 16.09.2013 19:39

Poprawiona wersja po update z 29 sierpnia 2013

Załączone pliki


  • +
  • -
  • 2


#580260 [ROZWIĄZANE] Wykrywa i zmienia nick

Napisane przez d0naciak w 25.10.2013 15:24

Działa na domeny oraz IP

#include <amxmodx>
#include <amxmisc>
#include <regex>

#define PATTERN    "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)" // \b
stock const advertising_words[][] =
{
    "www.",
    ".pl",
    ".com",
    ".net",
    ".org",
    ".no-ip",
    ".ru"
}

new g_allArgs[1024], Regex:g_result, g_error[64], g_returnvalue;

public plugin_init()
{
    register_plugin("Anty Reklama", "1.0", "PimP517");
    register_clcmd("say", "hook_say");
    register_clcmd("say_team", "hook_say");
    register_message(get_user_msgid("SayText"), "message")
}

//Chat
public hook_say(id)
{
    //Strony www
    read_args(g_allArgs, 1023)
    //Strony
    for(new i = 0 ; i < sizeof (advertising_words) ; i++)
    {
        if(containi(g_allArgs, advertising_words[i]) != -1)
        {
            return 1;  
        }
    }
    //Adresy IP
    g_result = regex_match(g_allArgs, PATTERN, g_returnvalue, g_error, 63)
    switch (g_result)
    {
        case REGEX_MATCH_FAIL:
        {
            log_amx("REGEX_MATCH_FAIL! %s", g_error)
            return PLUGIN_CONTINUE
        }
        case REGEX_PATTERN_FAIL:
        {
            log_amx("REGEX_PATTERN_FAIL! %s", g_error)
            return PLUGIN_CONTINUE
        }
        case REGEX_NO_MATCH:
        {
            return PLUGIN_CONTINUE
        }
        default:
        {
            regex_free(g_result)
            return PLUGIN_HANDLED
        }
    }
    return PLUGIN_CONTINUE
}

//W nicku
public message()
{
    new arg[32]
    get_msg_arg_string(2, arg, 31)
    if(containi(arg,"name")!=-1)
    {
        return PLUGIN_HANDLED
    }
    return PLUGIN_CONTINUE
}

public client_infochanged(id)
{
    new newname[32],oldname[32]
    get_user_info(id, "name", newname,31)
    get_user_name(id,oldname,31)
    if(!is_user_connected(id) || is_user_bot(id)) return PLUGIN_CONTINUE
    //Strony
    for(new i = 0 ; i < sizeof (advertising_words) ; i++)
    {
        if(containi(newname, advertising_words[i]) != -1)
        {
            set_user_info(id,"name",oldname)
            return PLUGIN_HANDLED
        }
    }
    g_result = regex_match(newname, PATTERN, g_returnvalue, g_error, 63)
    switch (g_result)
    {
        case REGEX_MATCH_FAIL:
        {
            log_amx("REGEX_MATCH_FAIL! %s", g_error)
            return PLUGIN_CONTINUE
        }
        case REGEX_PATTERN_FAIL:
        {
            log_amx("REGEX_PATTERN_FAIL! %s", g_error)
            return PLUGIN_CONTINUE
        }
        case REGEX_NO_MATCH:
        {
            return PLUGIN_CONTINUE
        }
        default:
        {
            regex_free(g_result)
            set_user_info(id,"name",oldname)
            return PLUGIN_HANDLED
        }
    }
    return PLUGIN_CONTINUE
}

public client_putinserver(id)
{
    new name[32]
    get_user_name(id,name,31);
    for(new i = 0 ; i < sizeof (advertising_words) ; i++)
    {
        if(containi(name, advertising_words[i]) != -1)
        {
            set_user_info(id,"name","Zmien Nick")
            return PLUGIN_HANDLED
        }
    }
    g_result = regex_match(name, PATTERN, g_returnvalue, g_error, 63)
    switch (g_result)
    {
        case REGEX_MATCH_FAIL:
        {
            log_amx("REGEX_MATCH_FAIL! %s", g_error)
            return PLUGIN_CONTINUE
        }
        case REGEX_PATTERN_FAIL:
        {
            log_amx("REGEX_PATTERN_FAIL! %s", g_error)
            return PLUGIN_CONTINUE
        }
        case REGEX_NO_MATCH:
        {
            return PLUGIN_CONTINUE
        }
        default:
        {
            regex_free(g_result)
            set_user_info(id,"name","Zmien Nick")
            return PLUGIN_HANDLED
        }
    }
    return PLUGIN_CONTINUE
}

  • +
  • -
  • 1


#578126 AMX Mod X 0.5.0 Dark Edition

Napisane przez Gość w 16.10.2013 18:42

No to jeszcze moje luźne propozycje:

  • Dodać tłumaczenie wpisu amxmodmenu ładowanego z pliku custommenuitems.cfg, poprzez stock AddMenuItem oraz tłumaczyć 2 ostatnie domyślne wpisy.
  • Usunąć wpis statystyk "DarkGL" (csstats.dat).
  • Zwiększyć limit parametrów forwardów z 32 do 1024.
  • Zaktualizować hamdata.ini (niektóre offsety są niepoprawne).
  • Usunąć z maps.ini mapy, których zasobów nie ma w oryginalnej instalce nowego HLDSa, by uniknąć crashy na świeżej instalacji.
  • Usunąć nieużywane linijki z core.ini:
  • amxx_modules	addons/amxmodx/configs/modules.ini
    amxx_plugins	addons/amxmodx/configs/plugins.ini
    
  • Usunąć nieużywaną informację z binarek:
    Can't Attach Module "%s".
  • Zaktualizować zlib do 1.2.8 (używasz starego 1.2.1 z 2003 roku).
  • Dodać poprawiony colorchat.inc zarówno z YELLOW oraz NORMAL.
  • Dodać ukrytą komendę "amxx dark".



#576689 dproto [0.9.391] - Aktualizacja 6027

Napisane przez GwynBleidD w 11.10.2013 11:49

Problem z wyświetlaniem TYLKO graczy steam na liście serwerów "internet" w klientach Steam (zarówno w steamie, jak i w CSie na steam) NIE ZOSTANIE rozwiązany.

 

Przyczyna: lista serwerów "Internet" pobierana jest z masterservera, czyli z serwerów Valve. Kiedyś to serwer informował masterservery ile graczy na nim jest, teraz masterserver sam to odgaduje na podstawie tego, ile klientów steam jest połączonych z serwerem (każdy klient steam wysyła do masterservera informację, że łączy się z danym sewerem, jest to związane z autoryzacją SteamID na serwerach).

 

NIE ZOSTANIE to więc rozwiązane, gdyż NIE MA możliwości na to.

 

I ten sam problem występuje również na RevEMU, z tej samej przyczyny dokładnie.


  • +
  • -
  • 2


#576282 dproto [0.9.391] - Aktualizacja 6027

Napisane przez Misiaczek ;c w 08.10.2013 18:33

Aktualizacja

Aktualizacja do 0.935

 

Info

Przy ustawieniu Hybrydowym Serwery wyświetlają sie i na Steam jak i NS


  • +
  • -
  • 2


#572649 dproto [0.9.391] - Aktualizacja 6027

Napisane przez Cofnij sie w 20.09.2013 21:04

Działa stabilnie na silniku 6132 , mam bety na serwerze i jest  OK :)


  • +
  • -
  • 1


#59730 Task Scheduler - by JustinHoMi

Napisane przez R3X w 25.04.2009 17:34

Task Scheduler - by JustinHoMi

Dzięki niemu przygotujesz plan serwerowych komend wykonywanych co pewien czas lub o konkretnej godzinie. Bazuje na cm_task z ClanMod`a.

Komendy

amx_task <"komenda">

- godzina lub czas powtarzania komendy
<"komenda"> -
- określają sposób wykonywania komend

Flagi
m - czas (pierwszy argument) jest określony w minutach
s - czas (pierwszy argument) jest określony w sekundach
r - powtarzanie komendy
t - określona godzina wykonania komendy

Przykład:
Restartuje grę co 5 minut

amx_task 5 "sv_restart 1" mr


Da znać, że jest południe

amx_task 12:00 "say Mamy poludnie" t


45 sekundowa rozgrzewka

amx_task 45 "sv_restart 1" s



Listę zadań umieszczaamy w pliku amxx.cfg bądź server.cfg.

Załączone pliki


  • +
  • -
  • 25


#568615 AdminChat (GRACZ -k. czerwony) (Treść zgłoszenia -k. zielony)

Napisane przez szelbi w 31.08.2013 10:29

niech autor tematu powie czy działa, gdyż nie wiem czy mam już podmieniać?

 

Działa.


  • +
  • -
  • 1


#568005 AdminChat (GRACZ -k. czerwony) (Treść zgłoszenia -k. zielony)

Napisane przez d0naciak w 28.08.2013 20:19

Znajdź

#include <amxmisc>

W następnej linijce dodaj

#include <ColorChat>

Znajdź funkcję cmdAdminSay i całą podmień na

public cmdSayAdmin(id)
{
    new said[2]
    read_argv(1, said, 1)
    
    if (said[0] != '@')
        return PLUGIN_CONTINUE
    
    new message[192], name[32], authid[32], userid
    new players[32], inum
    
    read_args(message, 191)
    remove_quotes(message)
    get_user_authid(id, authid, 31)
    get_user_name(id, name, 31)
    userid = get_user_userid(id)
    
    log_amx("Chat: ^"%s<%d><%s><>^" chat ^"%s^"", name, userid, authid, message[1])
    log_message("^"%s<%d><%s><>^" triggered ^"amx_chat^" (text ^"%s^")", name, userid, authid, message[1])
    
    if (is_user_admin(id))
        format(message, 191, "(%L)^x03 %s^x04 :  %s", id, "ADMIN", name, message[1])
    else
        format(message, 191, "(%L)^x03 %s^x04 :  %s", id, "PLAYER", name, message[1])

    get_players(players, inum)
    
    for (new i = 0; i < inum; ++i)
    {
        // dont print the message to the client that used the cmd if he has ADMIN_CHAT to avoid double printing
        if (players[i] != id && get_user_flags(players[i]) & g_AdminChatFlag)
            ColorChat(id, TEAM_COLOR, "%s", message)
    }
    
    ColorChat(id, TEAM_COLOR, "%s", message)
    
    return PLUGIN_HANDLED
}

  • +
  • -
  • 1


#568522 [ROZWIĄZANE] timeleft w sayu co jakiś czas

Napisane przez szelbi w 30.08.2013 20:31

#include <amxmodx>
#include <colorchat>

public plugin_init()
{
	register_plugin("Timeleft na czacie", "0.2", "szelbi");
	
	set_task(120.0, "pokaz", .flags="b")
}
 
public pokaz()
{
	new czas[6];
	format_time(czas, 5, "%M:%S", get_timeleft());
	ColorChat(0, NORMAL, "Do konca mapy pozostalo^x04 %s^x01 min.", czas)	
}

  • +
  • -
  • 1


#568518 [ROZWIĄZANE] timeleft w sayu co jakiś czas

Napisane przez szelbi w 30.08.2013 20:24

Można też inaczej.
 
#include <amxmodx>

public plugin_init()
{
	register_plugin("Timeleft na czacie", "0.1", "szelbi");
	
	set_task(120.0, "pokaz", .flags="b")
}
 
public pokaz()
{
	new czas[6];
	format_time(czas, 5, "%M:%S", get_timeleft());
	client_print(0, print_chat, "Do konca mapy pozostalo %s min.", czas);
}

  • +
  • -
  • 1


#568506 [ROZWIĄZANE] timeleft w sayu co jakiś czas

Napisane przez aragog w 30.08.2013 20:13

#include 
#include 

#define CZAS 120.0

public plugin_init(){
	set_task(CZAS, "timeleft", .flags="b")
}
 
public timeleft(){
	client_cmd(0, "say timeleft")
}
Czas co jaki pokazuje ustawiasz sobie w linijce #define CZAS 120.0 gdzie liczba odpowiada sekundom
  • +
  • -
  • 1


#568402 Przerwa w menu - jak?

Napisane przez Amaroq w 30.08.2013 13:57

menu_addblank
1. parametr to uchwyt menu
2. parametr slot ustaw na 0
  • +
  • -
  • 1