Bueno hoy descubri un programa bastante interesante que me llamo mucho la atención llamado Cheat Engine que te permite editar y ver los valores de la memoria de los procesos de los juegos y cosas asi.. asi que me puse a mirarme unos tutos y en realidad es muy fácil de utilizar.. Y ya que estaba jugando al need for speed , para probar lo que habia aprendido me puse a hacer un cheat y me salio este tan bonito... seguramente ya este por la red pero aqui les dejo el mio con código de fuente :D Saludos y espero que se lo miren y si quieren algun juego en especial les puedo explicar como hacerlo .... Bytes()

Código: Seleccionar todo

Option Explicit

'################################################################################################
'# Función que se utiliza para aumentar el dinero que tenemos en el Need For Speed Most Wanted  #
'# Compatibilidad WinXP/Vista/7                                                                 #
'# Skyweb09 - [email protected]                                                               #
'# 28/04/2010                                                                                   #
'# Créditos : Cheat Engine y un tuto que vi en taringa de como usar el Cheat Engine.            #
'################################################################################################

' Cheat Engine
' http://www.taringa.net/posts/ebooks-tutoriales/2658515/Minitutorial-sobre-como-hacer-cheats-para-juegos-%28en-c%29.html

Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32.dll" (ByVal hWnd As Long, ByRef lpdwProcessId As Long) As Long
Private Declare Function WriteProcessMemory Lib "kernel32.dll" (ByVal hProcess As Long, ByRef lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, ByRef lpNumberOfBytesWritten As Long) As Long
Private Declare Function ReadProcessMemory Lib "kernel32.dll" (ByVal hProcess As Long, ByRef lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, ByRef lpNumberOfBytesWritten As Long) As Long
 
Private Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000
Private Const SYNCHRONIZE As Long = &H100000
Private Const PROCESS_ALL_ACCESS As Long = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &HFFF)
 
Public Function MasDinero(ByVal hNuevaCantidad As Long)
    Dim hWnd        As Long
    Dim hPID        As Long
    Dim hProcess    As Long
    Dim hBuffer     As Long
    
    Const hBase     As Long = &H2DEA6AC ' // Dirección de la memoria donde el NFSMW almacena los datos del $
    
    hWnd = FindWindow("GameFrame", vbNullString) ' // Lo primero que hacemos es obtener el handle de la ventana del NFSMW.
    
    If hWnd <> 0 Then
        GetWindowThreadProcessId hWnd, hPID ' // Luego obtenemos el PID de la ventana.
        hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0&, hPID) ' // Abrimos el proceso para luego poder modificar algunos valores.
        If hProcess <> 0 Then
            ReadProcessMemory hProcess, ByVal hBase, hBuffer, 4, 0 ' // Leemos la dirección del proceso donde se almacena el dinero.
            MsgBox "Usted tiene " & hBase & "$ en el NFSMW", vbExclamation
            WriteProcessMemory hProcess, ByVal hBase, hNuevaCantidad, 4, 0 ' // Y Ahora simplemente modificamos la cantidad de dinero... Creo que la cantidad máxima es 48146092$
        Else
        MsgBox "No se ha podido abrir el proceso del NFSMW :S", vbExclamation
        End If
        Else
        MsgBox "No se ha encontrado la ventana del Need For Speed abierta :(", vbExclamation
    End If
End Function

' // Edit : Ahora tambien puedes modificar el valor de la bolsa con este otro pedazo...

Public Function AumentarBolsa(ByVal hNuevaCantidad As Long)
    Dim hWnd        As Long
    Dim hPID        As Long
    Dim hProcess    As Long
    Dim hBuffer     As Long
    
    Const hBase     As Long = &H2C63144     ' // Dirección de la memoria donde el NFSMW almacena los datos de la bolsa
    
    hWnd = FindWindow("GameFrame", vbNullString) ' // Lo primero que hacemos es obtener el handle de la ventana del NFSMW.
    
    If hWnd <> 0 Then
        GetWindowThreadProcessId hWnd, hPID ' // Luego obtenemos el PID de la ventana.
        hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0&, hPID) ' // Abrimos el proceso para luego poder modificar algunos valores.
        If hProcess <> 0 Then
            ReadProcessMemory hProcess, ByVal hBase, hBuffer, 4, 0 ' // Leemos la dirección del proceso donde se almacena el dinero.
            MsgBox "Usted tiene " & hBase & " de bolsa en el NFSMW", vbExclamation
            WriteProcessMemory hProcess, ByVal hBase, hNuevaCantidad, 4, 0 ' // Y Ahora simplemente modificamos la bolsa.
        Else
        MsgBox "No se ha podido abrir el proceso del NFSMW :S", vbExclamation
        End If
        Else
        MsgBox "No se ha encontrado la ventana del Need For Speed abierta :(", vbExclamation
    End If
End Function

Última edición por skyweb07 el 28 Abr 2010, 20:56, editado 1 vez en total.
Imagen
k bueno sky.... yo komenze en este mundo usando cheatengines xD.... kuando jugaba gunbound m la pasaba usandolo ... "codeaba" algunos cheats en delphi kon ignorancia xD... y luego me dedike a empezar dsd el komienzo kon vb6 jeje ..... en particular estos tipos de cheats son llamados "Trainers" :D.... Salu2 ;)
Imagen

Visiten http://malwarelabs.org/[Blog dedicado al malware]
Aprendan a dejar FUD sus Stubs: http://www.indetectables.net/foro/viewtopic.php?f=8&t=19474
para juegos como seafight, ogame, trivalwars.... el cheat engine es poco usable ya que los datos importantes se guardan en el servidor y no en la memoria del ordenador (esa parte de la memoria es lo que edita el cheat engine)
Para disfrutar de ese programa iros al minijuegos y en muchisimos de los juegos (por no decir todos) se puede utiizar el cheat engine.
En 1º en 2º o en 3º BETICO hasta que muera
Muy beuno, me gustan los videojuegos....con esto aprendere mas sobre ellos y como modificarlso ;)
¿Por que tanta gente vive en el pasado?. No era mejor ser joven antes,debes crear tus propios iconos,tu propia manera de vivir.

Lo hecho,hecho esta. Mirar hacia atras para buscar la inspiracion,es copiar el pasado.Eso no es ser indetectable xD
Se tu mismo,haz algo nuevo. ¿Sabes lo que quiero decir no?
si estos cheats son como el devtrainer que usan los n00bs(y los que no saben jugar) en halo 1 y 2 >.<
Me encanta que les guste chicos, de esto es lo que se trata la cosa compartir para asi ir aprendiendo un poco de todo y cuando necesitemos algo saber solucionarlo con algún truquillo :D , hoy aprendimos algo y mañana aprenderemos algun truco nuevo que nos traiga alguién más :D
Imagen
Responder

Volver a “Otros lenguajes”