Correct way to handle speedhack

04/25/2010 08:48 ImmuneOne#1
What would be the correct way other then;
Code:
                            Entity.Character.StatusFlag |= Update.Flags.Cyclone;
                            Update upd = new Update(true);
                            upd.Append(Update.StatusFlag, Entity.Character.StatusFlag);
                            upd.UID = Entity.Character.ID;
                            Entity.GameHandler.SendToClient(upd.ToArray());
The only way so far I discovered is when launching superman.
04/25/2010 11:28 ChingChong23#2
I have never thought about how a speedhack detection would work. But couldn't you just measure the time between jumps, for example, lets say each cell/tile/coordinate has a value of 100ms air/jump time, say you jump 8 coordinates, the server could tell that your supposed to be in the air for at least 800ms (of course in reality its more like 1.5 - 2) but as an example. Then when the packet is received by the server for another jump, check the time the last jump was made and if it should be allowed to jump again or not (server can somewhat tell if hes still in the air, not accurately but enough to stop speedhackers)

of course, this would not apply if your using cyclone or DH.
04/25/2010 11:44 Korvacs#3
Measure the time between receiving packets as Ching says, however you could also apply this to cyclone and DH, since you could record the average time when jumping in these modes.

Just compare the last received jump packet time, to the currently received jump packet time. It works quite well ive had it implemented on an older server of mine, its just finding the right timings between packets.
05/03/2010 04:46 ImmuneOne#4
My bad, should of been more clear. I ment how to code a speedhack without dcing.
05/03/2010 06:05 TheGuyWithTheCodes#5
Quote:
Originally Posted by ImmuneOne View Post
My bad, should of been more clear. I ment how to code a speedhack without dcing.
the dcing happens, because they have set it to dc if you are moving too fast. If you want to make a speedhack without getting dc, then i think you will need to make some way to get around that system :)
05/03/2010 06:28 gabrola#6
Quote:
Originally Posted by TheGuyWithTheCodes View Post
the dcing happens, because they have set it to dc if you are moving too fast. If you want to make a speedhack without getting dc, then i think you will need to make some way to get around that system :)
In other words, you gotta figure that out yourself
05/03/2010 07:38 TheGuyWithTheCodes#7
Quote:
Originally Posted by gabrola View Post
In other words, you gotta figure that out yourself
im not after creating a speedhack lol.
I just gave some hints.
05/03/2010 19:16 gabrola#8
Quote:
Originally Posted by TheGuyWithTheCodes View Post
im not after creating a speedhack lol.
I just gave some hints.
I was telling him....
05/03/2010 20:29 TheGuyWithTheCodes#9
Quote:
Originally Posted by gabrola View Post
I was telling him....
thought it was me, because you quote me :P
05/10/2010 17:17 ImmuneOne#10
You should not give advice about something you have never done before or if you have no knowledge about the subject. The problem is solved.
05/10/2010 18:49 Ian*#11
If you base it on tickcount its an easy fix for hackers.
Base it by the distance traveled in 10 second intervals.
That would be at most 100 steps.

Put a check for that wrapped up in a timer and it won't be fixed