Spieler Geld wird oft auf 0$ gesetzt

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
  • Hey,


    Wenn jetzt ein Spieler bsp. aus einer Fraktion von einem Admin gekickt wird , hat der Spieler Aufeinmal 0$


    Und das kommt öfters , beim Login bei manchen kommt auch das der Spieler mehr als 50k Gespawnt hat usw.


    Kann mir wer helfen?

  • //----------------------------------[AUNINVITE]------------------------------------------------
    if(strcmp(cmd, "/auninvite", true) == 0)
    {
    if(IsPlayerConnected(playerid) && PlayerInfo[playerid][pAdmin] >= 3)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /auninvite [playerid/Name]");
    return 1;
    }
    new para1;
    para1 = ReturnUser(tmp);
    if(IsPlayerConnected(para1) && para1 != INVALID_PLAYER_ID)
    {
    if (PlayerInfo[para1][pMember] > 0)
    {
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    printf("[ADM]: %s hat %s aus seiner Fraktion geworfen.", sendername, giveplayer);
    format(string, sizeof(string), "Du wurdest aus deiner Fraktion von [GUR] Admin %s gekickt.", sendername);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    SendClientMessage(para1, COLOR_LIGHTBLUE, "Du wurdest aus deiner Fraktion von einem Admin Gekickt! Nun bist du wieder ein Zivilist");
    gTeam[para1] = 3;
    PlayerInfo[para1][pTeam] = 3;
    PlayerInfo[para1][pMember] = 0;
    PlayerInfo[para1][pRank] = 0;
    PlayerInfo[para1][pChar] = 0;
    PlayerInfo[para1][pGehalt] = 0;
    new rand = random(sizeof(CIV));
    SetSpawnInfo(para1, gTeam[para1], CIV[rand],0.0,0.0,0.0,0,0,0,0,0,0,0);
    PlayerInfo[para1][pModel] = CIV[rand];
    MedicBill[para1] = 0;
    SpawnPlayer(para1);
    format(string, sizeof(string), " Du hast %s aus seiner Fraktion gekickt.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Spieler ist in keiner Fraktion!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Spieler ist nicht verfügbar!");
    }
    }
    return 1;
    }


    //Login


    Function OnPlayerRequestClass(playerid, classid)
    {
    if(IsPlayerNPC(playerid)) return 1;


    if(gPlayerAccount[playerid] == 1 && gPlayerLogged[playerid] == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Bitte trage dein Passwort ein um dich Einzuloggen","Login","Abbrechen");
    PlayAudioStreamForPlayer(playerid, "http://www.iloveradio.de/listen.pls");
    }
    else if(gPlayerAccount[playerid] == 0 && gPlayerLogged[playerid] == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_MSGBOX,"Account","Du benötigst einen Account, um auf diesem Server zu spielen!","Erstellen","Abbrechen");
    PlayAudioStreamForPlayer(playerid, "http://www.iloveradio.de/listen.pls");
    }


    PlayerPlaySound(playerid, 1185, 0.0, 0.0, 0.0);
    PlayerInfo[playerid][pModel] = Peds[classid][0];
    SetPlayerTeamFromClass(playerid,classid);
    SetupPlayerForClassSelection(playerid);
    return 1;
    }




    AntiCheat hab ich M_Bot

  • Was meinen die "wachen" coder, Fehler im "public OnPlayerUpdate" oder im "public OnPlayerSpawn"?



    Das Problem was hier nun jeder haben wird, ist das man hier die Nadel im Heuhaufen sucht. Kannst du den Fehler zurückverfolgen oder ihn eingrenzen auf Bestimmte Codestellen im Script? War das Problem seitdem du das Script hast oder seitdem du etwas verändert hast, kannst du so vielleicht den Fehler eingrenzen?

  • **Glaskugel raushol**
    **Zauberformel sprech**
    **in die Glaskugel gugg**
    Ahhhh da ist dein Problem deswegen geht das nicht, willst du es auch wissen? **Glaskugel hinhalt**



    Meine güte wie willst du hilfe bekommen, wenn du es noch niemals schaffst Informationen zu geben die einem Vielleicht dabei helfen könnten DEIN problem zu lösen?


    So und nu:


    • Welches Script ist es (LINK zu dem Script)
    • Wann genau tritt der Fehler immer auf
    • Was hast du schon Versucht um den Fehler zu beheben (Ausser diesen Tread eröffnet)

    Und nun komm nicht auf den Trichter auf diesen Beitrag zu antworten, ohne das du nicht alle 3 Fragen beantwortet hast. Ich schwöre dir, dann reiß ich dir dein W-Lan kabel raus ;)

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Ich vermute jetzt mal, ohne das Script zu kennen, das dein Anticheat merkt, das ein Spieler bei jedem Spawn (Nach Login spawnt er, und beim Fraktions-Kick spawnt er auch!) mehr als 50k hat, und das dein M_Bot das dann auf 0$ setzt. Nimm die Funktion mal raus, warscheinlich in der M_Bot.inc, und teste dann mal.


    • native M_GetPlayerMoney(playerid);

    • native M_ResetPlayerMoney(playerid);

    • native M_GivePlayerMoney(playerid,summe);

    • native M_SetPlayerMoney(playerid,summe);


      Daran gedacht?