Cómo crear tu propio Shaiya Multicliente

Cómo crear tu propio Shaiya Multicliente


Shaiya es un MMORPG (Massively Multiplayer Online Role Playing Game) creado por Choik Rock Games y publicado en América Latina por Aeria Games. Luego de jugar un tiempo este juego surgen varias necesidades como la de transferir oro de un personaje a otro, buscar un ancla para PvP, vender artículos en Apulune/Iris, buscar un cura/oráculo o un defensor/guerrero para levear a full, etc. Si uno tiene suerte, los demás jugadores satisfarán nuestras necesidades. Esta dependencia a más de alguno le habrá llevado a pensar: "¿y si me hiciera otra cuenta? ". El problema está en que no se puede ejecutar más de una instancia del juego, por lo que si quisiéramos jugar al mismo tiempo con dos cuentas diferentes tendríamos que hacerlo en dos computadores distintos. Una solución podrían ser correr una de las cuentas en una máquina virtual, pero la emulación de los controladores gráficos suela dar problemas. Otra solución podría ser ejecutar cada cuenta en sesiones diferentes de windows, sin embargo pasar de una cuenta a otra sería demasiado lento. La solución que les propongo en este post es modificar el mismísimo juego para permitir correr dos o más instancias del mismo y así poder jugar con dos cuentas diferentes al mismo tiempo (si tu máquina lo permite, pueden ser tres o cuatro simultáneamente).

ADVERTENCIA: El Hackeo o modificación de Software es castigado con la Suspensión Permanente de la Cuenta.


Lo más fácil sería descargar el ejecutable del juego ya parcheado, también conocido como multihack, multicliente o multibox; sin embargo, las distintas versiones que existen hacen difícil encontrar el multihack correcto. O si se encuentra el parche adecuado, las numerosas actualizaciones hacen que deje de funcionar al cabo de un tiempo. Modificar el juego a mano nos permite tener actualizado también nuestro multicliente y usarlo cuando queramos. Debo confesar que el método no lo inventé yo, sino que lo saque del foro Elite PvPers. Lamentablemente las instrucciones están en inglés y hay un paso que no resulta en la versión latina del juego, lo que justifica la existencia de este post. ¡Empecemos!

La modificación del juego la realizaremos con OllyDBG, herramienta que interpreta, analiza y modifica el código máquina del programa. Su interfaz no es muy amigable, pero no se asusten porque los pasos que se detallan a continuación son fáciles de seguir:

1) Descargar y descomprimir el programa OllyDBG que puedes encontrar aquí.

2) Ejecutar el archivo OLLYDBG.EXE con permisos de administración. El programa no requiere instalación, por lo que basta con hacer doble click sobre el ejecutable. Cuando cargue el programa saldrá un aviso preguntando si quieres usar el archivo "PSAPI.DLL" que trae OllyDbg o el que está instalado en windows. Le decimos que NO para que use el archivo .dll del programa.
hack

3) Abrir el archivo game.exe del juego en OllyDbg. Para ello, hacer click en File>Open y buscar el game.exe en la carpeta de instalación.
Shaiya

Luego de analizar el programa, mostrará el resultado en una serie de ventanas que impactan bastante la primera vez. Tranquilo. La información se divide en cuatro secciones. La que nos interesa es la sección principal que contiene las instrucciones en assembler (código máquina que entiende el computador) que está indicada en la siguiente imagen.
Multicliente

Como ven, las instrucciones son bastantes. Lo que hay que hacer es buscar las instrucciones que impiden que se ejecute otra instancia juego. Para ello se buscan las llamadas a intermodulos haciendo
Click derecho>Search For>All intermodular Calls en la sección principal
shaiya latino

En la ventana que se abre aparecerán todas las funciones que el programa necesita para funcionar y que toma prestadas de las que tiene Windows. Para facilitar la búsqueda de las funciones que nos interesan, debemos ordenarlas por destino haciendo click en el encabezado de la tercera columna. Así quedan por orden alfabético.
Cómo crear tu propio Shaiya Multicliente

