I am not trying to sound “big†but I would like to impress upon you the idea that when it comes to methods of cheating, I know up from down.
The following is for that purpose.
I am already a game programmer, working to get into better jobs, and my main interest in video-game programming is game security. I specifically would like to help protect online games from cheating, so I have studied this field quite a bit.[/list:u]
I am a moderator (just a low-end one, nothing fancy) of
this hacking/cheating forum. I generally help the single-player hackers and tell the online hackers to screw off, or ignore them. But although I help the hackers, my real purpose there is to gather knowledge regarding hacking methods so I can best combat these methods should I get into game security some day.[/list:u]
this memory hacking tool called Memory Hacking Software. This very tool is what I use to hack all games, including Final Fantasy VII, and it is what is going to discover the unfinished file formats for me. As shown in the gallery, it is actually capable of running entire cheats inside itself, and is in fact more powerful than trainers.[/list:u]
So, with this in mind…
It's relatively easy to get around that kind of restriction. Because the way I see it, you can't control what happens between saves.
Well not entirely. There are certainly things the player can change on his client, but the important things will always be stored on the server, and the client can not change those by any other means except playing the game fairly.
A guy at his home can change his Potion count to 99, but the server knows he only has 3. When he tries to use all 99, the server allows him to use only 3, and updates his Potion count back to 0, and updates his HP level.
In other words, changing information in the client just makes the client lie to you about your information.
I didn't know that there are tools for editing the game as you play it, now.
I have actually written one of the very packages of software that does this.
Besides, what bother cheating? What does it accomplish?
It depends on the game.
There are games that give the client too much control (in order to conserve packets and network communications). In some games, if you change your gold on your client, it will actually TELL the server how much gold you have.
But any good game will have the server in full control, and the client used only as a display mechanism for the user to know what the server wants.
There are even a few games that tell you to stop cheating if the server tests the client and finds that the client has the wrong amount of gold.
I will probably have a few hidden warning messages that only cheaters will be able to find.
Did you never hear of "Trainers" ?
That are in-game-cheating-tools. However, most of them were written for Win9x, and they do not work under Win2K/XP.
AFAIK, it's even harder to create trainers for 2K/XP, since they have memory protection routines or something.
If you go to the forum I mentioned you will find a “Game Trainer Studio†section.
This is a trainer MAKER that those people put together.
It allows any newbie to make a trainer (sad really), and works on any platform. I haven’t used it but my understanding is that you just use the interface to create the cheat, and then it compiles your trainer into a stand-alone .exe.
As for the memory protections on Windows 2000/XP, I would go as far as to say non-existent.
My own hacking software does the following:
Injects a DLL into the target for faster searching. DLL injection is popular for cheating.
Reads/writes the RAM of the target process.
Uses a device driver to run under Windows and hide itself from the task list so it can not be detected (by any easy means at least).
Uses a device driver to run under Windows and read target RAM that is normally unreadable (ranges above 0x7FFFFFFF) and normally reserved only for Windows.
Disables debugging protections other software try to employ so it is able to debug all processes on your computer (well, almost).
If you look at the Gallery page on my site you will see a Doom 3 Cheat.
This is something like a trainer, only it is built as a DLL plug-in that Memory Hacking Software is able to run. This cheat is able to do everything I showed in the pictures, but recently I have also added full auto-aim, with VERY high precision.
Now the problem is that, since the DLL runs inside Memory Hacking Software, it gets all the protections/access levels/debugging privileges/etc. that Memory Hacking Software gets.
Anyone can write a plug-in DLL for my software, and create a cheat that way, which can not be detected by normal means.
And BTW: As soon as the client synchronizes with the server very often, it shouldn't be that easy cheating... but, of course, nothing is impossible
Yes. The rule companies
should be following is that the server tells the client what to do, not the other way around.
It’s true that the client needs to tell the server when I hit a button to walk, or attack, but that’s it. Server verifies everything and keeps everyone in check.
L. Spiro