Guest has written
you don't get it DC, EVERY game is hackable even the MOST secured game is HACKABLE..
Look at GunZ with it's top security system yet you see people hacking, CS2D Max might have a decent security but you cant say its impossible to hack, he was a CLIENT at another person's Dedi server and he DID was hacking, next time ill take a screenshot when I see him
Look at GunZ with it's top security system yet you see people hacking, CS2D Max might have a decent security but you cant say its impossible to hack, he was a CLIENT at another person's Dedi server and he DID was hacking, next time ill take a screenshot when I see him
Not if the variables are stored on the server side. In 0104, the variables are stored client side and sent to the server, which makes it extremely hackable. However if you want to hack max server, you'll have to be able to find a vulnerability in the server itself, then presume command over the server processing, before you can even hack the game. If you have to do all these first, it might just be easier to hack the root access to the real server itself.
Of course, specially crafted packets may still allow a few people to do speed hacks but the server will check the difference between distance/time to determine its velocity. Wall hacks are impossible seeing as collision detection is now on the server side (I Presume) as are ammo and weapon hacks (if money is on the server side as well) The server crashing is actually a fairly simple fix. The original cs2d uses the first 2 bytes to craft the PacketID and another variable. In this case it sends 250 twice to join, which is FAFA (this is the join code for 0104), translated into short it will be 64250. The max's first variable is a short, which has a range up to 65025, which is FE01 in Hex. However 0104's msgid check code is 255: (first byte of a short), which automatically goes over 65280. Thus creating a type overflow, which is probably unhandled resulting in the server crashing.
If anyone is interested in a temporary solution, I have created a script that restarts the server every time it crashes:
OS: Linux
Language: Python
Dependencies: Python standard libraries
Code:
import os
import time
import sys
while 1:
def run(program, *args):
pid = os.fork()
if not pid:
os.execvp(program, (program,) + args)
return os.wait()[0]
run("./cs2d_dedicated", "")
time.sleep(1)
Instructions, put this in the dedicated directory, and then just run this script. Everytime that the server crashes, it sends an exit code back and the script will start over again.