Este procedimiento será utilizado para encontrar la mayoría de las instrucciones necesarias para parchar el juego.

4) Buscar kernel32.CreatMutexA. Para ello hacemos Click derecho>Search For>All intermodular Calls , ordenamos por destinoy buscamos dicha función.
hack

Al hacer doble click sobre ella, OllyDbg nos llevará a la instrucción del programa que llama a esa función de Windows señalándola en gris. Tres líneas más abajo se encuentra la instrucción que debemos modificar. Esta corresponde a
JNZ SHORT game.<número aleatorio>
Shaiya

Para modificar esta instrucción hacemos doble click sobre ella. En la ventanita que aparece se debe reemplazar JNZpor JMP y apretar una sola vez el botón Assemble y luego Cancel. Las modificaciones que vayamos haciendo son puestas en rojo por el OllyDbg.
Multicliente

5) Buscar kernel32.CreateProcessA. Realizamos Click derecho>Search For>All intermodular Calls, ordenamos por destino y hacemos doble click sobre el tercero.
shaiya latino

Eso nos llevará a la instrucción que llama a dicha función. Cinco líneas más arriba se encuentra la instrucción
PUSH 1 que debemos modificar.
Cómo crear tu propio Shaiya Multicliente

Hacemos doble click sobre ella, cambiamos el 1 por 0 y apretamos Assemble (una sola vez y luego Cancel).
hack

6) Buscar USER32.FindWindowA. Igual que antes hacemos Click derecho>Search For>All intermodular Calls, ordenamos por destino y hacemos doble click sobre ella. OllyDbg nos llevará a la instrucción CALL EDI.
Shaiya

Dos líneas más abajo se encuentra unJE SHORT game.<número aleatorio>. Hacemos doble click sobre él, cambiamos el JE por JMP y apretamos Assemble (una vez) y luego Cancel.

7) Buscar kernel32.GetCurrentProcessId. Nuevamente, Click derecho>Search For>All intermodular Calls,ordenamos por destino y hacemos doble click sobre el primero de los tres que aparecen. Siete línea más abajoaparece un JNZ SHORT game.<número aleatorio>. Hacemos doble click sobre él y cambiamos el JNZ por JMP. Apretamos Assemble y luego Cancel.
Multicliente

8) Ahora el método que hemos estado siguiendo para buscar las instrucción cambia. Hacemos
Click derecho>Search for>Command
shaiya latino

Y en la ventanita que se abrirá tipeamos MOV EAX,106 y de damos a Find.
Cómo crear tu propio Shaiya Multicliente

Hacemos doble click sobre la instrucción MOV EAX,106 y cambiamos el 106 por 2F3. Apretamos Assemble una vez y luego Cancel.
hack

9) Sobre la sección principal hacemos Click derecho>Search for>All referenced text strings
Shaiya

Buscamos ASCII "start game" y hacemos doble click sobre él.
Multicliente

OllyDbg saltará a la instrucción PUSH game.<número>. Cinco líneas más abajo hay un JE game.<número>.
Hacemos doble click sobre él y cambiamos el JE por JMP.Apretamos Assemble y luego Cancel.
shaiya latino

10) Hacemos nuevamente sobre la sección principal del OllyDbg
Click derecho>Search for>All referenced text strings, buscamos ASCII "nProtect GameGuard" y le hacemos doble click. OllyDbg saltará a una instrucción PUSH game.<número>. Justo debajo se encuentra un
JNZ SHORT game.<números>. Hacemos doble click sobre él y cambiamos JNZ por JMP. Le damos a Assemble y luego a Cancel.
Cómo crear tu propio Shaiya Multicliente


11) Esto es para dejarlo antifreeze. Sobre la ventana principal del programa hacemo Click derecho>Search For>All intermodular Calls,ordenamos por destino y hacemos doble click sobre el primer User32.ShowWindow que aparece. Diecinueve líneas arriba de la instrucción seleccionada en la ventana principal aparece MOV DWORD PTR DS:[710888],ESI. Hacemos doble click sobre él y cambiamos ESI por 1, dejándolo así: MOV DWORD PTR DS:[710888],1. Apretamos Assemble y luego Cancel.
hack



