Beiträge von d0ma

    gettime(stunde, minute , sekunde);
    stunde = (stunde+1) % 24; // eine stunde nach vorne

    Stunde +1 rechnen und anschließend "rest bei geteilt durch 24" rechnen.


    Zweites bewirkt, das die uhr zb nicht 24 anzeigt wenn man einfach +1 rechnet


    Aber mit RNPC o.Ä. gehts doch, oder nicht? :o


    Auch RNPC hat keine Map-Details, somit auch nicht möglich.
    Ohne Daten kann man eben keine Daten abfragen :p


    MapAndreas ladet genau diese Daten in den Ram, 80 mb sollten heut zu Tage kein Problem darstellen Vector: ;)
    Ich sehe das Ressourcenproblem nicht wirklich. Die Daten werden absichtlich in den Ram(=günstig) geladen um schnell darauf zugreifen zu können und um somit auch möglichst wenig CPU Aufwand zu erzeugen.


    Aber ein NPC / Bot


    Das mit dem Bot/NPC ist misst.


    Ein NPC hat nicht das "echte" Spiel laufen, sondern ist nur ein Programm welches vorgegebene Daten an den Server sendet.
    Logischerweise kann somit auch kein SetPlayerPosFindZ funktionieren, GTA San Andreas(mit all seinen Daten) ist ja für den NPC nicht verfügbar.


    Wer ne idee?
    Wäre echt wichtig D:


    MFG


    Nach "spray" suchen -> http://gta-sa-mp.de/object/?searchName=spray
    hier dabei ?



    wie heißt dieses runde objekt oder welche id hat es


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
    oder hier in dem video zusehen ab 0:48 das boden objekt


    Nach "glass" suchen -> http://gta-sa-mp.de/object/?searchName=glass
    Sollte 18843 sein
    Edit: Ich glaub du meinst doch was anderes: hier unter "Sports and Stadium Objects" sollte es zu finden sein http://gta-sa-mp.de/object/?categoryID=13
    ist sicher in einem der Stadien dieses Objekt


    Ich suche eine Festerscheibe bzw. Glas das nicht kaputt gemacht werden kann


    Nach "window" suchen -> http://gta-sa-mp.de/object/?searchName=window
    Die letzten beiden sollten nicht zerbrechlich sein, kannst aber auch die anderen probieren


    Öhm, wenn es mich nicht täuscht wird doch das Callback in einem Gamemode zu letzt aufgerufen.
    Deswegen sollte doch LocalFunction ausreichen :huh:


    meinte CallLocalFunction, nur verschrieben ;)

    d0ma:
    Eine Sache noch.
    Das wäre aber nur was bringen, wenn man MyIncName_OnGameModeInit vorher "definiert" hat.


    der Code von mir Funktioniert genau so wie er da steht, als Hook. Liegt am komischen Verhalten vom Pawn-Compiler. Vom logischen her sollte es nicht funktionieren, tut es aber.
    Kannst hier nachlesen: http://forum.sa-mp.com/showthread.php?t=441293 + Ersten 4 Antworten

    Das CallRemoteFunction weg lassen ist nicht wirklich Optimal und macht das Include auch überhaupt nicht "richtig" (so wie es der Thread-Name eigentlich sagt). Unkompatibilität ist da vorprogrammiert.


    Weg lassen geht aber trotzdem, seit Jahren ist das eigentlich die gängige Methode auf forum.sa-mp.com: (hier scheint noch alles nach dem Alten zu laufen)
    public OnGameModeInit()
    {
    //-------------------


    //-------------------



    #if defined MyIncName_OnGameModeInit
    MyIncName_OnGameModeInit();
    #endif
    return 1;
    }


    #if defined _ALS_OnGameModeInit
    #undef OnGameModeInit
    #else
    #define _ALS_OnGameModeInit
    #endif
    #define OnGameModeInit MyIncName_OnGameModeInit
    #if defined MyIncName_OnGameModeInit
    forward MyIncName_OnGameModeInit();
    #endif

    $sql = "INSERT INTO `subusers` (`userid`,`port`,`control`,`console`) VALUES
    ('$uid','$Port','".isset($_POST['control'])? '1' : '0'."','".isset($_POST['console'])? "1" : "0"."');";


    Du kannst nicht einfach

    PHP
    isset(...)? "0":"1"


    ohne klammern da rein werfen und hoffen das es klappt


    Wenn dann schon so:

    PHP
    (isset(...)? "0":"1")


    PHP
    $sql = "INSERT INTO `subusers` (`userid`,`port`,`control`,`console`) VALUES 
                        ('$uid','$Port','".(isset($_POST['control'])? '1' : '0')."','".(isset($_POST['console'])? "1" : "0")."');";


    Binär: eine Klammer nur um eine Funktion bewirkt rein gar nichts ;) Muss alles in die Klammer

    Dann kannst du foreach nehmen von yless


    Vertrau mir, ein globaler Timer, der durch alle Spieler läuft mit foreach ist wesentlich ressourcensparender


    Mach nen Benchmark mit 500 spielern


    Du liegst komplett falsch....


    500 x den Anti-Cheat-Code auf einmal durchlaufen zu lassen wäre bei der Liste im ersten post wohl ungünstig, weil viel zu viel auf einen Schlag gecheckt werden muss(500 mal alles) -> Lag
    Einzelne Timer verteilen das ganze auf unterschiedliche Zeiten und so muss nicht 500 mal alles auf einmal ausgeführt werden.


    Kurz: Um so klüger der Code (zeitlich) verteilt wird umso weniger Lag wird der Server haben.

    d0ma:
    Genau das selbe habe ich erklärt..


    ich sprach von ganz was anderem, weil der Vorschlag pragma unused zu verwenden Blödsinn ist und man die Variable einfach weglassen sollte.
    Das sollte mein Beitrag zumindest nahe legen ;)



    das mit dem pragma unused ist einfach nur um den warning zu beseitigen.


    warum sollte man das tun ? Variable nur aus Spaß ?
    Jeder Warning hat Gründe und sollte nicht einfach ausgeblendet werden 8o


    aus
    new RandomFireTimer;
    RandomFireTimer = SetTimer("RandomFire", FIRE_STOP_RANDOM_FIRE, false);
    wird
    SetTimer("RandomFire", FIRE_STOP_RANDOM_FIRE, false);

    Warum pragma unused verwenden ?



    Hier genau erklärt:
    Wenn du einen Timer mit repeat = false hast, dann brauchst du das new RandomFireTimer gar nicht weil der Timer nicht gekillt werden muss.


    Der Warning kommt weil du der Variable nur einen Wert zuweißt, quasi:
    RandomFireTimer = ....;
    aber nie daraus liest, wie z.b.
    ... = RandomFireTimer;
    //oder
    Funktion(...., RandomFireTimer, ...);


    -> nie den Wert aus der Variable lesen = warning 204: symbol is assigned a value that is never used: ...


    Es gibt verschiedene Ftp-Server, genauso wie es verschiedene Webserver gibt(Apache, lighttpd, nginx, ...)


    Ohne die FTP-Server software zu kennen wird das schwer mit dem helfen. Womöglich ist das ganze auch noch von der Config des FTP-Servers abhängig.

    @Cpt.Goldfire:
    Hatte das gleiche Problem vor einigen Tagen, nach dem Upgrad auf win8.1 ;)
    hat dein PC/Laptop 2 Grafikkarten ? Eine Nvidia und eine Intel HD zb ?
    Wenn ja, dann musst du im Nvidia Controlpanel auswählen das GTA-SA die Nvidiakarte nutzt, win8.1 bringt da was durcheinander.


    Auf den Streamer verzichten nur wegen dieses Errors ? Blöder Vorschlag...


    _ALS_OnPlayerPickUpDynamicPickup ist nur ein Name!!!!!
    könntest es genauso gut HookyHook nennen, würde funktionieren
    oder eben passend: _ALS_OnPlayerPickUpDynPickup
    musst nur die 2 oder 3 mal austauschen wo es vorkommt


    Ja, denke schon. Einfach in der include umändern ;) Also im streamer include.


    Das würde das ganze nur Kaputt machen...

    Hab mal eine Frage


    Warum schmiert mir der Client ab sobald ich das Object einfüge?
    CreateObject(5043, 1843.36719, -1856.32031, 13.87500, 0.00000, 0.00000, 0.00000);//Bombenshop tor


    Weil bestimmte Objekt-IDs fest an einen bestimmten Code-Teil in GTA-SA gebunden sind (Garage Öffnen)
    Beim Einfügen dieses Objektes treten dann Fehler seitens GTA-SA auf.