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 › Other Semi-Popular First Person Shooter Hacks › WarRock - International Hacks › [Tutorial] How to VB.Net your trainer

[Tutorial] How to VB.Net your trainer

Posts 1–11 of 11 · Page 1 of 1
dezer
dezer
[Tutorial] How to VB.Net your trainer
Hello MPGH. I was writing module for VB.Net cause kyos tut interested me. However in kyo tut it was pretty strange lol. And there were a lot of problems with it. So i wrote a module, becouse copying and pasting code between subs and buttons sux, doesnt it? Now u will be able to change memory in 1 line of text (for pointers u'll need more :P). Pointers same as for VB6, read then add the offset and voila.

However reading isnt the same, here i got public variables storing read values. It is better becouse u dont need to declare variable every time u wanna read from some address. So reading will look like this (for byte, 2bytes, 4bytes, 8bytes):
Code:
ReadMemory(“someapp”, &Haddress)
Textbox1.Text = vBuffer
and for float:
Code:
ReadFloat(“someapp”, &Haddress)
Textbox1.Text = vBufferS
but before u can put ur greedy fingers on my module u need to figure out some parts of it. They were replaced with xxxxxx. Without figuring it out module won't work. Don't worry, errors displayed by VB will help you

And here comes the module:

Code:
Option Explicit On
Imports System
Imports System.diagnostics
Module ReadWriteMem
    Public vBuffer As Long 'public variable storing read values for Byte, 2 Bytes 4 Bytes and 8 Bytes
    Public vBufferS As Single 'public variable to store read floating point values

    'stuff
    Public Declare Function KeyPressed Lib "user32" Alias "GetAsyncKeyState" (ByVal Key As Integer) As Integer
    Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
    'reading
    Private Declare Function ReadMem Lib "kernel32" Alias "xxxxxx" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByRef buffer As Long, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
    Private Declare Function ReadFloat Lib "kernel32" Alias "xxxxxx” (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByRef buffer As Single, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
    'writing
    Private Declare Function WriteMem Lib "kernel32" Alias "xxxxxx" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal buffer() As Long, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
    Private Declare Function WriteFloat Lib "kernel32" Alias "xxxxxx " (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal buffer() As Single, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean

    Private appProcess As Process

    Private Function SetProcess(ByVal ProcessName As String) As Boolean
        Dim processes As Process() = Process.GetProcessesByName(ProcessName)
        If (processes.Length > 0) Then
            appProcess = processes(0)
            Return True
        Else
            Return False
        End If
    End Function

    Public Function WriteMemory(ByVal appName As String, ByVal address As Integer, ByVal value As Object, ByVal bytes As Integer)
        If SetProcess((xxxxxx)) = False Then
            MsgBox(xxxxxx & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        Dim buffer() As Long = New Long(0) {value}

        Return WriteMem(xxxxxxx.Handle, address, buffer, bytes, Nothing)

        CloseHandle(xxxxxxx.Handle)
    End Function

    Public Function ReadMemory(ByVal appName As String, ByVal address As Integer, ByVal bytes As Integer)
        If SetProcess((xxxxxxx)) = False Then
            MsgBox(xxxxxxx & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        ReadMem(xxxxxxx.Handle, address, vBuffor, bytes, Nothing)

        Return vBuffer

        CloseHandle(xxxxxxx.Handle)
    End Function

    Public Function WriteFloat(ByVal appName As String, ByVal address As Integer, ByVal value As Single)
        If SetProcess((xxxxxx)) = False Then
            MsgBox(xxxxxx & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        Dim buffer() As Single = New Single() {value}

        Return WriteFloat(xxxxxxx.Handle, address, buffer, 142, Nothing)

        CloseHandle(xxxxxxx.Handle)
    End Function

    Public Function ReadFloat(ByVal appName As String, ByVal address As Integer)
        If SetProcess((xxxxxx)) = False Then
            MsgBox(xxxxxx & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        ReadMem(xxxxxxx.Handle, address, vBufferS, 834, Nothing)

        Return vBufferS

        CloseHandle(xxxxxxx.Handle)
    End Function

End Module
There are no comments since a few days ago my comp crashed and i lost whole module. When rewritting i didnt want to bother rewriting them.

btw except for xxxxxx-ed parts there are 2 code traps. :P But while reading u should notice them since they are kinda obvious (if u understand the code)
#1 · edited 19y ago · 19y ago
Grim09
Grim09
Thanks for posting. I'll start messing around with VB.Net right now.
#2 · 19y ago
j00g0t0wn
j00g0t0wn
Cheers for posting the TUT ill have to try it out sometime maybe tommorrow
#3 · 19y ago
dezer
dezer
well if u find the xxxxxx-ed parts too hard to figure out, just say it, i'll try to make it easier or consider removing it completely..
#4 · 19y ago
WE
webtijn
Omg, n00bz..
Yesterday: VB6
Today: VB.NET
Tomorrow: C++
Day after: C#
Day after: Java
Day after: Delphi
Day after: Pascal
Day after ....

Nice tut, but do we realy need a tut for every language ? |-)
#5 · 19y ago
nbr1dan
nbr1dan
Nice, Thanks man!
#6 · 19y ago
dezer
dezer
@webtijn
yes we do
#7 · 19y ago
dezer
dezer
As i cant edit my post after such long time so i post the whole module here (no xxxx parts, i dont care anymore)
Code:
'------------------------------------------------
'Module written by dezer
'------------------------------------------------

Option Explicit On
Imports System
Imports System.diagnostics
Module ReadWriteMem
    Public vBuffer As Long 'public variable storing read values
    Public vBufferS As Single 'public variable to store read floating point values

    'stuff
    Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Integer, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Integer) As Integer
    Public Declare Function KeyPressed Lib "user32" Alias "GetAsyncKeyState" (ByVal Key As Integer) As Integer
    Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
    'reading
    Private Declare Function ReadMem Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByRef buffer As Long, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
    Private Declare Function ReadFloat Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByRef buffer As Single, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
    'writing
    Private Declare Function WriteMem Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal buffer() As Long, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
    Private Declare Function WriteFloat Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByVal buffer() As Single, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean

    Private appProcess As Process

    Private Function SetProcess(ByVal ProcessName As String) As Boolean
        Dim processes As Process() = Process.GetProcessesByName(ProcessName)
        If (processes.Length > 0) Then
            appProcess = processes(0)
            Return True
        Else
            Return False
        End If
    End Function

    Public Function WriteMemory(ByVal appName As String, ByVal address As Integer, ByVal value As Object, ByVal bytes As Integer)
        If SetProcess((appName)) = False Then
            MsgBox(appName & " not found.", MsgBoxStyle.Critical, "Error")

            End
            Exit Function
        End If

        Dim buffer() As Long = New Long(0) {value}

        Return WriteMem(appProcess.Handle, address, buffer, bytes, Nothing)

        CloseHandle(appProcess.Handle)
    End Function

    Public Function ReadMemory(ByVal appName As String, ByVal address As Integer, ByVal bytes As Integer)
        If SetProcess((appName)) = False Then
            MsgBox(appName & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        ReadMem(appProcess.Handle, address, vBuffer, bytes, Nothing)

        Return vBuffer

        CloseHandle(appProcess.Handle)
    End Function

    Public Function WriteFloat(ByVal appName As String, ByVal address As Integer, ByVal value As Single)
        If SetProcess((appName)) = False Then
            MsgBox(appName & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        Dim buffer() As Single = New Single() {value}

        Return WriteFloat(appProcess.Handle, address, buffer, 4, Nothing)

        CloseHandle(appProcess.Handle)
    End Function

    Public Function ReadFloat(ByVal appname As String, ByVal address As Integer)
        If SetProcess((appname)) = False Then
            MsgBox(appname & " not found.", MsgBoxStyle.Critical, "Error")
            End
            Exit Function
        End If

        ReadMem(appProcess.Handle, address, vBufferS, 4, Nothing)

        Return vBufferS

        CloseHandle(appProcess.Handle)
    End Function

End Module
just give me credits in your trainers...
#8 · 19y ago
Elliwood
Elliwood
thx very much mate. Really wanted this for a long time. Going to make a new hack now.
#9 · 19y ago
Elliwood
Elliwood
How can I Freeze a value in Visual studio 2005? I can´t put a timer on interval 0. Then it gives me an error. What should I use instead?
#10 · 19y ago
Vahe
Vahe
thanks ill try it later
#11 · 19y ago
Posts 1–11 of 11 · Page 1 of 1

Post a Reply

Similar Threads

  • [TUTORIAL]how to VB.net 2005 Trainers (Incl. secure passwords)By kyo in WarRock - International Hacks
    20Last post 19y ago
  • (Request) A tutorial on how to extract addresses from trainersBy englishpom in WarRock - International Hacks
    9Last post 19y ago
  • Advanced Hacking tutorial (How to find adresses for the coolest trainer functions)By nukeist_ in WarRock - International Hacks
    8Last post 19y ago
  • How to get your trainer detectedBy juppeli in WarRock - International Hacks
    18Last post 18y ago
  • [Tutorial] How to make your own undetected module in VB6By markfracasso11 in Visual Basic Programming
    17Last post 18y ago

Tags for this Thread

None