12) Guardar los cambios efectuados. Para ello hacemos Click derecho>Copy to executable>All modifications
Shaiya

Nos preguntará si copiamos las modificaciones. Le decimos que Copy All.
Multicliente

En la ventana que se abrirá a continuación hacemos Click derecho>Save file y guardamos nuestro multihack en la carpeta del juego PERO CON OTRO NOMBRE por si nos equivocamos y nos cargamos el juego.
shaiya latino

Ahora estás listo para usar tu multihack. Si todo salió bien podrás podrás jugar con más de un personaje, como yo ; ). ENJOY

Por los mensajes y comentarios que he recibido en este post, hice unos script para el OllyDBG que ayudan a encontrar las instrucciones que hay que cambiar. Los scripts, junto con el OllyDBG + ODbgScript, y las instrucciones de uso las puedes descargar desde acá:
http://ubuntuone.com/7EDiP98LvPA0hZKBBRGHeX

Ahora bien, si lo que quieres es descargar el multihack ahora ya!! hazlo desde mi otro post y no te olvides de dejar sus puntitos locos por ahí : http://www.taringa.net/posts/juegos/9169561/Descarga-Multicliente-para-Shaiya-Lat.html

Cómo crear tu propio Shaiya Multicliente

27 comentarios - Cómo crear tu propio Shaiya Multicliente

COTON10 +2
FLACO EXCELENTE FUNCIONA RE BIEN NO TENES UN HACK PARA SUBIR EL ORO LA EXP Y EL PODER.GRACIAS
SOY NOVATO PERE TE DEJO +10
poncho008 +1
muy buena info lo hice y funca de 10...si tubiera t daria puntos jajajaja...genio no saves como hacer un climb hack y anti freeze???? el popup no funk en el eternity saves xq????
flurikdeno
COTON10 dijo:FLACO EXCELENTE FUNCIONA RE BIEN NO TENES UN HACK PARA SUBIR EL ORO LA EXP Y EL PODER.GRACIAS
SOY NOVATO PERE TE DEJO +10




no existe tal hack &lt;.&lt; buen post loko
PERDURABO666
tumorlike dijo:
PERDURABO666 dijo:excelente mañana van +10

Muchas grcias


Gracias a vos locura, es un re laburo usar programas q manejen assembler...yo lo uso y es un dolor de huevos pero si estudias bien el tema las empresas te pagan fortunas...eso si despues de hacer 3 bibliotecas te queres pegar un tiro...

Un abrazo y tus 10 merecidos
Gatito63
Buenaaa.Muy buen post +10
SoMiNuS +1
Genial, mucho mas detallado que el tutorial original (que ya estaba viejito por cierto)

Ahora:
La parte del Antifireeze (MOV DWORD PTR DS:[710888],ESI)
Esa no la encuentro, vos pudiste?
menhappylay
menhappylay dijo:10+ =)

te los devia hace UFfff xD
Bro si kieres puedo crear un Video =) y me guio de tu post asi facilita las cosas
menhappylay
Bro nito crear el del shaiya fusion antes no tenia problema pero ahora nose ke pasa abro el game.exe y le doy search for - all intermodular calss y me salen solo como 6 opciones :$ me puedes ayudar porfavor
juma14
actualisaron porfavor has un nuevo multi
ARCANGEL_22
tenes q hacerlo con el update.exe no el game.exe
jonydene
No entiendo el paso 3 si em loo explicarias , te lo agradeceria muchas gracias
EzzeqiielAce
Daaa queremos el jodido multicliente nada mas xDD Demasiado quilombo, es como que vas por el paso 5 te trabaste en algo y queres mandar todo a la mierda
virgenrocketmail
Hola descargue un cliente que dice SHAIYA 9.0 que vercion seria y como cambio la ip y vercion? estoy tratando de armar un server para ver como es el juego. GRACIAS!!!!