Welcome to [GHB] - GAmEhAcKbAsTaRdS Forum

Welcome to [GHB] - GAmEhAcKbAsTaRdS Forum, like most online communities you must register to view or post in our community, but don't worry this is a simple free process that requires minimal information for you to signup. Be apart of [GHB] - GAmEhAcKbAsTaRdS Forum by signing in or creating an account.
  • Start new topics and reply to others
  • Subscribe to topics and forums to get email updates
  • Get your own profile page and make new friends
  • Send personal messages to other members.

Sign in to follow this  
mental

How to write a cheat in Visual Basic

Recommended Posts

Heyz.

 

First off all if your mind ain't strong enough don't even try this c++ you wont achive anything, you have to be born whit the skill

to program whit c++ and vb and delphi .

 

Anyways in this tutorial i will try to teach you on how to make a cheat in C++ Visual Studio or in other words Microsoft's

Visual Basic the easiest programing software there is on earth .

 

Requirements :

 

Visual Basic 6 ( DON'T USE VISUAL BASIC 7 / 2005 FOR IT HAS MS-ANS Compiler )

Some good music to stay calm

And some addresses

 

Lessons :

 

1. Making a cheat in visual basic : First steps we will take is creating the cheat in VB and making it undetected

and good looking. After that we will proceed to more complex levels .

 

 

2. We will integrate a complex security system and login for our cheat

 

3. We will make the cheat log ip's and send them to a PHP database on web.

 

4. We will make the cheat hardware locked so only vips can run them

 

5. We will make checksum, so if there will be a pb update our vip clients will know, if cheat becomes detected they will know

or if the new version of cheat get out they will know .

 

Lesson 1 : Make It

 

Lets get started .

 

Go > Start > All Programs > Microsoft Visual Studio > Microsoft Visual Basic 6.0

post-48-1181346555_thumb.jpg

 

1. Start New Standard EXE project

2. Go to side tree menu and press Add -> Module after window opens press Open

 

post-48-1181346757_thumb.jpg

 

3. Copy the long code bellow in to the Module Window

 

Public Const PROCESS_ALL_ACCESS = &H1F0FFF

Dim f1holder As Integer

Dim timer_pos As Long

 

'API Declaration

Public Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long

Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long

Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long

Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal Classname As String, ByVal WindowName As String) As Long

Public Declare Function GetKeyPress Lib "user32" Alias "GetAsyncKeyState" (ByVal key As Long) As Integer

Public Declare Function ReadProcessMem Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long

 

Public Function WriteAByte(gamewindowtext As String, address As Long, value As Byte)

Dim hwnd As Long

Dim pid As Long

Dim phandle As Long

hwnd = FindWindow(vbNullString, gamewindowtext)

If (hwnd = 0) Then

MsgBox "The Game Is Not Working", vbCritical, "Error"

End

Exit Function

End If

GetWindowThreadProcessId hwnd, pid

phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)

If (phandle = 0) Then

MsgBox "Can't get ProcessId", vbCritical, "Error"

Exit Function

End If

WriteProcessMemory phandle, address, value, 1, 0&

CloseHandle hProcess

End Function

 

Public Function WriteAnInt(gamewindowtext As String, address As Long, value As Integer)

Dim hwnd As Long

Dim pid As Long

Dim phandle As Long

hwnd = FindWindow(vbNullString, gamewindowtext)

If (hwnd = 0) Then

MsgBox "The Game Is Not Working", vbCritical, "Error"

End

End If

GetWindowThreadProcessId hwnd, pid

phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)

If (phandle = 0) Then

MsgBox "Can't get ProcessId", vbCritical, "Error"

Exit Function

End If

WriteProcessMemory phandle, address, value, 2, 0&

CloseHandle hProcess

End Function

 

Public Function WriteALong(gamewindowtext As String, address As Long, value As Long)

Dim hwnd As Long

Dim pid As Long

Dim phandle As Long

hwnd = FindWindow(vbNullString, gamewindowtext)

If (hwnd = 0) Then

