BlueF0X
23rd April 2007, 00:19
Tired of being a leecher?
I have noticed some people here at MPC, being tired of leeching and wanna really learn.
But what’s necessary to call yourself a ‘’Maplestory hacker’’. Downloading a .ct and tick the hacks you wanna use? But when tick those scripts, do we know what just happened? How godmode works? Such basic things of hacking are just passed by.
Inspired on lalaman and his thread of Art Of Hacking I’m trying to make a more introductory and noob friendly guide into the real ‘’Game cheating’’.
With this explanation I wanna give you a more basic idea of hacking, and giving you what you need to start your learning and in some future, make your own private hacks.
I will try to see in my topic:
ºThe history and functions of the Cheat Engine
-Undetected cheat engine Tutorials
ºBasic knowledge.
ºHow did the first hacks where found or created?
-Finding your own addresses via AoB or Opcodes
ºHash Bypass, the new way to hack
ºWhat its Auto-Assemble?
ºWhat makes you a real hacker?
-Becoming ‘’Teh Hacker’’
First of all, to hack, we all know we need an Engine. The ‘’Cheat Engine’’ the most popular cheating software used, was primarily coded in Borland Delphi (Using some C, for its kernel module) by DarkByte, created for cheating purposes using a hex memory searcher and editor, allowing you to modify some variables. With a very wide optional search for values and a dissembled memory view of the process, In which you can make alterations giving you some advantage.
The Kernel module (dbk32.sys) is useful in that it allows hardware breakpoints to be set and also bypasses APIs. Dbk32.sys is compiled in DDK, as even though it is written in C, a simple C compiler cannot make a driver.
When you are trying to make your own Undetected Cheat Engine they ask you for:
- Delphi 7 - DDK - Actual Search and Replace - Cheat Engine Source –
Now you can understand why you need them right? If you wanna make an ‘’UCE’’:
http://www.mpcforum.com/showthread.php?t=162208 (Compiled by Yo0Sup)
Pointers, addresses, opcodes, offsets. Whats all that stuff? And how do that works. You might be asking. And how do we implement this computer knowledge into cheating?
In the computer science, a ‘’memory address’’ is a unique identifier for a memory location at which a CPU or other device can store a piece of data for later retrieval.
So software store data into addresses for easy retrieval? Ok now to explaining, the addresses we look for to make scripts have stored an Operational Code or Opcode.
An opcode is the portion of a machine language instruction that specifies the operation to be performed in a software. If we change or use the Opcode in our purpose the game will work in a different way. Asome huh? But some addresses are ‘’Dynamic’’ and change all the time.
How can we find them? The pointers will work here. A pointer is a method of accessing a dynamic address. The pointer is used to take a known static address and with the help of an offset, to point to the dynamic address. The pointer is "created" by using the VALUE of the pointer aka the static address (not the address itself) plus the offset. This will give you the ADDRESS of the destination. The offset within an array or other data structure object is an integer indicating the distance (displacement).
The first hackers used this knowledge to find the first hacks. When a program is being executed, it gets translated to machine language, some like to call it assembly language.
The first hacks where found by inspection of the game. And by trying to modify those values some hacks where found. Once found those hacks, every patch was easy stuff to find that hacks over and over.
There are two easy ways to find your hacks: Array of bytes and Opcodes.
Each address can be represented in different data agroupation, in Array of bytes it represents the adress as some pair of bytes needed to make its operation, that’s why some array of bytes don’t change itself it’s the Same opcode in a different adress. Via Opcode finding you search for the Operation code of the adress, same as array of bytes it wont change. To search them via Opcode finding you need a debugger, like OllyDbg.
The hash/crc bypass started a new era for hacking. Making possible for us to active hacks without using breakpoints. Whats crc? Crc stands for ‘’Cyclic redundancy check’’
It’s a type of hash function used by some softwares to produce a small, fixed-size checksum of a larger block of data. The checksum is used to detect errors (Breakpoints caused by our debugger, Cheat Engine) A CRC is computed and appended before transmission or storage, and verified afterwards by the recipient to confirm that no changes occurred in transit. A .Cem file it’s a saved region of the memory of Maplestory, with a script. The CRC implemented into Maplestory its forced to read the .Cem file and not the game itself, making possible to use scripts instead of breakpoints.
The scripts used to hack maple story are Auto-Assamble scripts, the assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture. We need to know ASM to be a hacker because it’s the easiest way to represent data and manipulate it with a debugger.
The term hacker today its very overused, what makes you a hacker? I would say to be a hacker on Maplestory community you will need Auto-Assemble knowledge, to know to code or program software (Basic stuff), be able to create and find your own hacks, be able to modify an Engine, and other stuff you should know at this time.
I found some very good tutorials in stuff that will be helpful to hack Maplestory and some other games, and even unpacking or cracking software.
I recommend you to start learning ASM for debugging issues, then C, C++.
With a search engine like Google you can find shit load of tutorials about this terms.
I recommend you to try to learn as much as you can. Scruie made a nice Rapidshare tutorial download page that helped me and will help you:
http://rapidshare.com/users/1M5ZR9 (Compiled by Scruie)
Thanks for reading, BlueF0X
I have noticed some people here at MPC, being tired of leeching and wanna really learn.
But what’s necessary to call yourself a ‘’Maplestory hacker’’. Downloading a .ct and tick the hacks you wanna use? But when tick those scripts, do we know what just happened? How godmode works? Such basic things of hacking are just passed by.
Inspired on lalaman and his thread of Art Of Hacking I’m trying to make a more introductory and noob friendly guide into the real ‘’Game cheating’’.
With this explanation I wanna give you a more basic idea of hacking, and giving you what you need to start your learning and in some future, make your own private hacks.
I will try to see in my topic:
ºThe history and functions of the Cheat Engine
-Undetected cheat engine Tutorials
ºBasic knowledge.
ºHow did the first hacks where found or created?
-Finding your own addresses via AoB or Opcodes
ºHash Bypass, the new way to hack
ºWhat its Auto-Assemble?
ºWhat makes you a real hacker?
-Becoming ‘’Teh Hacker’’
First of all, to hack, we all know we need an Engine. The ‘’Cheat Engine’’ the most popular cheating software used, was primarily coded in Borland Delphi (Using some C, for its kernel module) by DarkByte, created for cheating purposes using a hex memory searcher and editor, allowing you to modify some variables. With a very wide optional search for values and a dissembled memory view of the process, In which you can make alterations giving you some advantage.
The Kernel module (dbk32.sys) is useful in that it allows hardware breakpoints to be set and also bypasses APIs. Dbk32.sys is compiled in DDK, as even though it is written in C, a simple C compiler cannot make a driver.
When you are trying to make your own Undetected Cheat Engine they ask you for:
- Delphi 7 - DDK - Actual Search and Replace - Cheat Engine Source –
Now you can understand why you need them right? If you wanna make an ‘’UCE’’:
http://www.mpcforum.com/showthread.php?t=162208 (Compiled by Yo0Sup)
Pointers, addresses, opcodes, offsets. Whats all that stuff? And how do that works. You might be asking. And how do we implement this computer knowledge into cheating?
In the computer science, a ‘’memory address’’ is a unique identifier for a memory location at which a CPU or other device can store a piece of data for later retrieval.
So software store data into addresses for easy retrieval? Ok now to explaining, the addresses we look for to make scripts have stored an Operational Code or Opcode.
An opcode is the portion of a machine language instruction that specifies the operation to be performed in a software. If we change or use the Opcode in our purpose the game will work in a different way. Asome huh? But some addresses are ‘’Dynamic’’ and change all the time.
How can we find them? The pointers will work here. A pointer is a method of accessing a dynamic address. The pointer is used to take a known static address and with the help of an offset, to point to the dynamic address. The pointer is "created" by using the VALUE of the pointer aka the static address (not the address itself) plus the offset. This will give you the ADDRESS of the destination. The offset within an array or other data structure object is an integer indicating the distance (displacement).
The first hackers used this knowledge to find the first hacks. When a program is being executed, it gets translated to machine language, some like to call it assembly language.
The first hacks where found by inspection of the game. And by trying to modify those values some hacks where found. Once found those hacks, every patch was easy stuff to find that hacks over and over.
There are two easy ways to find your hacks: Array of bytes and Opcodes.
Each address can be represented in different data agroupation, in Array of bytes it represents the adress as some pair of bytes needed to make its operation, that’s why some array of bytes don’t change itself it’s the Same opcode in a different adress. Via Opcode finding you search for the Operation code of the adress, same as array of bytes it wont change. To search them via Opcode finding you need a debugger, like OllyDbg.
The hash/crc bypass started a new era for hacking. Making possible for us to active hacks without using breakpoints. Whats crc? Crc stands for ‘’Cyclic redundancy check’’
It’s a type of hash function used by some softwares to produce a small, fixed-size checksum of a larger block of data. The checksum is used to detect errors (Breakpoints caused by our debugger, Cheat Engine) A CRC is computed and appended before transmission or storage, and verified afterwards by the recipient to confirm that no changes occurred in transit. A .Cem file it’s a saved region of the memory of Maplestory, with a script. The CRC implemented into Maplestory its forced to read the .Cem file and not the game itself, making possible to use scripts instead of breakpoints.
The scripts used to hack maple story are Auto-Assamble scripts, the assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture. We need to know ASM to be a hacker because it’s the easiest way to represent data and manipulate it with a debugger.
The term hacker today its very overused, what makes you a hacker? I would say to be a hacker on Maplestory community you will need Auto-Assemble knowledge, to know to code or program software (Basic stuff), be able to create and find your own hacks, be able to modify an Engine, and other stuff you should know at this time.
I found some very good tutorials in stuff that will be helpful to hack Maplestory and some other games, and even unpacking or cracking software.
I recommend you to start learning ASM for debugging issues, then C, C++.
With a search engine like Google you can find shit load of tutorials about this terms.
I recommend you to try to learn as much as you can. Scruie made a nice Rapidshare tutorial download page that helped me and will help you:
http://rapidshare.com/users/1M5ZR9 (Compiled by Scruie)
Thanks for reading, BlueF0X