Beiträge von CaptainKevin

    Guten Tag, meine lieben!


    Ich hab da mal ein kleines Problem.
    Mein Server startet nicht. - Anhand des logs sehe ich, dass die .amx meines Scripts nicht vorhanden ist, allerdings befindet sich
    die .amx Datei im vorgegebenen Ordner. Alle Scriptfiles & Plugins sind auch vorhanden.


    Fehlermeldung:

    Spoiler anzeigen
    ----------
    Loaded log file: "server_log.txt".
    ----------

    Spoiler anzeigen
    SA-MP Dedicated Server
    ----------------------
    v0.3x, (C)2005-2013 SA-MP Team

    Spoiler anzeigen
    [20:05:04]
    [20:05:04] Server Plugins
    [20:05:04] --------------
    [20:05:04] Loading plugin: mysql
    [20:05:04]

    Spoiler anzeigen
    > MySQL plugin R5 successfully loaded.

    Spoiler anzeigen
    [20:05:04] Loaded.
    [20:05:04] Loaded 1 plugins.

    Spoiler anzeigen
    [20:05:04]
    [20:05:04] Filterscripts
    [20:05:04] ---------------
    [20:05:04] Loading filterscript 'gl_actions.amx'...
    [20:05:04] Loading filterscript 'gl_realtime.amx'...
    [20:05:04] Loading filterscript 'td.amx'...
    [20:05:04]
    --------------------------------------
    [20:05:04] Text Draw Editor 1.0RC2 by Zamaroht for SA-MP 0.3 Loaded.
    [20:05:04] --------------------------------------

    Spoiler anzeigen
    [20:05:04] Loaded 3 filterscripts.

    Spoiler anzeigen
    [20:05:04] Script[gamemodes/Rainbow.amx]: Run time error 19: "File or function is not found"
    [20:05:04] Number of vehicle models: 0


    Das Script kompiled ohne Errors - WTF!

    Müsste so doch funktionieren oder?



    stock SpamChat(playerid,variable)
    {
    switch(variable)
    {
    case 0:{SendClientMessage(playerid.....);}
    case 1:{SendClientMessageToAll(playerid.....);}
    }
    return 1;
    }


    //Und bei deinem Befehl
    ocmd:spam(playerid,params[]){
    new variable;
    if(sscanf(params,"i",variable))return 1;
    SpamChat(variable);
    return 1;
    }

    Der Befehl "print" schreibt dir einen Text in deine Server Konsole!
    Damit kannst du also sehen, wann ein Befehl abgebrochen wird.
    Du kannst aber auch deinen String printen lassen (printf("%s",string);).
    Somit kannst du dir als Beispiel deine Koordinaten in die Serverkonsole schreiben lassen und kannst sehen,
    wo das Problem sein könnte.

    Wichtige Informationen wären zum Beispiel noch die Leistungs-Zahlen deines Netzteils.
    Wie viel Volt verträgt es, wie viel Watt hat es?


    Dem entsprechend komme ich mit einer XFX R7850 Ultra OC Edition hin (GTA 4 auf High - Genauso wie Battlefield auf Ultra)
    oder eine Gainward Geforce GTX 560 TI Phantom.


    Sind die beiden, die ich schon immer geliebt habe <3

    Versuch doch sowas mal Alleine sonst lernt man auch nichts




    mfg. [cRP]JoKeR


    So ein Kommentar ist unnötig und wurde von mir als Spam gemeldet!


    Du könnest du arbeiten
    //ganz oben
    enum Inventar
    {
    Drogen,
    Flaschen
    }
    new sInventar[MAX_PLAYERS][Inventar];


    //bei deinem Befehl
    switch(random(2))
    {
    case 0:{SCM(playerid,farbe,"Du hast Drogen gefunden.");GivePlayerMoney(playerid,500);sInventar[playerid][Drogen] ++;}//Drogen sind mehr Wert als Flaschen
    case 1:{SCM(playerid,farbe,"Du hast eine Flasche gefunden.");GivePlayerMoney(playerid,100);sInventar[playerid][Flaschen] ++;}//Hier bekommt der Spieler Geld als Belohnung für den Fund.
    }

    Bei dem Code, den du gepostet hast, verwendest du aber immer noch %d oder irre ich mich da?
    Wenn das immer noch nicht funktioniert, printe die ganzen Sachen mal
    print("Schritt 1");
    Und so weiter halt.
    Schau nach, wo es stockt.

    Da musst du glaube Ich die Camera in das Auto hinein setzen.
    Wie man das allerdings macht, weis ich nicht genau. Einfach mal ein bisschen probieren.
    Mit z.b. CamHack funktioniert es so, wie du es dir vorstellst.


    Bist du verrückt geworden? :D
    OnPlayerUpdate macht dir das gesammte Script kaputt xD
    Da ist es besser, wenn du dein System in einen Timer packst. (Der verbraucht weniger)
    Außerdem kannst du das Geld dann auch direkt resetten (ResetMoney etc) und ihm dann das Geld der Variable geben ;)

    Das mit den PVars funktioniert trotzdem.
    Du musst halt trotzdem beim Speichern die PVar Variante in dein Speichersystem umwandeln.


    Ich hab das ganze so gemacht :)
    //Ganz oben
    new Money[MAX_PLAYERS];
    forward CheckMoney(playerid)


    public CheckMoney(playerid)
    {
    if(GetPlayerMoney(playerid) != Money[playerid])return SendClientMessage(playerid,farbe,"Du hast gecheatet!");
    return 1;
    }


    //OnPlayerConnect
    SetTimerEx("CheckMoney",1000*5,1,"i",playerid);//Alle 5 Sekunden wird der Timer aktualisiert.


    //Beim Laden des Spielers
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    Money[playerid] = mysql_int("Spieler","Geld", "Name", name);


    //beim Speichern
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    mysql_SetInt("Spieler", "Geld", Money[playerid], "Name", name);


    stock AGivePlayerMoney(playerid,amount)
    {
    GivePlayerMoney(playerid,amount);
    Money[playerid] += amount;
    return 1;
    }


    Anschließend könntest du in der Theorie AGivePlayerMoney benutezn um dem Spieler das Geld zu geben.
    Natürlich musst du das Laden und das Speichern anpassen.
    Je nach dem, wie du deine Daten speicherst und lädst :)



    mfg Pinguin - German Reallife Unlimited by SaN

    Das was du da mit deinem PC machst, ist quälerei :(
    In einem Computer bestimmt das schwächste Glied die schnelligkeit deines PCs.
    Heißt, wenn deine Festplatte nur 100GB speicher hat und davon noch 20 frei sind, bringt dir eine bessere Grafikkarte auch nichts (ganz übertrieben dargestellt)


    Welche Grafikkarte hast du denn derzeit drinne?
    Bessere erstmal deine Ram + Cpu auf :)
    (Als Beispiel auf 4 Kern)
    Welche Festplatte hast du?
    Die Geschwindigkeit des Netzteils steht im PC inneren auf dem Netzteil (in Watt)

    //EDITIERTER EDIT!!!!!//
    //Edit//
    Extra für Timo geändert:Alles klar, les einfach Timos post ;)
    //Edit-Ende//
    //EDITIERTER EDIT-ENDE!!!!!!//


    Die Fehlermeldungen stehen alle drin.
    Du hast das Wort "farbe" nicht definiert.
    Du hast deine Fraktionsabfrage nicht eingefügt.
    Du hast das OCMD Plugin nicht.
    Du hast den OCMD Code in eine falsche Stelle KOPIERT!


    ocmd:gov(playerid,params[])
    {
    new fname[64], name[MAX_PLAYER_NAME], string[128], text[128];
    if(sscanf(params,"s",text))return 1;
    switch(Fraktionsabfrage)
    {
    case 0:{fname="Zivilist";}
    case 1:{fname="PD";}
    }
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    format(string,sizeof(string),"%s %s: %s",fname,name,text);
    SendClientMessageToAll(farbe,string);
    return 1;
    }


    Solltest dann aber daran denken, dass der Account evtl. nicht neugespeichert wird, da der Name dann anders ist. Am besten den echten Namen immer aus der "NormalName" Variable speichern.


    Warum? Er kann doch ein OnPlayerDisconnect den alten, in der Variablen-gespeicherten Name wieder setzen lassen.
    Dann wird der Account gespeichert.


    @BlackAce: Ich glaube dieser User ist erneut Batista aka. ASS :)
    Der will das Script nämlich 1:1 kopieren :)

    Probier es doch einfach so, wie ich es geschrieben habe :)
    Dort wird der alte Name doch in eine Variable geschrieben und anschließend geändert.


    Wenn er aus dem Fahrzeug aussteigt, bekommt er den Namen, der in der Variable gespeichert wurde.
    Punkt ende aus :D