MsgBox "The Game Is Not Working", vbCritical, "Error"

End

Exit Function

End If

GetWindowThreadProcessId hwnd, pid

phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)

If (phandle = 0) Then

MsgBox "Can't get ProcessId", vbCritical, "Error"

Exit Function

End If

WriteProcessMemory phandle, address, value, 4, 0&

CloseHandle hProcess

End Function

 

Public Function ReadAByte(gamewindowtext As String, address As Long, valbuffer As Byte)

Dim hwnd As Long

Dim pid As Long

Dim phandle As Long

hwnd = FindWindow(vbNullString, gamewindowtext)

If (hwnd = 0) Then

MsgBox "The Game Is Not Working", vbCritical, "Error"

End

Exit Function

End If

GetWindowThreadProcessId hwnd, pid

phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)

If (phandle = 0) Then

MsgBox "Can't get ProcessId", vbCritical, "Error"

Exit Function

End If

ReadProcessMem phandle, address, valbuffer, 1, 0&

CloseHandle hProcess

End Function

 

Public Function ReadAnInt(gamewindowtext As String, address As Long, valbuffer As Integer)

Dim hwnd As Long

Dim pid As Long

Dim phandle As Long

hwnd = FindWindow(vbNullString, gamewindowtext)

If (hwnd = 0) Then

MsgBox "The Game Is Not Working", vbCritical, "Error"

End

Exit Function

End If

GetWindowThreadProcessId hwnd, pid

phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)

If (phandle = 0) Then

MsgBox "Can't get ProcessId", vbCritical, "Error"

Exit Function

End If

ReadProcessMem phandle, address, valbuffer, 2, 0&

CloseHandle hProcess

End Function

 

Public Function ReadALong(gamewindowtext As String, address As Long, valbuffer As Long)

Dim hwnd As Long

Dim pid As Long

Dim phandle As Long

hwnd = FindWindow(vbNullString, gamewindowtext)

If (hwnd = 0) Then

MsgBox "The Game Is Not Working", vbCritical, "Error"

End

Exit Function

End If

GetWindowThreadProcessId hwnd, pid

phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)

If (phandle = 0) Then

MsgBox "Can't get ProcessId", vbCritical, "Error"

Exit Function

End If

ReadProcessMem phandle, address, valbuffer, 4, 0&

CloseHandle hProcess

End Function

 

post-48-1181346966_thumb.jpg

 

4. And then close it by pressing on X in tool window .

 

5. Now lets get down to design click on the form and give it a new name

color, style and so on . I chose Fixed Tool Window style of form black color background and

name [GHB]-Game cheat Bastards

 

6. Now lets make a button (Standard Button later we will go on to the radio buttons and checkboxes)

7. Once we got the button made double click on it so we can give it a function .

 

post-48-1181347592_thumb.jpg

 

Once you double clicked the button the code window appears whit 2 statements

 

Private Sub Command1_Click()

 

End Sub

 

Now enter this code between them :

Call WriteALong("WarRock", &H926134, 1)

 

So it looks like this :

 

Private Sub Command1_Click()

Call WriteALong("WarRock", &H926134, 1)

End Sub

 

Now close the code window for button and make another button that will turn off GPS

Do the same thing as you did above create a new button name it GPS OFF and double click it

and now enter this code : Call WriteALong("WarRock", &H926134, 0)

 

This is what you do whit static or dynamic addresses that need to be turned from 1 to 0 or around .

 

Part Two :

 

Showing the value of the address. First off all delete the buttons we made thill now so we have bit more space

click on form and make yourself another button and call it Command2. Put it anywhere on the form and type in

Stamina .

 

post-48-1181347999_thumb.jpg

 

Now take TextBox tool from your general window and make a

TextBox just beside the button and make it bit longer . Now double click on the stamina button and add in this code

 

Dim Value1 As Long

Call ReadALong("WarRock", &H7D9120, Value1)

Text1.Text = Value1

 

So it will look like this :

Private Sub Command2_Click()

Dim Value1 As Long

Call ReadALong("WarRock", &H7D9120, Value1)

Text1.Text = Value1

End Sub

 

Once you entered the code close the code window and go back to form.

 

Part Three :

 

Freezing static and dynamic addresses :

 

Get the "Timer" control from the General tab and add it to your form it will call "Timer1".

Now make 2 other buttons in one of them double click and write:

 

Timer1.Interval = 1

 

And in the other one

 

Timer1.Interval = 0 *This one will be stamina off*

Double click on Timer1 and write:

Call WriteALong("WarRock", &H7D9120, 1120403456)

 

Now Press RUN to see you creation and then compile it .

 

Part Three :

 

Code Explanation :

 

Call WriteALong("pppppp", &xxxxxx, v)

 

Call WriteALong // This part of the code tells the cheat to write a new value for a selected address

 

"ppppppp" // In this part enter the game process name in our example its WarRock if the hask will be for battlefield 2142 then you will type BF2142 and

so on and so on .

 

&xxxxxxx // Here you will type in your address most addreses start whit 00 ( Stamina = 007D9120 ) the & will be there beside the two 00's so if you will be writing in the address you will enter it like this &-instead of 00 and then add 7D9120 so it will look like &7d9120.

 

v // this is what you want you value to be when you press the button . Lets say boxes is 0 when its off so you have to type here 1 to turn it on and then

make another button whit same code only v to be 0 so you turn it off .

 

Dim Value1 As Long
Call ReadALong("WarRock", &H7D9120, Value1)
Text1.Text = Value1

 

Dim Value As Long // Almost same thing as above only this will make the value be shown in the textBox youhave made beside you button .

 

Call ReadALong // Will tell to gather info from the address but since we did not specify the value to be changed it will just show us the value of address

 

Text1.Text = Value1 // When you made the textBox beside you button you saw there is Text1 typed in it this part of the code will delete that text and

enter in/display Value1 // wich will be the value off address so we will see the value of the address .

 

Timer1.Interval = 1

 

Timer1.Interval = 1 // This will tell the button when pressed to freeze the address value so it dont change from its curent .

 

Timer1.Interval = 0 // This will tell Stamina Off button to unfreeze the value of address turning of the cheat

 

Call WriteALong("WarRock", &H7D9120, 1120403456) // This part off address will tell the time that he needs to freeze the givent address at that value when

the Timer1,Interval = 1 button is pressed .

 

When i get more time i will write the rest off it . 1 more exam next Thursday from math class and i am done for the year ! YAY

Edited by bobi
  • Upvote 1

Share this post


Link to post
Share on other sites

nice mental you'r great ^^ if somebody would be nice enogough

to post a torrent of the vb or something i'll be very glad thx

^^

Share this post


Link to post
Share on other sites

if i add the module in vb08, i get like 17 errors, pleas help!

 

maby you can send me a working vb project, with only the module, and the tmnf checkpoint adresses?

 

thank you

Share this post


Link to post
Share on other sites

I NEED HELP , I CAINDA WANT TO CREATE A MUONLINE HACK soo i got the address from Cheat Engine -> 0A0B12C2 but it has only 1 "0" i try typing address &A0B12C2 , it looks like this

Private Sub Command2_Click()
Dim Value1 As Long
Call ReadALong("MU", 0A0B12C2, Value1)
Text1.Text = Value1
End Sub

 

i hit X but it gives me

 Compile error

HELP..

Share this post


Link to post
Share on other sites

pleas update the lessons!

i mean this:

Lessons :

1. Making a cheat in visual basic : First steps we will take is creating the cheat in VB and making it undetected
and good looking. After that we will proceed to more complex levels .


2. We will integrate a complex security system and login for our cheat

3. We will make the cheat log ip's and send them to a PHP database on web.

4. We will make the cheat hardware locked so only vips can run them

5. We will make checksum, so if there will be a pb update our vip clients will know, if cheat becomes detected they will know
or if the new version of cheat get out they will know .

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.