Anti-Rcon-Command

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • moin leute,
    ich versuche schon seit 2 Tagen hinzubekommen, das wenn man ingame versucht einen rcon command zu machen gekickt wird. nur wird man jetzt bei jedem befehl gekickt.


    if (strcmp("/rcon", cmdtext, true, 0) == 0)
    {
    new ip = GetPlayerIp(playerid, sendername, sizeof(ip));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), " s% hat versucht sich mit der IP: s% als Rcon ADmin einzuloggen!", sendername, ip);
    ABroadCast(FARBE_ROT,string,1);


    Kick(playerid);

    return 1;
    }

  • so?


    if (strcmp("/rcon", cmdtext, true, 0) == 0)
    {
    if(!IsPlayerAdmin(playerid))
    {
    new ip = GetPlayerIp(playerid, sendername, sizeof(ip));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), " s% hat versucht sich mit der IP: s% als Rcon ADmin einzuloggen!", sendername, ip);
    ABroadCast(FARBE_ROT,string,1);


    Kick(playerid);
    }
    return 1;
    }

    Zitat

    Nimm die Dinge wie sie sind: schlag, wenn du schlagen musst, tritt, wenn du Treten musst
    -Bruce Lee

  • eig. garnet mal so schlecht. aber man sollte IMMER RCON lassen, falls das eigene mal abkackt. :S
    aber interessiert mich auch :P

  • Oder so ?:



    public OnRconCommand(cmd[])
    {
    if(!strcmp("login",cmd,true))
    {
    Kick(playerid);
    }
    return 1;
    }


    dann wird der, der /rcon login macht gekickt.

  • Oha .. .das hab ich nicht beachtet :/
    Da weiss ich auch nich weiter..evtl so (nur dcmd kB weiter zu denken:D)



    dcmd(rcon,4,cmdtext);


    dcmd_rcon(playerid,params[])
    {
    if(strcmp(params,"login",true) == 0)
    {
    Kick(playerid);
    return 1;
    }
    return 1;
    }

  • Also Fischer ich habe oben gar nciht gepeikt was du meinst :D SrY bin nicht gerade der schlauste

  • Ja beim Callback "OnRconCommand(cmd[])" gibts kein "playerid" deswegen würde Kick(playerid); auch nicht funktionieren.

  • nochmal für alle dies nicht verstanden haben:


    ich ahbe ein eigenes adminsystem das mit nicht im stich lässt^^


    so nun will ich verhindern das sich jemand als rcon admin einloggt bzw. befehle damit machen kann wie /rcon kick oder so. verstanden?

  • Dann wärs ja eig. am besten /rcon ganz zu deaktivieren...


    So wie Nino es schon geschrieben hat:

    public OnRconCommand(cmd[])
    {
    return 0;
    }

  • Beim rausnehmen funzen die Befehle noch aber wenn du dort ein "return 0;" setzen würdest wären meiner Meinung nach alle Rcon-Befehle deaktiviert.

  • Sonst kann man es bei diesen befehlen doch mit getname machen oder so das da [NeS] drine sein muss weil ich habe gehört das wenn einer neuer mit [NeS] vorm namen kommmt dann wird er gekickt weil man das nihct vorm namen haben darf oder so ^^

  • Hmmm das ist seehr weit hergeholt.. wie oben mehrmals erwähnt is beim Callback "OnRconCommand" kein "playerid" vorhanden denn sonst würde es wahrscheinlich "OnPlayerRconCommand" heissen.


    Vielleicht redet Fischer gar nicht vom "NeS" Server...

  • oder so: ?
    public OnRconCommand(cmd[])
    {
    if(strcmp(cmd,"login",true) == 0) return 1;
    return 0;
    }


    Ich kann nur raten..


    Also im eng. forum hab ich gelesen dass man einfach so nicht alle Rcon-Commands deaktivieren kann mit "return 0;" oder "return 1;"