[Tutorial] Usar Cheat Engine para modificar juegos + inyección de código

Iniciado por Mad Antrax, 1 Febrero 2013, 11:46 AM

0 Miembros y 4 Visitantes están viendo este tema.

xzirx


MCKSys Argentina

Cita de: xzirx en  1 Septiembre 2015, 06:22 AM
hay cheat engine para android u otro tan completo como este?

Te has tomado, siquiera, la molestia de buscar en Google?  :¬¬

El 1er. resultado: click.

Y en el mismo foro, hay mucho más sobre el tema.

La cosa no es sólo preguntar y esperar respuestas. Te imaginas si todos hubiéramos hecho lo mismo? Hoy no tendríamos un foro... no? Hay que poner un poco de esfuerzo de uno mismo.

El ser autodidacta es muy importante en la Ing. Inversa.

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


xzirx

si papa t entiendo no hagas higado, es obvio q ya lo habia googleado y tb tngo ese link, solo q lo habia probrado en bluestacks root y tenia algunos incovenientes con un ekipo rooteado talvez mi error fue preguntar en general y no en especifico. dclp x habert malogrado la mañana... pero grax x responder

MCKSys Argentina

Cita de: xzirx en  1 Septiembre 2015, 16:07 PM
si papa t entiendo no hagas higado, es obvio q ya lo habia googleado y tb tngo ese link, solo q lo habia probrado en bluestacks root y tenia algunos incovenientes con un ekipo rooteado talvez mi error fue preguntar en general y no en especifico. dclp x habert malogrado la mañana... pero grax x responder

D-4-ku3rd0pib3m34l3gr4ky4t3ng4s3s4nf0siti3n3spr0bl3m4sk0nun3quip0d3b3ri4smir4r3s3mism0f0r0xqu3ti3n3much4inf0s0br33s4t00lYn0s0ytuvi3j0sil0fu3r4t3h4bri40blig4d043ntr4r4l43scu3l43nv3zd3p4s4rxl4v3r3d4.

Saludos!

PD: Si estuvieras mandando un SMS, sería aceptable ese tipo de escritura, pero no es el caso... no?
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


xzirx

ajaja que exigente y mantener una escritura correcta esta bien por respeto al foro pero no era necesario la ironía sino tambien serias parte, gracias por todo

.:UND3R:.

Cita de: xzirx en  2 Septiembre 2015, 23:17 PM
ajaja que exigente y mantener una escritura correcta esta bien por respeto al foro pero no era necesario la ironía sino tambien serias parte, gracias por todo

Lo que ocurre es que estás hablando con un usuario muy avanzado y de gran conocimiento, debes demostrar algo de respeto (no por sus habilidades si no por norma general y más aun cuando es una persona que lleva años en esta área), ese es el problema.

Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)

infraud

Muchas gracias por la guia!

Habia cosas que no podia localizar pero sobretodo con la opcion de revisar el decrecimiento me a  facilitado mucho

Pero en el juego, sheltered, no he logrado "capturar" el tiempo,
el tiempo ahi se muestran por minutos, horas y dias,
intente con los minutos y despues con las horas, una cosa a la vez, uso la tecla ESC para poner en pausa el juego
y modifico las direcciones que resultan, tres en cada caso,
pero al quitar la pausa el tiempo sigue corriendo igual y si lo pauso de nuevo, el valor que habia puesto se muestra en el reloj, pero solo mientras esta pausado puesto que al correr el juego todo sigue normal

Mi objetivo es capturar el tiempo para despues hacer que corra mas lento, solo el tiempo, no que vaya mas lento el juego, ya use el speedhack y la funcion de este no es lo que busco,
me ha gustado mucho el juego pero la cuestion del tiempo es que va demasiado rapido a mi gusto

que puedo hacer en ese caso? hay que hacer alguna operacion mas compleja ya que el tiempo no es el usual contador hacia atras?

engel lex

Cita de: infraud en 10 Septiembre 2015, 16:14 PM
Muchas gracias por la guia!

Habia cosas que no podia localizar pero sobretodo con la opcion de revisar el decrecimiento me a  facilitado mucho

Pero en el juego, sheltered, no he logrado "capturar" el tiempo,
el tiempo ahi se muestran por minutos, horas y dias,
intente con los minutos y despues con las horas, una cosa a la vez, uso la tecla ESC para poner en pausa el juego
y modifico las direcciones que resultan, tres en cada caso,
pero al quitar la pausa el tiempo sigue corriendo igual y si lo pauso de nuevo, el valor que habia puesto se muestra en el reloj, pero solo mientras esta pausado puesto que al correr el juego todo sigue normal

