Kennt jemand ein System das man scripten kann, was den Server ununterbrochen zum Laggen bringt und was direkt einen High Ping raushaut?
System was dem Server zum laggen bringt?
- [iRP]Syntro
- Geschlossen
- Erledigt
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
-
-
for(;;)
oder
while(true) -
for(;;)
oder
while(true)
Wie genau muss ich das verstehen? Wo sollte ich das verwenden? -
der o.g. Code ist eine endlos Schleife.
Wo du das im Grunde einsetzt ist völlig egal.Es sollte da verwendet werden, wo du es auch benutzen möchtest
-
Wenn ich die ganze Zeit z.B Objecte unter OnGameModeInIt in einer Endlosschleife verwende, laggt er nicht.
-
Unter OnplayerUpdate einfach etwas in den Chat schreiben lassen bzw. an jedem User etwas senden, aber das würde nur zu FPS-Drops führen, aber vielleicht ist es ja das, was du willst.
BTW: Einen High-Ping kann man soweit ich weiß Scripttechnisch nicht wirklich erzeugen, höchstens den Server abstürzen lassen.
-
http://wiki.sa-mp.com/wiki/Useful_Functions#Wait
stock Wait(time)
{
new stamp = tickcount();
while (tickcount() - stamp < time)
{
}
return 1;
}
Das kannst du z.B. jede Sekunde für 200ms ausführen lassen.
Oder ein wenig mit random arbeiten.
Trotzdem frage ich mich gerade: WARUM?HighPing -> Server in den Tiefen irgendeines Ozeans ...
-
Wait() ist, wenn du willst dass der Server nur sehr langsam ist, aber nicht ganz weg ist, wohl besser als eine Endlosschleife.
Aus der würde das Script nie mehr rauskommen, damit wäre der Server effektiv gecrasht. -
Also ich habe meinen Server dazubekommen das er 15 Sekunden lang überhaupt nichts gemacht hat.
Die Schleife von Blackace und in der Schleife noch eine, mein Code war so:
for(new ob; ob < CountDynamicObjects(); ob++)
{
for(new ro; ro < sizeof(RaceObjects); ro++)
{
if(RaceObjects[ro] != -1)
{
if(ob == RaceObjects[ro])
{
DestroyDynamicObject(RaceObjects[ro]);
RaceObjects[ro] = -1;
}
}
}
}RaceObjects wurde so definiert:
RaceObjects[10000];
und auf dem Server waren ca. 18.000 Objekte d.h. ist er 18.000 mal 10.000 mal durchgegangen, das hat auf dem Server zu einem 15 Sekunden lagg geführt, du kannst dann halt bei CountDynamicObjects irgendeine höhere Zahl eingeben, das der Server dann über einen viel längeren Zeitraum laggt bzw. nichts mehr macht außer dem Code.
-
Und.. warum? xD
-
-
Und.. warum? xD
Bin mir nicht sicher ob du mich meinst, aber ich habe ein kleines Race System geschrieben wo die komplette Rennstrecke gemappt ist und um das nicht für jedes Rennen anzupassen hab ich Global einfach 10.000 genommen hab dann, aber erst sehr spät gemerkt das der Server beim löschen der Objekte sich für ca. 15 Sekunden aufhängt, mittlerweile habe ich es auf eine andere Art gelöst. :p -
Achso, sorry - der erste Satz hatte den Eindruck erweckt, dass du Code gesucht hattest, der deinen Server 15 Sekunden außer Gefecht setzt und dann schlussendlich auch welchen gefunden hast
-
breadfish.de
Hat das Thema geschlossen.