Server reagiert nicht nach SetVehicleParamsEx...

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
  • Hallo Community.


    Ich habe gestern mal meinen Nitrado Minecraft Server in einen GTA Server geswitcht und wollte mein altes DM Script ausprobieren. Ich habe allerdings ein gigantisches Problem:
    Wenn ich auf dem Server den Motor eines Fahrzeugs in dem ein Spieler sitzt mit SetVehicleParamsEx anschalte, reagiert der Server nicht mehr. Keine Rückmeldung, gar nichts.
    Das witzige ist: der Motor wird noch angeschaltet, dann erst schmiert der Server ab (zeitgleich).


    Ich habe nun das ganze stark eingrenzen können. Ich habe einen simplen /motor Befehl gemacht der gar nichts macht außer den Motor auf 1 zu setzen:


    Code
    ocmd:motor(playerid,params[]){	SetVehicleParamsEx(GetPlayerVehicleID(playerid),1,0,0,0,0,0,0);	return 1;}


    Der Server reagiert danach wie immer nicht mehr. Nun bin ich auf etwas gestoßen was mich noch mehr verwirrt:
    Ändere ich meinen Motor Befehl zu:


    Code
    ocmd:motor(playerid,params[]){	SetVehicleParamsEx(1,1,0,0,0,0,0,0);	return 1;}


    (Ich mache den Motor der Fahrzeug ID 1 an)
    Funktioniert es. Ich teleportiere Fahrzeug ID 1 zu mir, gebe /motor ein und der Motor des Fahrzeugs startet.
    ALLERDINGS: Das ganze Funktioniert nur wenn ich NICHT in Fahrzeug ID 1 sitze. Setze ich mich in Fahrzeug ID 1 rein und mache /motor passiert das selbe wie immer.
    Motor geht an, Server aus.


    Zusammengefasst: Der Motor eines Fahrzeugs lässt sich nur starten, wenn kein Spieler im Fahrzeug sitzt. Mit dem Lichts gehts einwandfrei, das lässt sich problemlos ein- und ausschalten.


    Hat jemand eine Idee was ich im Script fabriziert habe, was dafür sorgen könnte? :D
    MfG, UltimateKeks


    //edit:
    Ich habe crashdetect.so auf dem Server, findet allerdings auch nichts. Der Server geht NICHT aus, sondern reagiert nicht mehr.

  • Erstell mal alle Variablen
    Dann mit GetVehicleParams alles auslesen


    Dann hast du die Werte die der Server vom Fahrzeug kennt
    und dann die Werte bei setvehicleparams bla einsetzen und NUR den motor auf 1


    Gruß

    ik bin der vito c:

  • Erstell mal alle Variablen
    Dann mit GetVehicleParams alles auslesen


    Dann hast du die Werte die der Server vom Fahrzeug kennt
    und dann die Werte bei setvehicleparams bla einsetzen und NUR den motor auf 1


    Gruß


    Das ist mir schon bewusst, spielt aber hier keine Rolle. Ich habe den /motor Befehl doch absichtlich abgemagert um wirlich NUR den Motor zu starten und sonst absolut nichts zu tun. Beim richtigen /motor Befehl werden natürlich Variablen und GetVehicleParamsEx verwendet und Textdraws etc angezeigt. Es geht hier darum, dass der Server sogar bei diesem Ein-Zeilen-Befehl abschmiert.

  • Die aussage, dass du absolut sonst nichts machst ist falsch.
    Du stellst in dem befehl alles ab und ich dachte es liegt daran.


    Welche Server Version nutzt du? Hast du es mal mit einem Blank Script versucht?
    Irgendwelche Hooks auf dem SetVehicleParamsEx ?
    Distribution?


    Gruß

    ik bin der vito c:

  • Stürzt er ab oder hört er einfach auf zu arbeiten so dass er "stehen bleibt" und keiner mehr connecten kann undso.
    Das hatte ich auch mal.. lag bei mir jedoch an einer endlos Schlleife.
    Download mal das crashdetect Plugin und compile das script mit dem parameter -d3 glaub ich


    Ansonsten zeig mal deine includes Liste evtl. ist da ein hooking hinter...


    Gruß

    ik bin der vito c:

  • Ok schonmal vorab danke für deine Hilfe :)


    Der Server tut einfach gar nichts mehr. Er verhält sich wie du geschrieben hast so, als würde eine Schleife sofort den Server absolut dicht machen, sobald der Motor startet. Crashdetect habe ich laufen, allerdings erkennt es nichts, der Server schreibt ab dem Zeitpunkt wo ich den Motor starte gar nichts mehr in die Logs. Allerdings werde ich das mit dem Parameter mal ausprobieren.


    Meine Includes:


    C
    #include <a_samp>
    #include <a_npc>
    #include <ocmd>
    #include <utils>
    #include <streamer>
    #include <glibrary>
    #include <mysql>
    #include <md5>


    Ich verwende das mysql Plugin von StrickenKid.


    MfG, UltimateKeks


    //edit:


    Ok es gibt neue Erkenntnisse:
    Der Server schmiert nur ab wenn ein Fahrer im Wagen sitzt, sitzt ein Beifahrer darin geht alles. Außerdem kann ich den Motor des Fahrzeugs starten und dann einsteigen, dann funktioniert es auch. Mache ich ihn aber während dem Fahren aus schmiert er wieder ab. Zum Abschmieren: ich habe den Parameter -d3 ausprobiert, bringt nichts. Neuerdings bleibt der Server allerdings noch ca. 1 Sekunde an, dann erst überlastet er.