Szerző Téma: Ping határ.  (Megtekintve 1883 alkalommal)

Nem elérhető SSK

  • 232
    • Profil megtekintése
Ping határ.
« Dátum: 2013. január 04. - 19:03:28 »
0 Show voters
Sziasztok!
Készítettem nektek egy Ping határ FilterScriptet!Ami annyit csinál hogyha valakinek magasabb a pingje pl: 250-nél azt kickeli a rendszer!
Elkészítési idõ: 5 perc.
Most éppen akinek 250-nél nagyobb a pingje azt rúgja ki.De ha át szeretnéd állítani a szkript elején van hogy \"#define MAX_PING 250\" a 250-et írd át amennyire szeretnéd!
Kód:
 
#define FILTERSCRIPT
#include <a_samp>
#define piros 0xFF0000C8
#define MAX_PING 250
public OnPlayerUpdate(playerid)
{
new string[256];
new nev[MAX_PLAYER_NAME];
GetPlayerName(playerid, nev, sizeof(nev));
if(GetPlayerPing(playerid) >= MAX_PING)
{
format(string, sizeof(string), \"%s ki lett rúgva a rendszer által!Indok: Magas ping: %d MAX: 250\", nev, MAX_PING);
SendClientMessageToAll(piros, string);
    Kick(playerid);
}
return 1;
}

 
Link:
PWN: http://www.mediafire.com/?0g1olcy06hyh5w2
AMX: http://www.mediafire.com/?taxf1nlw55t53z9
Remélem hasznotokra válik! :D
« Utoljára szerkesztve: 2013. január 04. - 19:39:05 írta <[£u$ta]> »

Nem elérhető KDDomi

  • 976
    • Profil megtekintése
Ping határ.
« Válasz #1 Dátum: 2013. január 05. - 14:00:24 »
0 Show voters
Csak nekem tünt fel hogy kiiratod hogy ki lett rúgva, és azt is kiiratod hogy mennyi volt a pingje és hogy mennyi a max ping? Csak hogy nem kérdezted le a pingjét.
 
#define FILTERSCRIPT
#include <a_samp>
#define piros 0xFF0000C8
#define MAX_PING 250
public OnPlayerUpdate(playerid)
{
        new string[256];
        new nev[MAX_PLAYER_NAME];
        new ping;
        GetPlayerName(playerid, nev, sizeof(nev));
        GetPlayerPing(playerid, ping);
        if(GetPlayerPing(playerid) >= MAX_PING)
        {
                format(string, sizeof(string), \"%s ki lett rúgva a rendszer által!Indok: Magas ping: %d MAX: 250\", nev, ping, MAX_PING);
                SendClientMessageToAll(piros, string);
            Kick(playerid);
        }
        return 1;
}

 
Nem teszteltem! Remélem mûködik!

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Ping határ.
« Válasz #2 Dátum: 2013. január 05. - 14:49:10 »
0 Show voters
<-\" post=\"381844\" timestamp=\"1357390824\"]
Csak nekem tünt fel hogy kiiratod hogy ki lett rúgva, és azt is kiiratod hogy mennyi volt a pingje és hogy mennyi a max ping? Csak hogy nem kérdezted le a pingjét.
 
#define FILTERSCRIPT
#include <a_samp>
#define piros 0xFF0000C8
#define MAX_PING 250
public OnPlayerUpdate(playerid)
{
        new string[256];
        new nev[MAX_PLAYER_NAME];
        new ping;
        GetPlayerName(playerid, nev, sizeof(nev));
        GetPlayerPing(playerid, ping);
        if(GetPlayerPing(playerid) >= MAX_PING)
        {
                format(string, sizeof(string), \"%s ki lett rúgva a rendszer által!Indok: Magas ping: %d MAX: 250\", nev, ping, MAX_PING);
                SendClientMessageToAll(piros, string);
            Kick(playerid);
        }
        return 1;
}

 
Nem teszteltem! Remélem mûködik!
 
[/quote]
Hát, alapból nem fog mûködni, mivel már átfordításnál argumentum hibát fog kiírni. Ezen felül nem találom jó ötletnek létrehozni a változót olyan helyen, ami meghívódik másodpercenként (átlagban) 14x.

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Ping határ.
« Válasz #3 Dátum: 2013. január 05. - 14:51:58 »
0 Show voters
Mint ahogy DrAkE is mondta, eléggé pazarolt.
 

    #include <a_samp>
    #define FILTERSCRIPT
    #define piros 0xFF0000C8
     
    #define MAX_PING 250
    new ping;
     
    public OnPlayerUpdate(playerid)
    {
            ping = GetPlayerPing(playerid);
            if(ping >= MAX_PING)
            {
                    new string[256], nev[MAX_PLAYER_NAME];
                    GetPlayerName(playerid, nev, sizeof(nev));
                    format(string, sizeof(string), \"%s ki lett rúgva a rendszer által! Indok: Magas ping. Ping: %d. Maximum ping: %d.\", nev, ping, MAX_PING);
                    SendClientMessageToAll(piros, string);
                    Kick(playerid);
            }
            return 1;
    }
« Utoljára szerkesztve: 2013. január 05. - 14:53:38 írta Cannonn »

Nem elérhető Amf

  • 1459
    • Profil megtekintése
Ping határ.
« Válasz #4 Dátum: 2013. február 01. - 16:53:11 »
0 Show voters
Szerintem ez így nem teljesen jó.

Így azt a pinget nézi ami abban a pillanatban van.


Mivel hogyha 20-30 az átlag pinged és felugrik egyszer a max ping fölé, kickel a szerver.


Úgy az igazi ( szerintem ), hogyha átlagot számolsz és a-szerint fut le a többi kód.

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Ping határ.
« Válasz #5 Dátum: 2013. február 01. - 18:07:11 »
0 Show voters
Grat hozzá.  ;) Szép Lett.
« Utoljára szerkesztve: 2013. február 01. - 20:21:25 írta ZyZu »

Ping határ.
« Válasz #6 Dátum: 2013. február 03. - 00:45:43 »
0 Show voters
Idézetet írta: AmF date=1359733991\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"31944\" data-ipsquote-contentclass=\"forums_Topic
Szerintem ez így nem teljesen jó.

Így azt a pinget nézi ami abban a pillanatban van.


Mivel hogyha 20-30 az átlag pinged és felugrik egyszer a max ping fölé, kickel a szerver.


Úgy az igazi ( szerintem ), hogyha átlagot számolsz és a-szerint fut le a többi kód.






#include <a_samp>
#define FILTERSCRIPT
#define piros 0xFF0000C8
#define MAX_PING 250 //Mennyi ping után dobja ki
#define MAX_CHECKS 10 //Mennyi mérést átlagoljon
new Ping[MAX_PLAYERS][MAX_CHECKS], Last[MAX_PLAYERS]=0;
public OnPlayerUpdate(playerid)
{
new last=Last[playerid];
        Ping[playerid][last] = GetPlayerPing(playerid);
Last[playerid]++;
new ping;
for(new i; i<MAX_CHECKS; i++)
{
    ping+=Ping[playerid]; //Összeadja a pingeket
}
ping/=MAX_CHECKS;
        if(ping >= MAX_PING)
        {
                new string[256], nev[MAX_PLAYER_NAME];
                GetPlayerName(playerid, nev, sizeof(nev));
                format(string, sizeof(string), \"%s ki lett rúgva a rendszer által! Indok: Magas ping. Ping: %d. Maximum ping: %d.\", nev, ping, MAX_PING);
                SendClientMessageToAll(piros, string);
                Kick(playerid);
        }
        return 1;
}

 

Dupla hozzászólás automatikusan összefûzve. ( 2013. február 03. - 00:49:03 )

De nem teszteltem, lehet, hogy valami nem jó.


Dupla hozzászólás automatikusan összefûzve. ( 2013. február 03. - 01:04:14 )

Jé, most már alapból kékkel irja a \"Dupla hozzászólás...\" szöveget? :o
« Utoljára szerkesztve: 2013. február 03. - 01:04:14 írta Hun_Norberto »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal