Hey!
Ich habe da ein Problem mit so einem Hacker. Irgendwie überlastet er meinen Server. Maps werden nicht richtig geladen und Systeme klappen nicht mehr richtig. Weiß jemand wie ein Hacker sowas macht und wie man was dagegen machen kann?
Hey!
Ich habe da ein Problem mit so einem Hacker. Irgendwie überlastet er meinen Server. Maps werden nicht richtig geladen und Systeme klappen nicht mehr richtig. Weiß jemand wie ein Hacker sowas macht und wie man was dagegen machen kann?
Da gegen hilft nur ein Anticheat-system
Hey.
Woher weißt du, dass ein Hacker dafür zuständig ist?
Mehrere Fragen:
1. Ist das immer nur wenn ein bestimmter Spieler aufm Server ist?
2. Wie sehen in einer solchen Situation die Pings (TAB) der Spieler aus?
Allgemein bräuchten wir mehr Infos.
Sowas hab noch nie gehört.
Ein Hacker kann keine serverseitigen befehle oder Maps downlegen.
Der macht sich keine große Mühe verdeckt zu bleiben. Es war nur er auf dem Server und aufeinmal bin ich durch Maps geflogen oder gnaze Objekte wurden nicht gestreamt. Sobald er runter ist und ich den Server neustarte geht alles wieder. Stunden später kommt der Hampel dann wahrscheinlich nochmal on und macht bringt das alles wieder durcheinander. Dies Problem bleibt dann so bis zum nächsten Serverrestart.
Den Ping hatte ich mir leider nicht angeschaut. Aber der Server ist eig recht gut, sollte kein DDos sein.
Durch das schnelle aufrufen von Befehlen oder absenden von Nachrichten kann man dafür sorgen das der Server ausgelastet ist.
Dadurch kommt es dazu das deine Anweisungen nicht direkt ausgeführt werden sondern sich in einer warteschleife befindet.
Das liegt halt daran das dein Skript nur in einem Prozess läuft, pawn ist halt leider auch nur singelthreaded und kann daher die Anweisungen nicht aufsplitten und auf mehrere threads verteilen.
Daher überprüfe deine Callbacks
Du könntest die Spieleraktivitäten loggen und gucken was er beim "Hacken" gemacht hat, also welche Befehle er eingegeben hat etc.
Also alle musst du da nicht loggen lediglich die Callbacks worauf der Spieler Einfluss hat und es denkbar wäre das er darüber den Server belasten könnte so wäre zum Beispiel OnPlayerUpdate nicht sinnvoll zu loggen.
Beachte jedoch bei cmd-prozessoren das du bei dem gehookten callback loggst.
Für ein solches Vorhaben empfiehlt sich wahrscheinlich der Performance Profiler:
PAWN&Raknet*
In SA:MP gibt es was das nennt sich "ackslimit" Pakete / die Sekunde die ein Spieler senden "kann" (standard 2000 o. 3000).
Falls du nicht schon "ackslimit" Probleme hast Versuch sie mal runter zudrehen und falls es dann immer noch mit laggs weiter geht solltest wie schon gesagt entweder den Profiler laufen lassen oder eigenständig Callbacks loggen (wird ziemlich groß) und den Übeltäter Limitieren oder halt den Code optimieren.
Falls der Bengel mitlesen sollte schreibe ich natürlich nicht was ich davon mache.
Aber ein großes Danke an euch alle, mit einigen der Tipps werde ich das Problem bestimmt lösen können.
PAWN&Raknet*
In SA:MP gibt es was das nennt sich "ackslimit" Pakete / die Sekunde die ein Spieler senden "kann" (standard 2000 o. 3000).
Falls du nicht schon "ackslimit" Probleme hast Versuch sie mal runter zudrehen und falls es dann immer noch mit laggs weiter geht solltest wie schon gesagt entweder den Profiler laufen lassen oder eigenständig Callbacks loggen (wird ziemlich groß) und den Übeltäter Limitieren oder halt den Code optimieren.
Es ist zwar eine Lösung das ackslimit zu reduzieren, jedoch muss man bedenken wie viele Packete pro Sekunde an den Client gesendet werden, sollte er die Anzahl der Objekte, welche vom streamer für den Spieler erstellt werden auf 1000 haben und nebensächlich noch einige Packete über OnPlayerUpdate vom Spieler verlangt werden + von einem Timer so kann das limit schnell überstiegen werden und das führt dazu das die Leute vom Server gekickt werden.