Mi objetivo es capturar el tiempo para despues hacer que corra mas lento, solo el tiempo, no que vaya mas lento el juego, ya use el speedhack y la funcion de este no es lo que busco,
me ha gustado mucho el juego pero la cuestion del tiempo es que va demasiado rapido a mi gusto

que puedo hacer en ese caso? hay que hacer alguna operacion mas compleja ya que el tiempo no es el usual contador hacia atras?

probablemente estás modificando la variable que muestra el valor en pantalla... tienes que buscar la que le da el tiempo relamente... el como, es casi un arte jejeje
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

infraud

Cita de: engel lex en 10 Septiembre 2015, 16:21 PM
probablemente estás modificando la variable que muestra el valor en pantalla... tienes que buscar la que le da el tiempo relamente... el como, es casi un arte jejeje

Ahi si me mataste  :xD
Eso estaba leyendo ahora en unos comentarios de este mismo post
y parece que tengo que buscar con el increased
aunque en el CE, aparece increased value e increased value by,
he probado con increased value pero siempre me da muchas direcciones,
y eso es que no solo da las del tiempo, sino que tambien las estadisticas de los pj
que tambien son en valor ascendente

Como puedo diferenciarlas?

Mad Antrax

#249
Cita de: infraud en 10 Septiembre 2015, 16:14 PM
Muchas gracias por la guia!

Habia cosas que no podia localizar pero sobretodo con la opcion de revisar el decrecimiento me a  facilitado mucho

Pero en el juego, sheltered, no he logrado "capturar" el tiempo,
el tiempo ahi se muestran por minutos, horas y dias,
intente con los minutos y despues con las horas, una cosa a la vez, uso la tecla ESC para poner en pausa el juego
y modifico las direcciones que resultan, tres en cada caso,
pero al quitar la pausa el tiempo sigue corriendo igual y si lo pauso de nuevo, el valor que habia puesto se muestra en el reloj, pero solo mientras esta pausado puesto que al correr el juego todo sigue normal

Mi objetivo es capturar el tiempo para despues hacer que corra mas lento, solo el tiempo, no que vaya mas lento el juego, ya use el speedhack y la funcion de este no es lo que busco,
me ha gustado mucho el juego pero la cuestion del tiempo es que va demasiado rapido a mi gusto

que puedo hacer en ese caso? hay que hacer alguna operacion mas compleja ya que el tiempo no es el usual contador hacia atras?

Hola

Vayamos por partes... Dices que has encontrado la variable del tiempo, logras editarla pero cuando quitas el pause en el juego vuelve a su valor original, verdad? Eso ocurre porque has encontrado la variable que "pinta" o "dibuja" el tiempo en pantalla, pongamos un ejemplo:

Tengo una variable que almacena la vida del jugado, el jugador tiene 100 puntos de vida pero en lugar de almacenar 100 lo que hago es almacenarlo de forma ofuscada, por ejemplo en hexadecimal (64). Luego programo una rutina que me transforme el valor de mi variable de vida (64) a decimal (100) y lo muestro en pantalla, aquí te dejo el código de ejemplo:

Variable varVidaReal
Variable varVidaContador

varVidaReal = 0x64;
varVidaContador = Hex2Dec(varVidaReal)

Call dibujaVidaPantalla(varVidaContador)


Si utilizo el CE y busco el valor de la vida por su número absoluto (decimal = 100) terminaré encontrando la dirección de memoria que apunta a varVidaContador, editaré ese valor e inmediatamente la función dibujaVidaPantalla() pintará en la pantalla del juego la vida modificada. En la siguiente interacción, varVidaContador calculará su valor a partir de varVidaReal, eliminando tu "hack" y volviendo a pintar el valor real de la vida (100).

Espero que hayas podido entender éste ejemplo, lo que te ocurre en tu juego es exactamente lo mismo, pero con otras variables y funciones. ¿Cómo solucionarlo? No es complicado, pero tampoco es fácil...

Una vez encuentres el valor del tiempo "contador" deberás ver que instrucción escribe en esa dirección, para ello pulsa F5 sobre el address para meter un breakpoint on access, CE te dumpeará todos los opcodes que accedan a la variable contador. Uno de esos opcodes será el que almacene el valor real del tiempo (posiblemente expresado en segundos o milisegundos).

Si tengo tiempo me bajo ese juego e intento hacerlo yo mismo...
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.