Beiträge von sbx320

    Wenn du den Dump hochlädst könnte ich da ggf. mehr zu sagen.

    Alternativ kannst du wenn du alles in einer Resource hast, testweise in ein neues Script folgendes reinschreiben:

    Lua
    _debug_addEventHandler = addEventHandler 
    addEventHandler(name, attachedTo, fn, ...)
    	return _debug_addEventHandler(name, attachedTo, function(...)
    		outputServerLog(("Calling event %s "):format(name))
    		return fn(...)
    	end, ...)
    end

    Das gibt dir dann jedesmal wenn irgendein Event aufgerufen wird, den Namen im Log aus. Beim nächsten Crash kannst du damit schonmal sehen, welches Event crasht. Das Script muss dann als erstes Serverscript in der Meta stehen, damit auch wirklich alle Events gehookt werden.

    Der Stacktrace sieht danach aus, als ob du irgendwas in einem Event machen würdest und dann wiederum triggerEvent aufruft, wobei irgendetwas kaputt geht. Ohne deinen Code zu kennen ist das jetzt recht schwer zu analysieren, ich würde aber mal auf destroyElement + triggerEvent in irgendeinem Eventhandler tippen.

    Existiert ein Crashdump im MTA Ordner? Wenn ja den bitte mal irgendwo hochladen und mir schicken.

    Pfad zu den Dumps sollte C:\Program Files (x86)\MTA San Andreas 1.5\MTA\dumps\private sein, sofern du MTA in den Standardordner installiert hast.

    Jeder kann sich unsichtbar stellen, da generell Teammitglieder zu vermuten trifft vermutlich häufig nicht zu. Selbst wenn ein Teammitglied im Thema ist, heißt das auch nicht, dass das Thema von diesem Teammitglied auch aktiv gelesen wird. Ich hab teils >100 Tabs offen, da vergisst man auch mal, dass man da noch einen Tab hier im Forum auf hat.

    edit
    Ich vermute mal, dass das hier die Einstellung dafür ist. Sicher bin ich mir da allerdings nicht, da ich das noch nie verwendet hab.

    Externer Inhalt sbx320.net
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    Um mal deine beiden Posts zu zitieren für die du die Verwarnung erhalten hast:

    Zitat


    Wow mein Beitrag wird gelöscht, weil es offtopic ist. Aber das sich die Leute hier in 50 % der Beiträge streiten ist ok oder was ?

    Naja Cross, hab dir ja meine Meinung berreits gesagt.

    Die Servervorstellung war ein Fehler, das hier ist immerhin das MTA Forum. Schon traurig, dass man die Leute immer warnen muss.


    Keiner deiner beiden Posts geht auch nur annähernd auf das Thema (die Servervorstellung) ein. Mit solchen völlig deplatzierten Posts trägst du eher noch mit zum Spamproblem unter Servervorstellungen bei, da dann wieder Reaktionen auf deinen Post folgen und das Thema dann nur weiter abdriftet. Posts dieser Art kannst du von mir aus im Smalltalk posten, oder besser noch einen Moderator (z.B. mich) direkt anschreiben und die entsprechenden Posts melden.

    Zitat


    Und mal im ernst, entweder man löscht solche Beiträge direkt oder lässt sie stehen. Stunden später zu löschen, nachdem es eh jeder gesehen hat ist doch unnötig oder ?

    Nicht jeder ist 24/7 hier im Forum online. Und nur weil grade kein Moderator online ist sollten wir meiner Meinung nach Regelverstöße nicht einfach ignorieren. Wenn der Beitrag allerdings schon länger zurückliegt (ab so ca. 1-2 Wochen, je nach Aktivität des Themas) moderiere ich da dann aber auch nicht mehr.

    Zitat


    Und ich gehe jetzt einfach mal davon aus, dass ALLE anderen auch eine Verwarnung bekommen haben.

    Größtenteils ja, teils auch mehrere. Es lässt sich aber natürlich über jede Verwarnung bzw. Beitragslöschung reden. Insbesondere in Fällen bei denen der Grund für die Verwarnung eher ein verhältnismäßig kleinerer Verstoß gegen die Regeln war, ist eine kurze Diskussion mit dem entsprechenden verwarnenden Moderator über den Regelverstoß häufig zielführend.

    Physik war dabei weniger das Problem, sondern eher die Performance, da ich das da nicht so wirklich optimal implementiert hatte. Derzeit fehlt mir aber ehrlich gesagt die Motivation für MTA großartig Code beizutragen und daher wird das vermutlich auf absehbare Zeit eher nicht eingebaut.

    edit

    Wobei ich da was ganz anderes gemacht hatte, ich hatte da nur ein RenderWorldToTexture eingebaut, mit dem man effektiv eine zweite Kamera hatte ohne die FPS zu reduzieren.

    Ich bin seit ein paar Jahren mit meinen paar Kleinigkeiten bei netcup. Die Performance der VServer ist gut und der Support antwortet selbst nachts um 4 noch schnell und kompetent.

    Von der Software her habe ich alles in Docker Containern auf einem ArchLinux Basissystem am laufen, sodass ich relativ schnell auf einen besseren Server zu ähnlichem Preis migrieren kann (docker installieren, rsync und fertig) und meine Anwendungen recht gut getrennt habe.

    @~>The|One: Nein. Das ist weder korrekt noch beantwortet das die Frage.

    localPlayer ist performancetechnisch minimal besser. Wir befinden uns hier allerdings im Bereich, wo es effektiv keinen Unterschied macht, was du nutzt.

    Das ganze ist mit localPlayer besser, da MTA Eventtriggers in zwei Richtungen ablaufen: Es wird das Event zum einen jedes Parent- und zum anderen jedes Kindelement aufgerufen. Da localPlayer immer ein Unterelement von root ist, funktioniert die Variante mit root überhaupt erst. Da du aber das Event auch an root anhängst, muss dieses auch betrachtet werden, wenn ein anderes Event auf ein völlig anderes Element schickst. Beispielsweise onClientVehicleDamage auf ein Fahrzeug. MTA würde jetzt beim Aufrufen der Events auf Parentelementen auch onClientVehicleDamage mit deinem Test vergleichen müssen. Wurde Test jetzt aber nur auf dem lokalen Spieler hinzugefügt, so wird dieser Vergleich nicht benötigt.

    Das Problem ist, dass diese Arrays statisch in der exe vorhanden sind und nicht erst zur Laufzeit allocated werden. Daher überschreibt man, wenn man sie einfach vergrößert, einfach andere Daten. Das ist eher keine gute Idee.

    @fastman92

    I suppose what I wrote might've been partially lost in translation.

    My issue is not patching GTA SA at all. That's trivial and can even be done to allow dynamic resizing of arrays without restarting the game pretty easily.

    My problem with the model info array patching was that it also requires changing the MTA references to that array. Especially the model info array is referenced in a lot of places. Sadly these places do not use a single point for the definition of the memory address. Some use a macro, others use a global variable, others directly access a pointer and others just use inline assembly to access the array. It's easily doable, but I just didn't bother finishing it up.

    I'm currently somewhat skeptical if your limit adjuster will be implemented, not because it wouldn't be useful or because it might be "hard to do", but because I don't know which of the currently active MTA developers would take on that task.

    Das Hauptproblem dabei ist, dass das ganze von irgendjemandem auch in MTA umgesetzt werden muss. Fastman scheint da (in den Posts im MTA Forum) davon auszugehen, dass wir da einen externen Launcher oder so einbauen würden. Das wird aber nicht passieren. Daher bräuchte es irgendjemanden, der sowohl das Interesse, die Zeit und auch das Wissen hat wie man das ganze in MTA direkt umsetzt... und da weiß ich aktuell niemanden.

    Ich persönlich bin da aktuell noch sehr skeptisch was die Umsetzung betrifft. Die Idee ist natürlich gut, aber ich bezweifle, dass das so leicht in MTA eingebaut werden kann, da MTA sehr viele Verweise auf bestimmte Arrays enthält, die geändert werden müssten.

    Vor einiger Zeit hatte ich mal etwas ähnliches wie den Limit Adjuster nur für Model IDs geschrieben (das dann sogar dynamisch zur Laufzeit die ID Grenzen ändern konnte), hab das dann nach einiger Zeit aber verworfen, da ich zwar problemlos die Referenzen aus GTA SA anpassen konnte, aber die Referenzen aus MTA selbst waren nicht leicht aufzuspüren.

    Außerdem sind Umlaute und Sonderzeichen in Code ungültig.

    In C# nicht

    C
    class ö
    {
        static ö ß()
        {
            return new ö();
        }
    }

    Ist gültiges C#. https://msdn.microsoft.com/en-us/library/aa664670.aspx (Alte Spec, die neue ist in dem Teil aber gleich). Es ist natürlich trotzdem keine besonders gute Idee Sonderzeichen in Code zu verwenden, da diese auf einigen Systemen (z.B. ohne DE Tastaturlayout) nicht direkt eingegeben werden können.

    IP auf auto ist in den meisten Fällen korrekt. Das ist nur relevant, wenn ihr mehrere Netzwerkadapter habt. Einfach auf Verdacht irgendwelche Einstellungen zu ändern ist irgendwie sinnfrei.

    Zum Fehler: Schau mal ob auf dem Server noch irgendwas den Port 22005 benutzt (z.B. ein anderer MTA Server).