تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 10 از 15 اولاول ... 67891011121314 ... آخرآخر
نمايش نتايج 91 به 100 از 150

نام تاپيک: ساخت ترینر توسط ویژوال بیسیک

  1. #91
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    14

    نقل قول نوشته شده توسط gamehackir
    WriteProscessMemory Tutorial
    Basic Game Hacking Tutorial For Visual Basic 6.0
    By LCSBSSRHXXX

    Tools:
    ArtMoney (or other memory searchers)
    VB 6.0
    Program you want to write new memory too.

    In this example we will use a free game called PQ (Progress Quest)
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]




    ################################################## #################################
    ### NOTICE: ###
    ### Addresses, and search results will often varry for different users ###
    ################################################## #################################




    OK to start out make a file on PQ.
    Open up ArtMoney and Select Progress Quest in the "Select process" combo box
    Now click search set it up as the fallowing :

    Search - Exact Value
    Value -
    Type - ALL

    Value is what you want your searching for. Well start out by searching for your characters Race, my characters race it Panda Man,
    you need to type the value your searching for exactly how it is in the game (because the search is Case sensetive)

    Search - Exact Value
    Value - Panda Man
    Type - ALL

    You should come up with a couple of results, around 4 maybe more or less, but around there.


    ################################################## #################################
    ### NOTICE: ###
    ### Addresses, and search results will often varry for different users ###
    ################################################## #################################

    Value 1 - 0012002F - Panda Man - Text 9 Bytes
    Value 2 - 0016E247 - Panda Man - Text 9 Bytes
    Value 3 - 004D0BCE - Panda Man - Text 9 Bytes
    Value 4 - 009F98D8 - Panda Man - Text 9 Bytes

    Now your going to change the values.


    Value 1 - 0012002F - 1 - Text 9 Bytes
    Value 2 - 0016E247 - 2 - Text 9 Bytes
    Value 3 - 004D0BCE - 3 - Text 9 Bytes
    Value 4 - 009F98D8 - 4 - Text 9 Bytes

    Now go to the the bottom of ArtMoney and click save, or go to the "Table" menu then click "Save".
    Now open PQ back up, and look at your race. It should be the original value with the first letter replaced with one of the numbers you listed.

    Race - 4anda Man

    Now that it you know what number wrote to Panda Man (in my case 4) look at Value 4, and write down, or rember that address.


    Value 4 - 009F98D8 - 4 - Text 9 Bytes

    The address for value 4 is 009F98D8, now you know what address to write to.
    Open up VB, and start a new project, make a module, and a from called what ever
    In the module you want to put ur API in it (you dont need all of those calls, but those are the basic API calls you would use to write a ---- / trainer.)

    Option Explicit
    Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    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, ByVal lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
    Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByVal 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 Const PROCESS_ALL_ACCESS As Long = &H1F0FFF

    Ok now your going to make a form with a command button, and textbox on it. Name the button cmdChange1, and the textbox txtRace.
    Double click cmdChange1, so u bring up the code window start out by writing this.

    Private Sub cmdChange1_Click()
    Dim hwnd As Long
    Dim pid As Long
    Dim pHandle As Long
    Dim hProcess as Long

    hwnd = FindWindow(vbNullString, "Progress Quest")
    If (hwnd = 0) Then
    MsgBox "Window not found!"
    Exit sub
    End If
    GetWindowThreadProcessId hwnd, pid
    pHandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
    If (pHandle = 0) Then
    MsgBox "Couldn't get a process handle!"
    Exit Sub
    End If
    End Sub

    Ok that part of the code will find Progress Quest's Window and get the proscess's handle, if the window isn't open it will bing up an error.
    Now, for the other part of the code, This will write the new memory to the address, take the address from earlier and plug it in to the code:
    Since my address is 009F98D8, we will do this &H009F98D8, this will chop off the first digits (VB will do this automaticly)

    Input
    WriteProcessMemory pHandle, &H009F98D8, txtRace.Text, Len(txtRace.Text), 0&
    Output
    WriteProcessMemory pHandle, &H9F98D8, txtRace.Text, Len(txtRace.Text), 0&



    Finished code should look like this :

    Private Sub cmdChange1_Click()
    Dim hwnd As Long
    Dim pid As Long
    Dim pHandle As Long
    Dim hProcess as Long

    hwnd = FindWindow(vbNullString, "Progress Quest")
    If (hwnd = 0) Then
    MsgBox "Window not found!"
    Exit sub
    End If
    GetWindowThreadProcessId hwnd, pid
    pHandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
    If (pHandle = 0) Then
    MsgBox "Couldn't get a process handle!"
    Exit Sub
    End If
    WriteProcessMemory pHandle, &H9F98D8, txtRace.Text, Len(txtRace.Text), 0&
    CloseHandle hProcess
    End Sub



    به نام خدا
    با تشکر قربانت از این همه آقایی ...
    در ضمن امیدوارم که موفق بوده باشی در امتحانات !
    این کدهایی را که الان گذاشتی زودتر از این توقع داشتم بگذاری چون ناسلامتی حرفه ای هستی دیگه !
    راستی به سایتی که گذاشتم رفتی خیلی عالیه !
    در ضمن من هنوز امتحاناتم تمام نشده 2 ، 3 تایی مونده ولی مهم نیست در ضمن اگر در اداره کردن این تاپیک همراهی کنی مرا خوشحال می شوم تا موقع رهایی از امتحانات.

  2. #92
    پروفشنال mshiraz.2006's Avatar
    تاريخ عضويت
    May 2006
    محل سكونت
    شيراز
    پست ها
    698

    پيش فرض

    به نام خدا

    با سلام
    بابا یکی یه ذره در مورد طریقه وارد کردن کدها توضیح بده
    ثوابش کمتر از خود کدها نیست ها.

  3. #93
    حـــــرفـه ای ALt3rnA's Avatar
    تاريخ عضويت
    Jun 2005
    محل سكونت
    Politziea
    پست ها
    4,748

    پيش فرض

    با با من که بتون گفتم مبتدی باشید نمی تونید کاری بکند

  4. #94
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    پيش فرض

    به نام خدا
    با سلام خدمت حاضرين در اين سايت ...
    کدهاي زير مربوط به سايت تراينر در ويژوال بيسيک 6 است .
    : Cod
    If Hotkey(112) Then
    WriteInteger &H8F2730, "test", &H3E8
    End If
    If Hotkey(113) Then
    WriteInteger &H8F4B0C, "test", &H1388
    End If
    If Hotkey(114) Then
    WriteInteger &H8F9D5C, "test", CDec(&H1388)
    End If
    If Hotkey(115) Then
    WriteInteger &H8F9D60, "test", CDbl(&H1388)
    End If

    فقط کافيه که مقاديرها را در بالا جايگزين کنيد و بعد کار تمام ... يک تراينر کامل و ساده به همراه Hotkey هاي موجود ديگه چي مي خواهيد .


    کد زير مربوط به منجمد کردن مقدارها است :
    براي Freezing a memory منجمد کردن حافظه چندين راه وجود دارد که من راحتترينآن را آموزش مي دهم و آن قرار دادن علامت ><
    مي باشد که شما با اين کار جهش مقادير را به آن مقدار محدود مي کنيد .

    کد زير براي ساخت يک تراينر حرفه اي به همراه مدول هايش است :


    Private Const PROCESS_ALL_ACCESS = &H1F0FFF
    Public Const TH32CS_SNAPPROCESS = &H2
    Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
    Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
    Private 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
    Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal Classname As String, ByVal WindowName As String) As Long
    Private 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 Declare Function GetKeyPress Lib "user32" Alias "GetAsyncKeyState" (ByVal key As Long) As Integer
    Public Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Long) As Integer
    Public Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
    Public Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

    Public Sub WriteAInt(Address As Long, Value As Long)
    Dim hwnd As Long, pID As Long, phandle As Long
    'PSO for PC is the window name
    hwnd = FindWindow(vbNullString, "PSO for PC")
    If (hwnd <> 0) Then
    GetWindowThreadProcessId hwnd, pID
    phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pID)
    If (phandle <> 0) Then
    WriteProcessMemory phandle, Address, Value, 4, 0&
    End If
    CloseHandle phandle
    End If
    End Sub

    خداوکيلي ديگه چي خواستيد ما نگذاشتيم .
    بعد بريد بگيد اس اُ اس بده
    By Morteza_SOS



    در ضمن ببخشيد گيم هکر جان من فراموش کردم بگم که آي دي دارم ولي اصلا حوصله چت کردن ندارم .
    پيشنهاد مي کنم که از طريق پيغام خصوصي با يکديگر در ارتباط باشيم .

    -------------------------------------------------------------------------------------------------------------------------------------------------
    در ضمن حرف گیم هکر تایید می شود
    شماها اول برید یک کمی برنامه نویسی یاد بگیرید و بعد می فهمید که این همه کد چه فایده ای دارند .

  5. #95
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    پيش فرض بابا تو ديگه كي هستي ... دست شيطون زدي شكستي !!!

    نقل قول نوشته شده توسط mshiraz.2006
    به نام خدا

    با سلام
    بابا یکی یه ذره در مورد طریقه وارد کردن کدها توضیح بده
    ثوابش کمتر از خود کدها نیست ها.


    به نام خدا
    با سلام خدمت شما دوست عزیز ...
    امیدوارم از کدهایی که گذاشته ام چیزی دستگیرتان شده باشد در غیر این صورت من را مطلع سازید تا یک کار دیگری برای شما عزیزان بکنم

  6. #96
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    پيش فرض بابا تو ديگه كي هستي ... دست شيطون زدي شكستي !!!

    نقل قول نوشته شده توسط mshiraz.2006
    به نام خدا

    با سلام
    بابا یکی یه ذره در مورد طریقه وارد کردن کدها توضیح بده
    ثوابش کمتر از خود کدها نیست ها.


    به نام خدا
    با سلام خدمت شما دوست عزیز ...
    امیدوارم از کدهایی که گذاشته ام چیزی دستگیرتان شده باشد در غیر این صورت من را مطلع سازید تا یک کار دیگری برای شما عزیزان بکنم .
    در ضمن من از گیم هکر رسما می خواهم که اگر می تواند که می دانم می تواند به من کمک کند تا این تاپیک را ادامه
    بدهیم .
    راستی گیم هکر جان که حتی اسم کوچکت را هم نمی دانم شما در پست های قبلی گفته بودید که می توانید مثلا تراینری بسازید که از دیوار رد بشی و ... اگه ممکن است یک نمونه را برای من مثال بزن .
    Last edited by Morteza_SOS; 09-06-2006 at 12:23.

  7. #97
    حـــــرفـه ای ALt3rnA's Avatar
    تاريخ عضويت
    Jun 2005
    محل سكونت
    Politziea
    پست ها
    4,748

    پيش فرض

    مصطفی جان لطفا پیغام خصوصیتو چک کن

  8. #98
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    پيش فرض

    به نام خدا
    با سلام مجدد ... امروز یک کار خارق العاده آوردم و آن هم ساخت تراینر برای GTA 5 SanA می باشد به کدهای زیر توجه کنید خیلی خیلی هم کدها ساده هستن !!!

    ' Tells VB That All Variables Must Be Declared Before Being Used
    Option Explicit

    ' API Functions To Find The Process And Read/Write DMA Memory
    Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
    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
    Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
    Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
    Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
    Declare Function GetCurrentProcess Lib "kernel32" () As Long

    ' Contants For Getting The Process
    Global Const SYNCHRONIZE As Long = &H100000
    Global Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000
    Global Const PROCESS_ALL_ACCESS As Long = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &HFFF)

    ' Keyhook Function (Check If A Key Is Being Pressed)
    Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer

    ' Sleep API (Pause Within Program)
    Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

    ' Variables For Process/Window Information
    Public WindowHandle As Long
    Public ProcessID As Long
    Public ProcessHandle As Long

    Public Function GetGTAProcess(fProcessName As String) As Boolean

    WindowHandle = FindWindow(vbNullString, fProcessName)
    If (WindowHandle = 0) Then
    GetGTAProcess = False
    Exit Function
    End If

    GetWindowThreadProcessId WindowHandle, ProcessID
    ProcessHandle = OpenProcess(PROCESS_ALL_ACCESS, False, ProcessID)
    If (ProcessHandle = 0) Then
    GetGTAProcess = False
    Exit Function
    End If

    GetGTAProcess = True

    End Function

    ' **********************************
    ' *** GTA: San Andreas Functions ***
    ' **********************************

    ' Read The Player Pointer
    Public Function SAptrPlayer() As Long
    SAptrPlayer = ReadLong(&HB6F5F0)
    End Function

    ' Read The Car Pointer
    Public Function SAptrCar() As Long
    SAptrCar = ReadLong(&HB6F3B8)
    End Function

    ' Read Pointer To An Objects XYZ Matrix - Player / Player In Car / Other Car
    Public Function SAptrXYZMatrix(fObject As Long) As Long
    SAptrXYZMatrix = ReadDMALong(fObject, 20&)
    End Function

    ' Read The Pointer Of Last Car
    Public Function SAptrLastCar() As Long
    SAptrLastCar = ReadDMALong(SAptrPlayer, 1420&)
    End Function


    ' *** SA Player Subs / Function ***

    ' Read The Players X Co-Ord - If In Car Returns Car Co-Ords
    Public Function SAplrXCoOrd() As Single
    SAplrXCoOrd = ReadDMASingle(SAptrXYZMatrix(SAptrCar), 48&)
    End Function

    ' Read The Players Y Co-Ord - If In Car Returns Car Co-Ords
    Public Function SAplrYCoOrd() As Single
    SAplrYCoOrd = ReadDMASingle(SAptrXYZMatrix(SAptrCar), 52&)
    End Function

    ' Read The Players Z Co-Ord - If In Car Returns Car Co-Ords
    Public Function SAplrZCoOrd() As Single
    SAplrZCoOrd = ReadDMASingle(SAptrXYZMatrix(SAptrCar), 56&)
    End Function

    ' Write Players X/Y/Z Co-Ords - If In Car, Writes To Cars X/Y/Z Co-Ords
    Public Sub SAplrGoToCoOrd(fX As Single, fY As Single, fZ As Single)

    Call WriteDMASingle(SAptrXYZMatrix(SAptrCar), 48&, fX)
    Call WriteDMASingle(SAptrXYZMatrix(SAptrCar), 52&, fY)
    Call WriteDMASingle(SAptrXYZMatrix(SAptrCar), 60&, fZ)

    End Sub

    ' Is The Player In A Car - Returns TRUE or FALSE
    Public Function SAplrIsInCar() As Boolean
    If SAptrPlayer = SAptrCar Then
    SAplrIsInCar = False
    Else
    SAplrIsInCar = True
    End If
    End Function

    ' Is The Player On Foot - Returns TRUE or FALSE
    Public Function SAplrIsOnFoot() As Boolean
    If SAptrPlayer = SAptrCar Then
    SAplrIsOnFoot = True
    Else
    SAplrIsOnFoot = False
    End If
    End Function

    ' Set Player Health
    Public Sub SAplrHealth(sHealth As Single)
    Call WriteDMASingle(SAptrPlayer, &H540&, sHealth)
    End Sub

    ' Set Player MAX Health
    Public Sub SAplrMaxHealth(sMaxHealth As Single)
    ' 8CDE78 = Address That Max Health Is Set To **********************8
    Call WriteDMASingle(SAptrPlayer, &H544&, sMaxHealth)
    End Sub

    ' Set Player Armour
    Public Sub SAplrArmour(sArmour As Single)
    Call WriteDMASingle(SAptrPlayer, &H548&, sArmour)
    End Sub

    ' Set Player Immunities
    Public Sub SAplrImmunitiesOn()
    Dim plrImmunities As Byte
    plrImmunities = ReadDMAByte(SAptrPlayer, 66)
    plrImmunities = plrImmunities Or 4: 'Bullet Proof
    plrImmunities = plrImmunities Or 8: 'Fire Proof
    plrImmunities = plrImmunities Or 64: 'Dent Proof - Also Bit 1=Soft Ped (Move Thru Walls)
    plrImmunities = plrImmunities Or 128: 'Explosion Proof - 2=Freeze Ped (Cant Move)
    Call WriteDMAByte(SAptrPlayer, 66, plrImmunities)
    End Sub

    ' Remove Player Immunities
    Public Sub SAplrImmunitiesOff()
    Call WriteDMAByte(SAptrPlayer, 66, 0)
    End Sub


    ' *** SA Car Sub / Functions ***


    ' Get Current Car ID - 0 If Not In Car **************
    Public Function SAcarID() As Integer
    If SAplrIsInCar = True Then
    SAcarID = ReadDMAInteger(SAptrCar, 34&)
    Else
    SAcarID = 0
    End If
    End Function

    ' Set Car Damage To #
    Public Sub SAcarHealth(sCarHealth As Single)
    Call WriteDMASingle(SAptrCar, 1216&, sCarHealth)
    End Sub

    ' Set No Car Damage
    Public Sub SAcarFullHealth()
    Call WriteDMASingle(SAptrCar, 1216, CSng(1000))
    End Sub

    ' Set Car Burn To #
    Public Sub SAcarBurn(sCarBurn As Single)
    Call WriteDMASingle(SAptrCar, 1216, sCarBurn)
    End Sub

    ' Set Car Not Burning
    Public Sub SAcarNotBurn()
    Call WriteDMASingle(SAptrCar, 2276&, 0)
    End Sub

    ' Set Car Immunities
    Public Sub SAcarImmunitiesOn()
    Dim CarImmunities As Byte
    CarImmunities = ReadDMAByte(SAptrCar, 66)
    CarImmunities = CarImmunities Or 4 ' Explosion Proof
    CarImmunities = CarImmunities Or 8 ' Dent Proof
    CarImmunities = CarImmunities Or 16 ' Fire Proof
    CarImmunities = CarImmunities Or 128 ' Bullet Proof
    Call WriteDMAByte(SAptrCar, 66, CarImmunities)
    End Sub

    ' Lock The Doors Of The Current Car Player Is Driving
    Public Sub SAcarLockDoors()
    Call WriteDMAByte(SAptrCar, 1272&, 2)
    End Sub

    ' Un-Lock The Doors Of The Current Car Player Is Driving
    Public Sub SAcarUnlockDoors()
    Call WriteDMAByte(SAptrCar, 1272&, 1)
    End Sub

    ' Give Weight To Current Car Player Is Driving
    Public Sub SAcarGiveWeight()
    Call WriteDMASingle(SAptrCar, 140&, CSng(200000))
    Call WriteDMASingle(SAptrCar, 144&, CSng(420000))
    End Sub

    ' Stop Cars Motion
    Public Sub SAcarStopMotion()
    Call WriteDMASingle(SAptrCar, 68&, 0#)
    Call WriteDMASingle(SAptrCar, 72&, 0#)
    Call WriteDMASingle(SAptrCar, 76&, 0#)
    End Sub

    ' Stop Cars Spinning
    Public Sub SAcarStopSpin()
    Call WriteDMASingle(SAptrCar, 80&, 0#)
    Call WriteDMASingle(SAptrCar, 84&, 0#)
    Call WriteDMASingle(SAptrCar, 88&, 0#)
    End Sub

    ' Flip Car Over
    Public Sub SAcarFlipOver()
    Dim Flip1 As Single
    Dim Flip2 As Single
    Flip1 = ReadDMASingle(SAptrXYZMatrix(SAptrCar), CLng(16))
    WriteDMASingle SAptrXYZMatrix(SAptrCar), CLng(4), -Flip1
    Flip2 = ReadDMASingle(SAptrXYZMatrix(SAptrCar), CLng(20))
    WriteDMASingle SAptrXYZMatrix(SAptrCar), CLng(0), Flip2
    WriteDMASingle SAptrXYZMatrix(SAptrCar), CLng(8), CSng(-0.00001)
    WriteDMASingle SAptrXYZMatrix(SAptrCar), CLng(24), CSng(-0.006)
    End Sub

    Public Sub SAcarFixTyresCar()
    WriteDMAByte SAptrCar, 1445&, 0&
    WriteDMAByte SAptrCar, 1446&, 0&
    WriteDMAByte SAptrCar, 1447&, 0&
    WriteDMAByte SAptrCar, 1448&, 0&
    End Sub

    Public Sub SAcarFixTyresBike()
    WriteDMAByte SAptrCar, 1628&, 0&
    WriteDMAByte SAptrCar, 1629&, 0&
    End Sub

    Public Sub SAcarRestartEngine()
    Dim EngineState As Byte
    EngineState = ReadDMAByte(SAptrCar, 1064&)
    EngineState = EngineState Or 16
    WriteDMAByte SAptrCar, 1064&, EngineState
    End Sub

    Public Sub SAcarRepairPlane()
    WriteDMALong SAptrCar, 1460&, CSng(0)
    End Sub


    ' *** Trailer Sub / Functions ***

    Public Function SAptrTrailer() As Long
    SAptrTrailer = ReadDMALong(SAptrCar, CLng(1224))
    End Function

    Public Function SAcarTrailerHas() As Boolean
    If SAptrTrailer = 0 Then
    SAcarTrailerHas = False
    Else
    SAcarTrailerHas = True
    End If

    End Function

    Public Sub SAcarTrailerRepair()
    If SAcarTrailerHas = True Then
    WriteDMASingle SAptrTrailer, 1216&, CSng(1000)
    End If
    End Sub

    Public Sub SAcarTrailerImmunitiesOn()
    If SAcarTrailerHas = True Then
    Dim TrailerImmunities As Byte
    TrailerImmunities = ReadDMAByte(SAptrTrailer, 66)
    TrailerImmunities = TrailerImmunities Or 4: ' Explosion Proof
    TrailerImmunities = TrailerImmunities Or 8: ' Dent Proof
    TrailerImmunities = TrailerImmunities Or 16: ' Fire Proof
    TrailerImmunities = TrailerImmunities Or 128: ' Bullet Proof
    WriteDMAByte SAptrTrailer, 66, TrailerImmunities
    End If
    End Sub


    Public Function SAcarType(CarID As Integer) As String

    Select Case CarID

    Case 0
    SAcarType = "On Foot"

    Case 400 To 405, 407 To 416, 418 To 424, 426 To 429, 431 To 434, 436 To 443, 445, _
    451, 455 To 459, 466, 467, 470, 474, 475, 477 To 480, 482, 483, 485, 486, _
    489 To 492, 494 To 496, 498 To 500, 502 To 508, 514 To 518, 524 To 536, _
    540 To 547, 549 To 552, 554, 555, 558 To 562, 564 To 568, 571, 572, 574 To 576, _
    578 To 580, 582, 583, 585, 587 To 589, 594, 596 To 605, 609
    SAcarType = "car"

    Case 406, 444, 556, 557, 573
    SAcarType = "mtruck"

    Case 417, 425, 447, 465, 469, 487, 488, 497, 501, 548, 563
    SAcarType = "heli"

    Case 430, 446, 452 To 454, 472, 473, 484, 493, 595
    SAcarType = "boat"

    Case 435, 450, 584, 591, 606 To 608, 610, 611
    SAcarType = "trailer"

    Case 448, 461 To 463, 468, 521 To 523, 581, 586
    SAcarType = "bike"

    Case 449, 537, 538, 569, 570, 590
    SAcarType = "train"

    Case 460, 464, 476, 511, 512, 513, 519, 520, 539, 553, 577, 592, 593
    SAcarType = "plane"

    Case 471
    SAcarType = "quad"

    Case 481, 509, 510
    SAcarType = "bmx"

    Case Else
    SAcarType = "other"

    End Select

    End Function




    ' ********************************
    ' *** GTA: Vice City Functions ***
    ' ********************************

    Public Function VCptrPlayer() As Long
    VCptrPlayer = ReadLong(&H7E4B8C)
    End Function

    Public Function VCptrCar() As Long
    VCptrCar = ReadLong(&H7E49C0)
    End Function




    ' ************************
    ' *** Read DMA Address ***
    ' ************************

    Public Function ReadByte(Address As Long) As Byte
    ReadProcessMemory ProcessHandle, Address, ReadByte, 1&, 0&
    End Function

    Public Function ReadInteger(Address As Long) As Integer
    ReadProcessMemory ProcessHandle, Address, ReadInteger, 2&, 0&
    End Function

    Public Function ReadLong(Address As Long) As Long
    ReadProcessMemory ProcessHandle, Address, ReadLong, 4&, 0&
    End Function

    Public Function ReadSingle(Address As Long) As Single
    ReadProcessMemory ProcessHandle, Address, ReadSingle, 4&, 0&
    End Function

    Public Function ReadDouble(Address As Long) As Double
    ReadProcessMemory ProcessHandle, Address, ReadDouble, 8&, 0&
    End Function

    ' *******************************************
    ' *** Read DMA Address (Pointer & Offset) ***
    ' *******************************************

    Public Function ReadDMAByte(Address As Long, Offset As Long) As Byte
    ReadProcessMemory ProcessHandle, Address + Offset, ReadDMAByte, 1&, 0&
    End Function

    Public Function ReadDMAInteger(Address As Long, Offset As Long) As Integer
    ReadProcessMemory ProcessHandle, Address + Offset, ReadDMAInteger, 2&, 0&
    End Function

    Public Function ReadDMALong(Address As Long, Offset As Long) As Long
    ReadProcessMemory ProcessHandle, Address + Offset, ReadDMALong, 4&, 0&
    End Function

    Public Function ReadDMASingle(Address As Long, Offset As Long) As Single
    ReadProcessMemory ProcessHandle, Address + Offset, ReadDMASingle, 4&, 0&
    End Function

    Public Function ReadDMADouble(Address As Long, Offset As Long) As Double
    ReadProcessMemory ProcessHandle, Address + Offset, ReadDMADouble, 8&, 0&
    End Function

    ' *************************
    ' *** Write DMA Address ***
    ' *************************

    Public Sub WriteByte(Address As Long, fWByte As Byte)
    WriteProcessMemory ProcessHandle, Address, fWByte, 1&, 0&
    End Sub

    Public Sub WriteInteger(Address As Long, fWInt As Integer)
    WriteProcessMemory ProcessHandle, Address, fWInt, 2&, 0&
    End Sub

    Public Sub WriteLong(Address As Long, fWLong As Long)
    WriteProcessMemory ProcessHandle, Address, fWLong, 4&, 0&
    End Sub

    Public Sub WriteSingle(Address As Long, fWSingle As Single)
    WriteProcessMemory ProcessHandle, Address, fWSingle, 4&, 0&
    End Sub

    Public Sub WriteDouble(Address As Long, fWDouble As Double)
    WriteProcessMemory ProcessHandle, Address, fWDouble, 8&, 0&
    End Sub

    ' *******************************************
    ' *** Write DMA Address (Pointer & Offset) ***
    ' *******************************************

    Public Sub WriteDMAByte(Address As Long, Offset As Long, Value As Byte)
    WriteProcessMemory ProcessHandle, Address + Offset, Value, 1&, 0&
    End Sub

    Public Sub WriteDMAInteger(Address As Long, Offset As Long, Value As Integer)
    WriteProcessMemory ProcessHandle, Address + Offset, Value, 2&, 0&
    End Sub

    Public Sub WriteDMALong(Address As Long, Offset As Long, Value As Long)
    WriteProcessMemory ProcessHandle, Address + Offset, Value, 4&, 0&
    End Sub

    Public Sub WriteDMASingle(WSAddress As Long, WSOffset As Long, WSValue As Single)
    WriteProcessMemory ProcessHandle, WSAddress + WSOffset, WSValue, 4&, 4&
    End Sub

    Public Sub WriteDMADouble(Address As Long, Offset As Long, Value As Single)
    WriteProcessMemory ProcessHandle, Address + Offset, Value, 8&, 0&
    End Sub


    اگر کسی متوجه نشد فقط پیغام بده اگر توانستم کمک می کنم .

  9. #99
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    پيش فرض

    به نام خدا
    در ضمن نکته ای که در رابطه با کد بالا فراموش کردم بگم این است که من خودم تمام مقادیری را که قرار داده ام را سرچ کردم در ضمن نیاز به تغییر مقادیر نیست فقط کافیست که تبدیل به فایل اجرایی کنید که خیلی ساده است ...
    مقادیر شامل جان بی نهایت ، تیر بینهایت و ... می باشد .
    باز بگید Morteza_SOS بده ...

  10. #100
    پروفشنال Morteza_SOS's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    577

    پيش فرض

    به نام خدا
    در ضمن هر بازی ای خواستید بگید اگر داشتم بازم تکرار می کنم اگر داشتم بازی را براش تراینر می سازم .
    به سبک PizzaDox
    فقط 2 تا امتحان دیگر مانده دعا کنید همه را خوب بدم کولاک می کنم ....

    By Morteza_SOS

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •