Frage zu GTA Network Grundlagen

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,
    ich versuche aktuell einen GTA 5 server zu erstellen, leider habe ich bisher mit C# und Javascript kaum Erfahrung. Daher hier ein paar Fragen aus Sicht eines Neulings.
    Frage 1: Wie bekomme ich dieses Wasted beim Sterben weg.
    Frage 2: wie kann ich eine Variable über mehrere private void nutzen? Ich versuche ein Tod System. Also ich Speicher die Position in onPlayerDeath. Aber wie bekomme ich den Vector3 zu onPlayerRespawn?
    Und Frage 3: Gibt es in der API auch Timer oder muss ich da c# Sachen nutzen? Und wie mache ich die Timer damit sie nicht unnötig viel Leistung ziehen? Timer lieber Client oder Server Side?


    Ich sag schon mal vielen Dank und hoffe auf nützliche Beiträge. :thumbup:

  • 1: Ich glaube man müsste dafür etwas über diesen Wasted Text drüber schreiben. Den Text selbst kann man soweit ich weiß nicht entfernen.


    2: Schreib die Position in eine Spielervariable, dann kannst du sie an jeder beliebigen Stelle (wo natürlich auch ein Spieler verwendet wird) im Script abrufen.


    3: Ich hab aktuell keinen Code vor mir aber ich hab das über "DateTime" Variablen gelöst:

    C
    DateTime timer = DateTime.Now; 
        private void onUpdate() 
        { 
            if(DateTime.Now.Subtract(timer).TotalSeconds >= 5) // 5 Sekunden Timer
            {
                timer = DateTime.Now; 
                // Code der beim Timer aufgerufen werden soll 
            }
        }

    Sorry falls da jetzt irgendwas nicht ganz richtig geschrieben ist, hab schon n weilchen nichts mehr in c# gecodet. Aber diese DateTime funktion sollte denk ich sein wonach du suchst. Ob das jetzt wirklich die einzige / beste möglichkeit ist weiß ich auch nicht (beschäftige mich auch nicht soo viel mit GTA:N/C#)


    Server-Side (falls die überhaupt Client-Side gemacht werden könnten^^)

  • Danke erstmal für die Antworten, aber eine Frage bezüglich des Timers hätte ich noch. Wenn ich das so mache wie beschrieben, müsste er ja alle 5 sec den Code ausführen, das ist aber nicht genau das was ich suche, ich brauche die Timer auf Player bezogen und nicht global, sprich wenn ein Player /test eingibt soll er das nur alle 10 sec machen können. Alle anderen aber den befehl nutzen können, auch wenn die Zeit noch nicht um ist. Ich habe das ganze mir API.sleep versucht, aber da kommt die Meldung: WARN: using API.sleep in a non-async environment is not recommended!


    //edit
    Ich glaube ich bin gerade selbst auf eine Lösung gekommen, Kann ich nicht einfach die Zeit in eine Playervariable speichern und dann mit einem if abfragen ob der Zeitpunkt schon erreicht ist oder so?? bessere Lösungen gerne hier lassen :)

  • Ich glaube ich bin gerade selbst auf eine Lösung gekommen, Kann ich nicht einfach die Zeit in eine Playervariable speichern und dann mit einem if abfragen ob der Zeitpunkt schon erreicht ist oder so?? bessere Lösungen gerne hier lassen :)

    Du kannst den TimeStamp von der letzen Ausführung Speicher und dann Abfragen ob diese Zeit + 10 Sekunden grösser ist als die jetzige. Wenn ja, dann darf er den Befehl noch nicht wieder verwenden.

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2
  • Ich habs, falls es jemand wissen will:

  • Hey Leute, ich wollte jetzt keinen extra Topic aufmachen da ich eine "ähnliche "Frage habe.


    Ich kenne die C+ Basics, aber ich weiß nicht ob z.B Visual C# oder wie das heißt das gleiche ist. Und selbst wenn gibt es nen kleinen Problem wo ich dringend ein Rat brauche von euch:


    Wie erwähnt kenne ich die Basics. Ich weiß WIE man codet. Ich kenne die Flash sowie C+ basics.


    Jetzt meine Frage: Auf der Seite von GTMP hab ich nen Wiki gefunden wo es ne kleine Anleitung gibt und steht welches Tool man braucht zum Scripten (Es hieß irgendwas mit Visual Studio oder so). Soweit so gut, aber gibt es denn in dieses Visual Studio oder wie das heißt, eine Option oder ne Möglichkeit wo man ALLE "Befehle" nachschlagen kann ?


    Befehle wie z.B "If, return, else, private, public, int". Ich kenne bereits EINIGER dieser Befehle, ich weiß auch wie diese ALLE benutzt werden (Ich habe zahlreiche Tutorials, Bücher etc. gelesen und kam dadurch immer mehr und mehr an neue solcher "Befehlen" oder hießen die Variablen nochmal ?)


    Ich habe 1 Jahr zeit "verschwendet" mit den Tutorials die ich angeschaut habe. ALLE Tutorials auf youtube sind FAST gleich. Es wird gezeigt wie Coding aufgebaut ist, dann werden gezeigt WIE Befehle wie z.B "Int, else, if" etc. benutzt werden und was diese bewirken, das weiß ich ja aber ich will ALLE dieser Befehle einsehen können statt immer ein neues Video zu schauen wo vielleicht ein Befehl mir neu ist, wenn ihr wisst was ich meine.


    Beim Coding selbst gibts gar keine Probleme, aber wenn ich die Befehle nicht kenne dann muss ich alle 5min ein Topic aufmachen und Fragen ob es so ein Befehl gibt wonach ich derzeit Suche ...

  • Soweit so gut, aber gibt es denn in dieses Visual Studio oder wie das heißt, eine Option oder ne Möglichkeit wo man ALLE "Befehle" nachschlagen kann ?

    Wenn du bei Google bspw. nach 'C# Programmierhandbuch' oder Ähnlichem suchst, findest du schon sehr detaillierte Informationen zu sämtlichen (wichtigen) Bestandteilen der Programmierung in C#. Hier auch speziell von Microsoft selbst (Würde ich in Erwägung ziehen die englische Seite zu verwenden, da die deutsche oft merkwürdige Übersetzungen enthält - tut's aber für's Nachschlagen auch).


    Hier mal ein Link von der Microsoft Seite (findest du schon nen schnellen und umfangreichen Überblick): https://docs.microsoft.com/de-…/language-reference/index (C# Referenz)
    https://docs.microsoft.com/de?…p/programming-guide/index (C# Programmierhandbuch)

  • Wenn du bei Google bspw. nach 'C# Programmierhandbuch' oder Ähnlichem suchst, findest du schon sehr detaillierte Informationen zu sämtlichen (wichtigen) Bestandteilen der Programmierung in C#. Hier auch speziell von Microsoft selbst (Würde ich in Erwägung ziehen die englische Seite zu verwenden, da die deutsche oft merkwürdige Übersetzungen enthält - tut's aber für's Nachschlagen auch).
    Hier mal ein Link von der Microsoft Seite (findest du schon nen schnellen und umfangreichen Überblick): https://docs.microsoft.com/de-…/language-reference/index (C# Referenz)
    https://docs.microsoft.com/de?…p/programming-guide/index (C# Programmierhandbuch)


    BESTE ANTWORT ! Danke. Jetzt kann ich zum ersten mal OHNE das mir jemand die Begriffe nennt, selber Scripten. (Bisher hat ich nie Probleme, ich weiß wo Komma, Klammer, etc. hingehören sowie Befehle, aber Befehle kannte ich nicht genug).


    Die Seiten sind echt TOP! Da stehen echt zahlreiche dieser Befehle drin. Ich werde sie mir alle anschauen danke danke danke.