Results 1 to 15 of 15
  1. #1
    Nano232's Avatar
    Join Date
    Aug 2011
    Gender
    male
    Location
    Croatia
    Posts
    109
    Reputation
    10
    Thanks
    513
    My Mood
    Amazed

    How to make game trainer in VB



    I hope you like it










  2. #2
    abuckau907's Avatar
    Join Date
    Dec 2012
    Gender
    male
    Location
    other side of the wire
    Posts
    1,342
    Reputation
    162
    Thanks
    239
    My Mood
    Cold
    You should explain more about how ReadWriteMemory actually works.
    Calling a function 3 times isn't really explaining much. Except how to write a value at an address. That's what a trainer is, but I wouldn't say you're explaining 'how to.' ?

  3. #3
    Rance-Sama's Avatar
    Join Date
    Aug 2012
    Gender
    male
    Location
    Ice
    Posts
    6,322
    Reputation
    653
    Thanks
    8,883
    Too many flaws in the video. What if they want to hack a game that is protected? Then what? What if the address changes?

  4. #4
    abuckau907's Avatar
    Join Date
    Dec 2012
    Gender
    male
    Location
    other side of the wire
    Posts
    1,342
    Reputation
    162
    Thanks
    239
    My Mood
    Cold
    agreed. If you're going to make a 'how to' video, if you can, please put audio commentary in the video, not txt :/ just personal preference, but I think a lot of ppl are similar. Also, you don't really explain "how to" make a trainer, you just give 1 very specific example of doing it. Yes, poking new values into a ram address is what a trainer does, and you did that, but you didn't explain how/why. You apparently uploaded the read/writeprocessmemory code, but didn't explain it all. That's where all the juice is. :/

    it should have explained:
    1) OpenProcess
    2) WriteProcessMemory
    3) ReadProcessMemory
    4) any nuances for 1-3 (ie. PROCESS_ALL_ACCESS vs vm_query, ReadProcessmemory and &actualBytesRead, etc etc)

  5. #5
    4fun?'s Avatar
    Join Date
    Mar 2012
    Gender
    male
    Location
    in the twilight zone
    Posts
    150
    Reputation
    10
    Thanks
    1,742
    My Mood
    Devilish
    Thanks man

    Im a newbie to and I like your movie, it gives me a good first impression of what VB is.

    The other reactions means nothing for me because im not so far yet. Maybe you can those reactions also made on a movie? I hope so....

  6. #6
    abuckau907's Avatar
    Join Date
    Dec 2012
    Gender
    male
    Location
    other side of the wire
    Posts
    1,342
    Reputation
    162
    Thanks
    239
    My Mood
    Cold
    "Maybe you can those reactions also made on a movie?" - huh?


    edit: I retract my previous post...his video does what his title says..just not what I expected it to be. It is what it is.
    Last edited by abuckau907; 12-30-2012 at 05:39 PM.

  7. #7
    mynameisdoom's Avatar
    Join Date
    Dec 2012
    Gender
    male
    Posts
    14
    Reputation
    10
    Thanks
    1
    Great as a simple tutorial, however Game Trainer Design can consist of a lot more difficult problems. As mentioned by one of the users above, addresses can change, meaning the program becomes useless. This was a problem I faced when I made a Borderlands Trainer. It worked up until I restarted the program.

  8. #8
    silentus's Avatar
    Join Date
    Feb 2012
    Gender
    male
    Location
    Nowhere town
    Posts
    54
    Reputation
    10
    Thanks
    578
    My Mood
    Cool
    Could someone help me with this ?
    I tried making a money cheat for SA:MP and i got the address and when i set the value from CE then it works, but when i click the button in my vb program then it shows a msgbox "Failed to open gta_sa" however the process gta_sa (gta_sa.exe) is running and gta_sa is a valid name.I tried both gta_sa and gta_sa.exe and both show the same error.
    My button1 click code:
    Code:
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim money As String = TextBox1.Text
    
            Try
                WriteInteger("gta_sa", &HB7CE50, money)
            Catch ex As Exception
    
            End Try
        End Sub
    And btw my address is really 00B7CE50 but when i put it to the code those 2 zeros on start got cut automatically, is that normal ?

  9. #9
    Pingo's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Posts
    687
    Reputation
    24
    Thanks
    865
    My Mood
    Blah
    @silentus
    Removing the 2 zeros is normal.
    The problem is with your memory class so no one would beable to help without seeing the code.
    That error was put in place by the creator of the class.

    If you have team viewer, send me a visitors message with the user/pass and i'll have a look at it.

  10. #10
    abuckau907's Avatar
    Join Date
    Dec 2012
    Gender
    male
    Location
    other side of the wire
    Posts
    1,342
    Reputation
    162
    Thanks
    239
    My Mood
    Cold
    @silentus - you should really write the mem library yourself (good to understand it all, but)

    my guess is, no memory function named writeInteger is going to expect a string for the "value" to write...it probably expect an Integer....change it from string to integer.

    Code:
            Dim money As Int32 = Convert.ToInt32(TextBox1.Text) '' <------- x x x 
    
            Try
                WriteInteger("gta_sa", &HB7CE50, money)
            Catch ex As Exception
    
            End Try
        End Sub
    edit: if someone else's memory class "can't find the process", like pingo said, it's a problem w/ the class, not your button1 code.

    Are you admin?

    OR
    If you tried every possible "process name", maybe it's not going by "process name" : try "main window title".

    # comment: is 0000001 the same as 1 ? It's the same for hex, binary etc.
    Last edited by abuckau907; 01-06-2013 at 07:49 AM.
    'Some things that can be counted, don't matter. And some things that matter, can't be counted' - A.E.
    --
     

    My posts have some inaccuracies/are wrong/wrong keyword(s) used.
    They're (maybe) pretty close, and I hope they helped you, not created confusion. Take with grain of salt.

    -if you give rep, please leave a comment, else it means less.

  11. #11
    Huxlay's Avatar
    Join Date
    Jan 2013
    Gender
    male
    Posts
    3
    Reputation
    10
    Thanks
    0
    My Mood
    Yeehaw
    nice tutorial

  12. #12
    hardbassbv's Avatar
    Join Date
    Jun 2009
    Gender
    male
    Location
    ftj
    Posts
    2
    Reputation
    10
    Thanks
    0
    Could you upload the class?
    I want to compare it to mine.

  13. #13
    Nano232's Avatar
    Join Date
    Aug 2011
    Gender
    male
    Location
    Croatia
    Posts
    109
    Reputation
    10
    Thanks
    513
    My Mood
    Amazed
    link reuploaded










  14. #14
    Rifju's Avatar
    Join Date
    Oct 2017
    Gender
    male
    Location
    Poland
    Posts
    9
    Reputation
    10
    Thanks
    58
    My Mood
    In Love
    What if I have more than one offset?


    button code:

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim czytaj = ReadInteger("Game", &H7ED7B8)
    Dim wartosc = TextBox1.Text
    Try
    WriteInteger("Game", (czytaj + &H11C), wartosc)
    Catch ex As Exception

    End Try
    End Sub
    Last edited by Rifju; 08-03-2018 at 12:26 PM.

  15. #15
    RoPMadM's Avatar
    Join Date
    Jul 2013
    Gender
    male
    Location
    __asm
    Posts
    226
    Reputation
    12
    Thanks
    251
    My Mood
    Cynical
    Quote Originally Posted by Rifju View Post
    What if I have more than one offset?


    button code:

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim czytaj = ReadInteger("Game", &H7ED7B8)
    Dim wartosc = TextBox1.Text
    Try
    WriteInteger("Game", (czytaj + &H11C), wartosc)
    Catch ex As Exception

    End Try
    End Sub
    Code:
    Public Function GetPointer(ByVal Offsets As Integer()) As Integer
            Dim BaseAddress As Integer = GetBaseAddress(tProcess)
            BaseAddress = BaseAddress + Offsets(0)
            If Offsets.Length > 1 Then
                Dim RealAddress As Integer = ReadMemory(Of Integer)(BaseAddress)
                RealAddress = RealAddress + Offsets(1)
                Dim i As Integer = Offsets.GetUpperBound(0)
                For index As Integer = 2 To Offsets.GetUpperBound(0)
                    RealAddress = ReadMemory(Of Integer)(RealAddress) + Offsets(index)
                Next
                Return RealAddress
            Else
                Return BaseAddress
            End If
        End Function

Similar Threads

  1. [Tutorial] how to make aq trainer
    By smaharar1 in forum Adventure Quest (AQ) Hacks / Cheats / Trainers
    Replies: 3
    Last Post: 12-08-2010, 06:09 AM
  2. [Help] Can some one help me (some one know how to make a trainer)
    By bidaica999x in forum CrossFire Hacks & Cheats
    Replies: 0
    Last Post: 03-06-2010, 08:36 PM
  3. [HELP]How to make game auto login with vb
    By BaZuGa in forum Visual Basic Programming
    Replies: 0
    Last Post: 01-19-2010, 11:55 AM
  4. How to make a trainer with VB.NET?
    By gott4 in forum Visual Basic Programming
    Replies: 6
    Last Post: 01-17-2010, 05:56 PM
  5. How to make C++ trainers for Warrock
    By cjg333 in forum C++/C Programming
    Replies: 52
    Last Post: 10-15-2008, 10:10 AM