CJ - Skin, Bauernhofspawn | Crashdetect

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
  • Erstelle im pawno Order eine Datei pawn.cfg und schreibe dort "-d3" rein, dann kompiliere deinen Code mit der pawno.exe geöffnet (Öffnen Button) neu und lass dir den Fehler nochmal ausgeben, dann steht die Zeile im Code dabei, die das verursacht.


    Da der Code ziemlich groß ist wäre es sinnvoll einen neuen Thread zu erstellen, wenn du den neuen Log hast, da dies auf jeden Fall keine kleine Frage mehr ist, sondern schon ein etwas komplexeres Debugging. Das wahrt die Übersicht.


    Hallo, ich poste hier für meinen Kollegen @tayson87 , da er leider keine Threads eröffnen kann.


    Das Problem ist folgendes:
    Man spawnt am Bauernhof und hat zudem den CJ-Skin. Wir haben schon vieles versucht.



    Hier Crashdetect-Ausgabe mit "-d3 in der CFG":

    C
    [22:36:36] LOAD: ******** Account hat geladen!
    [22:36:36] [debug] Run time error 4: "Array index out of bounds"
    [22:36:36] [debug]  Accessing element at negative index -1
    [22:36:36] [debug] AMX backtrace:
    [22:36:36] [debug] #0 001e8bb8 in public OnPlayerSpawn (0x00000000) from GM.amx
    [22:36:36] [debug] Run time error 4: "Array index out of bounds"
    [22:36:36] [debug]  Accessing element at negative index -1
    [22:36:36] [debug] AMX backtrace:
    [22:36:36] [debug] #0 001e8bb8 in public OnPlayerSpawn (0x00000000) from GM.amx





    Hier nochmal der OnPlayerSpawn Code:
    http://pastebin.com/LjgVY6Kf


    Hoffe dass mir geholfen werden kann


    MfG

  • Die Crashdetect Ausgabe ist nicht korrekt.


    Hast du folgende Dinge gemacht?
    - pawn.cfg Datei in /pawno/ erstellt und "-d3" rein geschrieben (und gespeichert)
    - pawno.exe aus /pawno/ öffnen -> Öffnen auswählen -> den Code auswählen
    - neu kompilieren
    - dann siehst du in Compiler eine mehrzeilige Meldung mit vielen Zahlen


    => Dann erneut die Fehlerausgabe erzeugen lassen, indem du dich spawnst/einloggst. Dann sollte die Fehlerzeile im Crashdetect-Report im server_log dabei stehen.

  • Beitrag von Bugatti1337 ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Verbuggt ().
  • Hab ich alles gemacht und da kommt die obere Ausgabe, mehr nicht.


    Jetzt kommt diese Ausgabe
    [15:47:26] String erstellt
    [15:47:26] Spieler wurde mit 1 HP gespawnt.
    [15:47:26] Spieler Armour wurde auf 0 gesetzt
    [15:47:26] Spieler Variable Eingeloggt wurde auf 1 gesetzt
    [15:47:26] Spieler ist nicht im Tutorial
    [15:47:26] [debug] Run time error 4: "Array index out of bounds"
    [15:47:26] [debug] Accessing element at index 876992 past array upper bound 4
    [15:47:26] [debug] AMX backtrace:
    [15:47:26] [debug] #0 001e4af4 in public OnPlayerSpawn (0x00000000) from German-Midnight80.amx




    EDIT:


    Hab jetzt ganz OnPlayerSpawn durchgeprintet und er hört nach einem Print auf und gibt die Crashdetect Ausgabe raus.
    Hier der Code der anscheinend fehlerhaft ist. (44 Zeilen)

    Einmal editiert, zuletzt von Bugatti1337 () aus folgendem Grund: New Crashdetect hinzugefügt

  • Ah, perfekt! Das wollte ich dir grade grob machen, wenn ich heim komme, so ist es natürlich besser!


    Nutze jetzt bitte mal diese Prints und poste dann was geprintet wird:

    Sollte er bis nach "Nach StopPlayerBurning" kommen, dann musst du weitere prints weiter unten einfügen.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Vielen Dank erstmal

    Nutze jetzt bitte mal diese Prints und poste dann was geprintet wird:
    Sollte er bis nach "Nach StopPlayerBurning" kommen, dann musst du weitere prints weiter unten einfügen.


    Oh, da ist wohl der Fehler


    C
    [16:35:41] String erstellt
    [16:35:41] Spieler wurde mit 1 HP gespawnt.
    [16:35:41] Spieler Armour wurde auf 0 gesetzt
    [16:35:41] Spieler Variable Eingeloggt wurde auf 1 gesetzt
    [16:35:41] Spieler ist nicht im Tutorial
    [16:35:41] i: 23258624
    [16:35:41] [debug] Run time error 4: "Array index out of bounds"
    [16:35:41] [debug]  Accessing element at index 876992 past array upper bound 4
    [16:35:41] [debug] AMX backtrace:
    [16:35:41] [debug] #0 001e4b28 in public OnPlayerSpawn (0x00000000) from German-Midnight80.amx
  • Öh, da ist irgendwas schief gelaufen, weil das kann so nicht vorkommen.
    Hast du die pawn.cfg noch im /pawno/ Ordner, und eine mehrzeilige Meldung im Compiler, wenn du kompilierst?
    Wenn ja, lösche die und öffne deinen Code neu, dann kompiliere ihn nochmal. Geht die Meldung dann aus dem Compiler weg?

  • Öh, da ist irgendwas schief gelaufen, weil das kann so nicht vorkommen.
    Hast du die pawn.cfg noch im /pawno/ Ordner, und eine mehrzeilige Meldung im Compiler, wenn du kompilierst?
    Wenn ja, lösche die und öffne deinen Code neu, dann kompiliere ihn nochmal. Geht die Meldung dann aus dem Compiler weg?

    Wenn ich die pawn.cfg lösche und erneut kompiliere, erscheint die mehrzeilige Meldung nicht mehr im Compiler.


    Was kann ich nun tun?


    BTW: die gleichen Crashdetect Reports kommen wieder, auch ohne Debug Modus.
    Auch der Integer von
    23258624erscheint immer noch

  • Das ist komisch, denn er dürfte ja gar nicht durch die Kondition (i<5) kommen.


    Was kommt im Log, wenn du es so schreibst?

  • Dieses Mal ist der Server sogar abgestürzt. Keine Crashdetect Meldung aufzufinden. Was mir allerdings auffällt, wurden sämtliche prints übersprungen.
    z.B "Nach Switch" "1 - 5" erscheinen gar nicht

  • C
    #pragma dynamic 1000000

    Dann versuche es erneut.

    Klappt leider auch nicht . Bin auch ziemlich verzweifelt...


    Kann es wegen der geschweiften Klammer der For-Schleife sein? Die ist ja irgendwie ganz unten zu ende. Vielleicht könnte ich das ja irgendwie umschreiben, dass es nicht bis nach unten durchgeht?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen