Skip to content
MPGHThe Dark Arts
/
RegisterLog in
Forum
Community
What's NewLatest posts across the boardTrendingHottest threads right nowSubscribedThreads you follow
Discussion
GeneralIntroductionsEntertainmentDebate FortFlaming & Rage
Board
News & AnnouncementsMPGH TimesSuggestions & HelpGiveaways
More Sections
Art & Graphic DesignProgrammingHackingCryptocurrency
Hacks & Cheats
Games
ValorantCS2 / CS:GOCall of Duty / WarzoneFortniteApex LegendsEscape From Tarkov
+14 moreLeague of LegendsGTA VMinecraftRustROTMGBattlefieldTroveBattleOnCombat ArmsCrossFireBlackshotRuneScapeDayZDead by Daylight
Resources
Game Hacking TutorialsReverse EngineeringGeneral Game HackingAnti-CheatConsole Game Hacking
Tools
Game Hacking ToolsTrainers & CheatsHack/Release NewsNew
Submit a release →Share your cheat, tool, or config with the community.
AINEW
AI Tools
General & DiscussionPrompt EngineeringLLM JailbreaksHotAI Agents & AutomationLocal / Open Models
AI × Gaming
AI Aimbots & VisionML Anti-CheatGame Bots & Automation
Create
AI Coding / Vibe CodingAI Art & MediaAI Voice & TTS
The AI frontier →Where game hacking meets modern machine learning. Jump in.
Marketplace
Buy & Sell
SellingBuyingTradingUser Services
Trust & Safety
Middleman LoungeMarketplace TalkVouch Copy Profiles
Money
Cryptocurrency TalkCurrency ExchangeWork & Job Offers
Start selling →List accounts, services, and goods. Use the middleman to trade safe.
MPGH The Dark Arts

A community for offensive security research, reverse engineering, and AI.

Community

ForumMarketplaceSearch

Account

RegisterLog in

Legal

Privacy PolicyForum RulesHelp & FAQ
© 2026 MPGH · All rights reserved.Built by the community, for the community. For educational purposes onlyContent is shared for security research and education — we don't condone illegal use. You're responsible for complying with applicable laws. Use at your own risk.
Home › Forum › MultiPlayer Game Hacks & Cheats › Game Hack & Cheat Development › Game Hacking Tutorials › Writing your own Visual Basics (v5 or v6) Trainer

Writing your own Visual Basics (v5 or v6) Trainer

Posts 1–15 of 30 · Page 1 of 2
TheRedEye
TheRedEye
Writing your own Visual Basics (v5 or v6) Trainer
How To Make Trainers With Visual Basic 5/6
By TheRedEye

Stamina address has been updated according to the new addresses!

Tools needed:

1. Visual Basic 5/6.
2. Some working addresses.
3. Brain.

Necessary Knowledge:

1. Basic programming (really basic)
2. Know what addresses means, how they work and how to find them.


Part One - simple edit any address.

Open VB, choose standard EXE and press "open".
On the Forms window press right click and choose "Add" -> "Module" then press "Open".
Now copy this long code into the module window:

Code:
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
(This code is an API statement that allowing the VB to edit memory addresses)
After you copied it close the Module window.

Writing new value
Now take the control "CommandButton" from the General tab.
Make a button in the middle of the form it will called Command1.
Double click on it and write this code:

Code:
Call WriteALong("WarRock", &H926134, 1)
So it will look like this:

Code:
Private Sub Command1_Click()
    Call WriteALong("WarRock", &H926134, 1)
End Sub
Explanation: Call WriteALong("xxxx", &Hyyyy, z)
Call WriteALong – calling the function to write new values
Xxxx – the game name (in this case Warrock)
&Hyyyy - &H is for VB to know that the number next to it (yyyy) is in hex. So yyyy is our address in this case it GPS address - 00926134 (Warning! GPS is detected don’t try it!)
Z – is the value we want to change to.

Close the window.
Now you can run the software with the "Start" button that look like "Play" that placed above. You will see your form with the button and when you will press on the button, GPS will be active until u will get detected. (Try it with noob account)
If you want turn off button make new button and the value to 0 in stand of 1.

Reading address value
Now if we want to see what value some address contain you need to read it and then decide how to use the value.
For exmple we will take the Stamina address 007D9120.
Make another button the name will be "Command2".
From General tab take "TextBox" and make a textbox on your form next to the Command2 button, it will be "Text1".
Double click on Command2 and write:
Code:
Dim Value1 As Long
Call ReadALong("WarRock", &H7D9120, Value1)
Text1.Text = Value1
This code will take the 007D9120 value and will put it into "Value1" that we state him with "Dim" and then "Text1" will get the "Value1" value, so we will see it on screen.
Run the program and you will see that when your stamina is full the value is 1120403456, so we will need to freeze this value in order to get Unlimited Stamina.

Part Two – freeze an address.
In this part we will learn how to freeze the Stamina address.
First we will need a timer that will freeze the address.
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:

Code:
Timer1.Interval = 1
And in the other double click and write:

Code:
Timer1.Interval = 0
Double click on Timer1 and write:
Code:
Call WriteALong("WarRock", &H7D9120, 1120403456)
Now run the program and when you will press on the first button the Stamina will freeze and when you will press on the second button the stamina will back to normal.

Now you can make your own hack!
Please don’t copy it!

Soon I will add how to use addresses with pointers.
That it for now, Enjoy!


Copyright
TheRedEye.


Credits
Satan website - for the API statement.


Sticky it please..


If I helped you and you want to help me back Because all the addresses has been changed i will welcome your help with more addresses..
theredeyes@gmail.com
Xfire: thekabab
or PM me with some nice addresses and pointers tnx

Dont be a leecher! and help me 2 with hard addresses!
and give me a reputation!
over here
#1 · edited 19y ago · 19y ago
ignatar
ignatar
looks like a good tut maybe ill try it later thanks mate
#2 · 19y ago
TheRedEye
TheRedEye
it is..
enjoy!
#3 · 19y ago
B4sk3tb4ll
B4sk3tb4ll
Very nice TUT. Im in the middle of it right now
#4 · 19y ago
element379
element379
nice
hmmm good details on "how to..." i like this, im almost done with it, thanks dude!
#5 · 19y ago
ST
Stranger00
Nice work. Looks kind of easy too. I got a question though. If i made a trainer using this it would eventually become detected right? when that happens do I just edit certain strings or something to make it undetected? Kind of like how the UCE worked? I'm gonna try making this once I find my Visual Basics CD to install it.

Oh yeah, and I'm looking forward to reading your next tutorial w/ pointers. Also could you maybe talk about how to add hot keys?
#6 · edited 19y ago · 19y ago
chc18
chc18
Thanks man, i hope this gets Stickied
#7 · 19y ago
TheRedEye
TheRedEye
Quote Originally Posted by Stranger00 View Post
Nice work. Looks kind of easy too. I got a question though. If i made a trainer using this it would eventually become detected right? when that happens do I just edit certain strings or something to make it undetected? Kind of like how the UCE worked? I'm gonna try making this once I find my Visual Basics CD to install it.

Oh yeah, and I'm looking forward to reading your next tutorial w/ pointers. Also could you maybe talk about how to add hot keys?
about the detected i dont know cause my hack never got detected!
but i think u just need to edit the name and the file size and stuff like the uce

i will add Hotkeys and Pointers, don't worry!
should i add more thing to this post? or to another?
#8 · edited 19y ago · 19y ago
ST
Stranger00
Whatever is easier for you I guess. I'm making a trainer, but I gotta find all the addresses again.
#9 · 19y ago
DO
Dokuda
Stickey !! ^^



I am really going to use it ^^ Thanks a lot.. and go to your CP, i left a rep point ;D read it ;DDDD


EDIT:
Quote Originally Posted by Stranger00 View Post
Nice work. Looks kind of easy too. I got a question though. If i made a trainer using this it would eventually become detected right? when that happens do I just edit certain strings or something to make it undetected? Kind of like how the UCE worked? I'm gonna try making this once I find my Visual Basics CD to install it.

Oh yeah, and I'm looking forward to reading your next tutorial w/ pointers. Also could you maybe talk about how to add hot keys?

This can Prolly also be solved by just changing the process name of the hack, Like name it Iexplorer.exe or erhm... svchost.exe... a PC cant live without that,, So they cant close your WR down for that..
WR scans your procces list for hacks..
#10 · edited 19y ago · 19y ago
metallica92
metallica92
think i'll make a try later^^
#11 · 19y ago
RU
Rulezzo
Vary good work

Thanks a lot, now i try it
#12 · 19y ago
iverson954360
[MPGH]iverson954360
Redeye, put this tut into like photoshop or something and use a water mark all over the page, then save it, so it makes it kinda hard to deny if someone leached it because they would either have to type it out themself or put the picture on, which then everyone would know it was done by you
#13 · 19y ago
TheRedEye
TheRedEye
Quote Originally Posted by iverson954360 View Post
Redeye, put this tut into like photoshop or something and use a water mark all over the page, then save it, so it makes it kinda hard to deny if someone leached it because they would either have to type it out themself or put the picture on, which then everyone would know it was done by you
if it meant to be leach, it will leach..
i did it for the freedom of information.
and if some dame noob guy will take it
he can push his fingers into his a55555.
you all know who made it and that what is impotent
#14 · edited 19y ago · 19y ago
DO
Dokuda
Well, You're not english are you..? I cant notice, But i do understand ^^


I agree with you, we prolly all know this is made by you, If some noob takes it, Let him ^^ He gains nothing..
#15 · 19y ago
Posts 1–15 of 30 · Page 1 of 2

Post a Reply

Similar Threads

  • Writing your own C++ TrainerBy l0ngcat in Game Hacking Tutorials
    46Last post 7y ago
  • [Tutorial]Make your first hack in Visual Basic 6 (and a begin in CE) (for noobs)By diamondo25 in Programming Tutorials
    28Last post 17y ago
  • Packets & Visual BasicBy BadBob in Hack Requests
    5Last post 20y ago
  • How to make your own radiostation?By nasir91 in General
    3Last post 19y ago
  • [Help] Atom API with Visual Basic 6.0 or .NETBy Bull3t in Visual Basic Programming
    5Last post 20y ago

Tags for this Thread

None