Generate Lag
-
Unfaithful
- Neophyte Poster
- Posts: 38
- Joined: Mon Jun 11, 2007 1:35 pm
Generate Lag
There is a way to generate lag on concrete player?
-
Unfaithful
- Neophyte Poster
- Posts: 38
- Joined: Mon Jun 11, 2007 1:35 pm
I'd suggest an external utility that uses cpu cycles. Running winrar to compress a directory is a good one. It will nicely lag all players on the shard.
It's easy enough to script in something that takes 100% cput - just about anything with a foreach loop searching the world will do it if you put in the sleeps you want.
These lag everyone, but I've no idea how to do it for one player though.
It's easy enough to script in something that takes 100% cput - just about anything with a foreach loop searching the world will do it if you put in the sleeps you want.
These lag everyone, but I've no idea how to do it for one player though.
-
mr bubbles
- Grandmaster Poster
- Posts: 120
- Joined: Thu Jan 18, 2007 2:34 am
You could probably do it but it may lag the server. You'd also have to be very careful of crashing the client. If you do packet hooks, you know what I'm talking about. If you want to just be nasty, it would be easy to write a function like CrashClient().
If you could find out a client process that is resource intensive for the client but not the server. I know whenever a client has to select where to place a multi it's fairly CPU intensive. But newer CPUs can handle that with no problem. You -could- hook some packets, and delay them, but that's a really weird way to go about an even weirder idea.
If you could find out a client process that is resource intensive for the client but not the server. I know whenever a client has to select where to place a multi it's fairly CPU intensive. But newer CPUs can handle that with no problem. You -could- hook some packets, and delay them, but that's a really weird way to go about an even weirder idea.
Scary People, but try to write a script like.
Would this work?
Code: Select all
Program lagloop( Chr )
var Chry := GetObjProperty( Chr,"#Chr.y" )
var Chrx := GetObjProperty( Chr,"#Chr.x" )
var WaitTime := GetObjProperty( Chr,"#WaitTime" )
var Timer := ReadGameClock()
If( Timer > WaitTime )
Chry := Chry - 1
Chrx := Chrx - 10
SetObjProperty( Chr,"#WaitTime", ReadGameClock()+RandomDiceRoll(6)
Endif
Endprogram
I thought something like this (~pseudo).
Code: Select all
// Launch with Start_Script("lagwarp", who) on logon
use os;
use uo;
use util;
program lagwarp( who )
while (who.connected)
var lastx := who.x;
var lasty := who.y;
var lastz := who.z;
SleepMS(200 + RandomInt(200));
MoveObjectToLocation(who, lastx, lasty, lastz, who.realm, MOVEOBJECT_FORCELOCATION);
endwhile
endprogram
-
Unfaithful
- Neophyte Poster
- Posts: 38
- Joined: Mon Jun 11, 2007 1:35 pm