Beiträge von #save

    Guten Morgen,


    ich habe ein Problem: Ich kann bei einem mehrdimensionellen Array kein sizeof anwenden.


    Beispiel:

    if (GetPVarInt(playerid, "SkinSelect") == sizeof(Skins[GetPVarInt(playerid, "playertype")]))


    Dies ergibt folgende Meldung:

    Code
    C:\xxx\gamemodes\dmserver.pwn(2362) : error 001: expected token: "]", but found "-identifier-"
    C:\xxx\gamemodes\dmserver.pwn(2362) : error 001: expected token: ";", but found "]"
    C:\xxx\gamemodes\dmserver.pwn(2362) : error 029: invalid expression, assumed zero
    C:\xxx\gamemodes\dmserver.pwn(2362) : fatal error 107: too many error messages on one line


    Der Fehler liegt bei dir if- Abfrage. Ich möchte wissen, wie groß die Kapazität des mehrdimensionellen Array nach Skins[] ist.

    Oh ja, sorry. Das habe ich ganz übersehen.
    public AntiMoneyHack()
    {
    new playername[MAX_PLAYER_NAME], string[256];

    for (new i = 0; i <= MAX_PLAYERS; i++)
    {
    if (IsPlayerConnected(i) && GetPVarInt(i, "loggedin") == 1)
    {
    GetPlayerName(i, playername, sizeof(playername));

    if (GetPVarInt(i, "money") < GetPlayerMoney(i))
    {
    format(string, sizeof(string), "%s wurde vom Server gebannt, Grund: Moneyhack", playername);
    SendClientMessageToAll(darkred, string);


    format(string, sizeof(string), "[Ban] System >> Dauer: permanent - Grund: Moneyhack (Datenbank Geld: $%d Dollar | In-Game Geld: $%d Dollar)", GetPVarInt(i, "money"), GetPlayerMoney(i), playername);
    InsertUserHistory(GetUserID(playername), string);

    BanUser(0, GetUserID(playername), 0, "Moneyhack");
    }
    else
    {
    SetPlayerMoney(i, GetPlayerMoney(i));
    }
    }
    }
    }

    Guten Abend,


    da mein DM Script in der letzten Zeit des öfteren abgestürzt ist und jetzt gerade ebenfalls, möchte ich euch noch zusätzlich um Rat bitten bzw. mir Tipps zu geben an was es genau liegen könnte.


    Der Crasdetector bringt folgende Errors beim Absturz:


    Vorhandene Serverplugins:

    Code
    MySQL Plugin von StrickenKid
    Streamer von Icognito (wenn ich das richtig geschrieben habe)
    SSCANF Plugin
    Crashdetector


    Zusätzliche Serverinformationen:

    Code
    V-Server Linux Debian 6 64bit


    Meines Erachtens liegt dies nicht an meinem Script sondern an der Library libc.so.6 in lib32. Oder wie seht ihr das ?


    //Edit: Server stürzt andauernt ab...

    Ich habe mir mal den Server überwacht und er war nicht wirklich ausgelastet. (Über htop) Was mir aber neulich mal aufgefallen ist das bei einer OneHit Sniper der Server abstürzen kann.


    Beispiel:
    Ich habe eine Sniper -> Ich schieße auf einen Spieler -> Server stürzt ab


    Hatte damit jemand schonmal Erfahrungen gehabt ? Ich gucke derzeit ob es nur an der Sniper lag das der Server abgeschmiert ist. Desweiteren werde ich mir mal das Tutorial von Cambell anschauen, da es mir auf den ersten Blick ziemlich gut gefallen hat.

    Guten Tag,


    jeder kennt doch die Godfather Edits. Dort ist es doch immer so das die Stats die sich ein Spieler im Spiel erarbeitet erst gespeichert werden, wenn dieser sich ausloggt. Oder z.B. alle 45 Minuten zusätlich noch gespeichert werden. Als ich mal wieder ein bisschen angefangen habe zu scripten, dachte ich mir wieso ich das nicht gleich so mache das alles was der Spieler In-Game macht direkt in der MySQL Datenbank abgespeichert wird.


    Ich merke aber bei mir privat zu Hause immer, dass das Script langsamer wird. Lade ich meinen DM Server auf einen V-Server hoch von mir, läuft das ganze schon schneller. Jedoch merke ich, dass das Script sich einfach mal beendet. Ich versuche derzeit den Fehler zu finden oder herauszufinden wo genau das immer auftritt. Es ist aber immer unterschiedlich (ohne eine bestimmte Aktion durchzuführen).


    Ich denke immer das wenn ich alles was sich der Spieler In-Game erarbeitet direkt abgespeichert wird, dass dies eventuell ein Problem sein könnte. Ich habe derzeit den MySQL Server extern laufen, da ich die Probleme mit dem MySQL Plugin von StrickenKid habe das ich nicht über localhost auf einem Linux V-Server connecten kann (wer hierfür eine Lösung hat, soll mich bitte kontaktieren. An diesem Problem verzweifle ich langsam).


    Kann mein Vorhaben eventuell mal zu Problemen führen oder kann sogar dies der Auslöser für mehrere Serverabstürze sein ?


    Eure Meinung ist mir ziemlich wichtig, da ich vielleicht da wieder ansetzen kann.

    Das ergibt natürlich keinen Sinn weil ich es schnell auf meinem Laptop geschrieben habe, da ich an mein Selfmade nicht rankam. Warum sollte ich dem Spieler eine Nachricht senden welche ID's die Autos haben :wacko: Aber gut, das kann natürlich auch keiner wissen ^^


    Aber würde ich diesen Befehl ausführen, bringt er mir "SERVER: Unknown Command". Um alles andere auszuschließen habe ich halt nur die for- Schleife in den Befehl eingebaut und nicht mehr. Bevor ihr irgendwo anders ansetzt. Ich verstehe nämlich den Fehler garnicht.


    #Push - Da das Problem noch nicht gelöst wurde.

    Guten Abend,


    ich habe ein sehr großes Problem. Ich muss in ocmd ein paar Befehle erstellen in denen ich eine for- Schleife ausführe in der MAX_VEHICLES der Maximalwert ist. Das Problem bei diesen Befehlen ist, sie werden garnicht ausgeführt und bringen die Meldung "SERVER: Unknown Command".


    So sieht jetzt mein Command aus:

    ocmd:test (playerid, params[])
    {
    for (new i = 0; i <= MAX_VEHICLES; i++)
    {
    SendClientMessage(playerid, grey, i);
    }
    return 1;
    }


    Wenn ich das ganze aber umändere in:


    ocmd:test (playerid, params[])


    {


    for (new i = 0; i <= MAX_PLAYERS; i++)


    {


    SendClientMessage(playerid, grey, i);


    }


    return 1;


    }



    Wird der Befehl mir ausgeführt und er bringt alle 250 Spieler ID's in den Chat.


    Ich habe schon einmal daran gedacht das vielleicht MAX_VEHICLES einen sehr hohen Wert hat. Aber wenn ich einfach MAX_VEHICLES durch 2 austausche, dann bringt er mir auch SERVER: Unknown Command.


    Ist derzeit ein richtiges Problem für.


    Vielen Dank im Voraus.

    Jetzt wo du es sagst, er meint zwar seine Tastatur ist sauber aber mir ist jetzt auch was eingefallen. Vielleicht werden diese Tasten durch eine Flüssigkeit oder durch etwas anderes mit hinunter gedrückt. Er hat auch einen kleinen Bruder der am PC ist und das könnte alles möglich sein ^^


    Er meint die ist sauber, ich glaube es noch nicht so wirklich. Danke für deine Hilfe.


    @Apple_5g: Das hatte ich auch vermutet aber er hat nichts offen. Ging ja noch bis vor kurzem.

    Guten Tag,


    der Titel hört sich ein bisschen anders an wie es eigentlich gemeint ist. Ich schreibe hier für einen Freund da ich ihm nicht helfen kann und er hier ja nicht schreiben kann wegen seinem Problem. Ich versuche es euch mal zu erklären (schonmal im Voraus: Es liegt nicht an einer kaputten Tastatur - weis auch nicht was er gemacht hat. Wie kann man nur so viele Probleme haben :pinch: :( Wenn er z.B. den Buchstaben "t" eingibt, kommt in den Chat/Word/TeamSpeak 3 Client/ICQ/Skype wie auch immer statt einem "t" z.B. "tr#". Warum das so ist, kann sich irgendwie keiner erklären. Aus einem "a" wird dann z.B. "aed".


    Genauer kann ich es selber nicht erklären da, ich ihn nicht persönlich kenne und ich auch nicht das auf seinem PC gesehen hat. Ich gebe ihm aber den Link dieses Threads und werde auch für ihn antworten, da er wie gesagt nicht schreiben kann ^^


    Danke schonmal im Voraus :)


    dcmd_frakmats(playerid, params[])
    {
    new mats, frak, preis;
    if(PlayerInfo[playerid][pMember] > 0)
    {
    frak = PlayerInfo[playerid][pMember];
    }
    else if(PlayerInfo[playerid][pLeader] > 0)
    {
    frak = PlayerInfo[playerid][pLeader];
    }
    if(frak != 5 && frak != 6 && frak != 12 && frak != 13 && frak != 14 && frak != 16 && frak != 17 && frak != 19 && frak != 20 && frak != 23)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist in keiner Gang / Mafia!");
    return 1;
    }
    if(!IsPlayerInRangeOfPoint(playerid, 8.0, 2805.0444,-1434.0425,40.0484))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du kannst hier keine Fraktions-Materialien kaufen!");
    return 1;
    }
    if(sscanf(params, "d", mats))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Benutzung: /frakmats [Anzahl]");
    SendClientMessage(playerid, COLOR_GRAD1, "*Du kannst maximal 500 Fraktions-Materialien mit dir nehmen.");
    SendClientMessage(playerid, COLOR_GRAD1, "*1 Fraktions-Material kostet 10$.");
    return 1;
    }
    if(mats > 500)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du kannst maximal 500 Fraktions-Materialien kaufen!");
    return 1;
    }
    if (mats < 0)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du musst mindestens 1 Material kaufen.");
    return 1;
    }
    if(FrakMatsHolding[playerid] + mats > 500)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "So viele Fraktions-Materialien könntest du nicht mit dir tragen!");
    return 1;
    }
    preis = mats * 10;
    GivePlayerMoney(playerid, -preis);
    FrakMatsHolding[playerid] += mats;
    format(ALLSTRING, sizeof(ALLSTRING), "*Du hast %d Fraktions-Materialien für %d$ gekauft. Bringe sie nun zur Fraktionskammer!", mats, preis);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, ALLSTRING);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Solltest du reloggen / sterben verlierst du die Materialien wieder!");
    return 1;
    }


    Zeile 34 ist es ;)

    Your answer = Fail²

    Jo sorry, hast recht, sehe ich auch gerade was ich für einen Mist geschrieben habe ^^


    @Thema: Mir ist gerade aufgefallen das du ein "ä" im Pfad drinnen hast. Ersetze dies mal durch ae. Ändere das im Ordner auch. In HTML ist es ebenfalls so das man z. B. keine Bilder laden kann die ein "ä, ö oder ü" im Dateinamen haben.