Beiträge von Darkii.[1337]

    Aus
    stock SpielerName(playerid)
    {
    new SpielerName[MAX_PLAYER_NAME]; //<-- Die Fehler Zeile
    GetPlayerName(playerid,SpielerName,sizeof(SpielerName));
    return SpielerName;
    }


    machst du
    stock SpielerName(playerid)
    {
    new name[MAX_PLAYER_NAME]; //<-- Die Fehler Zeile
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }

    format(SpielerDatei,sizeof(SpielerDatei),"/Spieler/%s.txt",SpielerName);


    zu


    format(SpielerDatei,sizeof(SpielerDatei),"/Spieler/%s.txt",SpielerName(playerid));

    Guten Tag,


    Ich habe folgene Errors und finde den Fehler nicht-.-
    Ich hoffe, mir kann jemand helfen.


    Errors:

    Code
    E:\Server\neu\gamemodes\gm3.pwn(5831) : error 075: input line too long (after substitutions)
    E:\Server\neu\gamemodes\gm3.pwn(5832) : error 017: undefined symbol "pla"
    E:\Server\neu\gamemodes\gm3.pwn(5835) : warning 217: loose indentation
    E:\Server\neu\gamemodes\gm3.pwn(5835) : error 017: undefined symbol "yerid"
    E:\Server\neu\gamemodes\gm3.pwn(5835) : error 029: invalid expression, assumed zero
    E:\Server\neu\gamemodes\gm3.pwn(5835) : error 029: invalid expression, assumed zero
    E:\Server\neu\gamemodes\gm3.pwn(5835) : fatal error 107: too many error messages on one line
    
    
    6 Errors.


    Code:

    sscanf(val, "e<p<|>{i}{s[128]}{s[MAX_PLAYER_NAME]}iiiiiiiiiiiiiiiiii{i}{s[32]}{s[32]}iiiii>",SpielerInfo[playerid][pEhrenG],SpielerInfo[playerid][pEhrenB],SpielerInfo[playerid][pMoney],SpielerInfo[playerid][pAdminlevel],\
    SpielerInfo[playerid][pWantedlevel],SpielerInfo[playerid][pBaned],SpielerInfo[playerid][pWarns],SpielerInfo[playerid][pZeitSeitPayDay],SpielerInfo[playerid][pLeader],SpielerInfo[playerid][pFraktion],\
    SpielerInfo[playerid][pRank],SpielerInfo[playerid][pKnastZeit],SpielerInfo[playerid][pHandyNummer],SpielerInfo[playerid][pSkin],SpielerInfo[playerid][pDonatorRank],SpielerInfo[playerid][pHausbesitzer],\
    SpielerInfo[playerid][pHausmieter],SpielerInfo[playerid][pMieterslot],SpielerInfo[playerid][pTickets],SpielerInfo[playerid][pFragen],SpielerInfo[playerid][pCheaters],SpielerInfo[playerid][pTimeBan],\
    SpielerInfo[playerid][pTankstelle]);



    Diesen Error verstehe ich, weiß aber nicht, wie ich ihn beheben kann

    Code
    E:\Server\neu\gamemodes\gm3.pwn(5831) : error 075: input line too long (after substitutions)



    Gruß
    Darkii

    Desto höher eine Talkpower einer Gruppe ist, desto höher steht er..


    z.B:


    Wenn Administrator 60 Talkpower hat und Supporter 70 hat, würde Supporter über Administrator stehen.


    Wenn Moderator 30 Talkpower hat und Server Leiter 100 hat, würde Server Leiter über Moderator stehen.


    Die Zeilen aus den Script und nicht den Compiler.


    Kopier mal die Zeilen aus deinem Script, wo diese Errors sind und poste die hier


    Poste mal die Zeilen hier....

    Hast du da eigentlich überhaupt was geändert oder meinst du damit ohne das definieren oben?


    Das letzte, was ich gepostet habe, habe ich nochmal was umgenannt. Das müsste dann auch funktionieren.
    Hatte vergessen rIP du definieren und hats dann nochmal richtig gepostet

    So müsste es gehen, ist aber ungetestet:



    public OnRconLoginAttempt(ip[], password[], success)
    {
    if(!success)
    {
    new rIP[16];
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    GetPlayerIp(i, rIP, sizeof(rIP));
    if(!strcmp(ip, rIP, true))
    {
    FailedRCONLogins[i] = FailedRCONLogins[i]+1;
    new str[128];
    format(str,128,"Fehlgeschlagener RCON Login! [Password: %s] [Versuch: %i/3]",password,FailedRCONLogins[i]);
    SendClientMessage(i,ROT,str);
    if(FailedRCONLogins[i] == 3)
    {
    SendClientMessage(i,ROT,"Du hast 3 Fehlgeschlagene RCON Loginversuche und wurdest gekickt!");
    Kick(i);
    }
    }
    }
    }
    return 1;
    }

    Okay genau so wollte ich es :D


    Letze Frage:


    Und wie kann ich es so einrichten dass wenn man dass RCON Passwort 3 mal Falsch eingibt nur gekickt wird?Wäre nett wenn du mir dass auch verratest.


    Oben ins Script:
    new FailedRCONLogins[MAX_PLAYERS];


    Dann:

    public OnRconLoginAttempt(ip[], password[], success)
    {
    if(!success)
    {
    new rflog[16];
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    GetPlayerIp(i, rflog, sizeof(rflog));
    if(!strcmp(ip, rflog, true))
    {
    FailedRCONLogins[i] = FailedRCONLogins[i]+1;
    new str[128];
    format(str,128,"Fehlgeschlagener RCON Login! [Password: %s] [Versuch: %i/3]",password,FailedRCONLogins[i]);
    SendClientMessage(i,ROT,str);
    if(FailedRCONLogins[i] == 3)
    {
    SendClientMessage(i,ROT,"Du hast 3 Fehlgeschlagene RCON Loginversuche und wurdest gekickt!");
    Kick(i);
    }
    }
    }
    }
    return 1;
    }


    //edit folgendes Vergessen und im PWN Code verbessert: new rflog[16];


    Achsooo.. Ja dann machs einfach so:



    public OnRconLoginAttempt(ip[], password[], success)
    {
    return 1;
    }

    Und wie muss ich dass machen wenn jeder sich als RCON Admin einloggen kann?



    Also z.B ich mache mir grad ein neuen Account und melde logge mich als RCON Admin ein.Soll ich dass auf 0 stellen?


    Machs so:



    public OnRconLoginAttempt(ip[], password[], success)
    {
    if(success)
    {
    new pip[16];
    for(new i; i<MAX_PLAYERS; i++)
    {
    GetPlayerIp(i, pip, sizeof(pip));
    if(!strcmp(ip, pip, true))
    {
    if(PlayerInfo[i][pAdmin] < DEIN_ADMINLEVEL)
    {
    Ban(i);
    }
    else return 1;
    }
    }
    }
    return 1;
    }


    Statt "DEIN_ADMINLEVEL" schreibst du das Adminlevel rein, was benötigt werden soll, um sich als Rcon einzuloggen.
    Wer dieses Adminlevel NICHT hat, sich aber versucht einzuloggen, wird gebannt

    änder das mal so ab:

    public OnRconLoginAttempt(ip[], password[], success)
    {
    if(success)
    {
    new pip[16];
    ////foreach(Player,i)
    for(new i; i<MAX_PLAYERS; i++)
    {
    GetPlayerIp(i, pip, sizeof(pip));
    if(!strcmp(ip, pip, true))
    if(PlayerInfo[i][pAdmin] < 3) Ban(i); // An dieser Zeile zeigt er an, dass alle unter pAdmin 3 gebannt werden.
    }
    }
    }


    änder das Einfach zu deinem passenen Adminlevel ab und dann müsste gegen. Ansonnsten lösch die Schleife raus, die die Spieler durch geht.

    In der Server.cfg habe ich

    Code
    maxnpc 10


    eingetragen. Muss man da noch etwas anderes eintragen?


    /edit
    siehe oben, da sieht man, wo ich überall IsPlayerNPC abgefragt habe. Dazu noch ist es ein Gamemode und nicht Filterscript.