Registrarse

Proyecto de Decompilación : PokePlat

Mimilena

Mimilena Strike Back
Hiii!!!

Si se lo preguntan, no, no puedo iniciar un tema casual sin un gif de una monita china (?).


Ya todos conocen el tema de Lunos hablando del pokeruby, se ha hecho bastante famoso aqui en WaH, pero como el mismo menciono no es el unico proyecto de decompilacion, por lo que hoy vengo a hablarles de PokePlat, el proyecto de decompilacion de Pokemon Platinum.


Soy el unico que cree que esta pantalla de titulo es medio creepy?

Para entender mas de la decompilacion en si, les recomiendo leer el tema de Lunos primero y luego volver a este.

Como ya deben saber, pokeruby y pokemerald fue hecho/esta siendo hecho por el Equipo Pret, un equipo de gente especializada que decompilo y tradujo el codigo de estos miticos juegos, pero con el caso de PokePlat es diferente, PokePlat fue hecho por una sola persona, un usuario llamado JimB16 (pueden encontrarlo en en Discord solo como JimB).

Probe su proyecto y tenia algunos errores, errores que recien soluciono ya que se lo pedi hablando del tema del rommaking y accedio a arreglarlo, ya que pensaba que nadie estaba interesado en su trabajo, y luego de comprobar por mi mismo que la compilacion funciona de manera adecuada, fue que decidi traer esto a WaH.
La unica desventaja que tiene PokePlat contra pokeruby o pokemerald, es que PokePlat sigue aun en ASM, no estoy seguro si JimB sabe traducirlo, pero aun si supìera es solo una persona, tardaria meses en traducir tanto codigo.
Aun asi hay uno que otro proyecto de decompilacion de Pokemon Platinum en C del que pueden guiarse para editar este, pero no los pongo ya que estos son... trabajos a medias, por no decir que estan hechos a maquina y no a mano.

El tutorial es muy similar al de Lunos, les dijera que leyeran la primera mitad y volvieran a este pero como se que hay mas de un perezoso que no lo hara, podre todo aqui.

Instrucciones.

Descarguen e instalen la ultima version del DevKitPro y lo mismo con el Cygwin y descargan esta ROM de Pokemon Platinum (no tiene que ser exactamente esta, pero mejor ir a lo seguro no? ya que esta fue la que se decompilo)

Cuando esten instalando el Cygwin y lleguen a esta pestaña:

cambian la pestaña de "Pending" a "Full", alli buscaran y seleccionaran los siguientes paquetes:


Una vez termine la instalacion, se van a [La letra correspondiente a su disco duro principal]:\cygwin64 y ejecutan el archivo ".bat" que se encuentra en la raiz de la carpeta, "Cygwin.bat"



Ahora alli van a ejecutar estos codigos:
Código:
export DEVKITPRO=/cygdrive/c/devkitpro
echo export DEVKITPRO=$DEVKITPRO >> ~/.bashrc
export DEVKITARM=$DEVKITPRO/devkitARM
echo export DEVKITARM=$DEVKITARM >> ~/.bashrc
git clone https://github.com/JimB16/PokePlat
git clone https://github.com/drj11/pypng
cd pypng
python setup.py install
Una vez termine la instalancion, cierran esa cosa (?)
Se van a la carpeta "[la letra de su disco duro principal]:\cygwin64\home\[su perfil/nombre de usuario/loquesea de window]\PokePlat" y descomprimen la ROM de Pokemon Platinum, no olviden esto! a la rom hay que cambiarle el nombre a "baserom" para que funcione, osea debe quedar "baserom.nds" en lugar de "3541 - Pokemon Platinum Version (US)(XenoPhobia).nds"

Luego abren otra vez el bat y ejecutan estos otros codigos:
Código:
cd pokeplat
make init
make narc
make pics
make init2
make pokeplat
Debo avisar que estos procesos son increiblemente lentos! claro, dependiendo de tu pc te ira mas rapido o mas lento, yo tengo una piedra y me tardo 10 horas (?)

Una vez termine, en la carpeta donde copiaste la ROM debe de haber otra ROM mas liviana llamada "pokeplat.nds" (es mas liviana porque elimina los archivos innecesarios, ademas de le faltan algunas cosas por lo que, en caso de no encontrarse algo significa que no es compatible aun) que es la ROM compilada.

Recientemente JimB me comento que una vez se hagan los cambios en los archivos (tienen que hacer los cambios en los archivos de la carpeta "source" o "data") para no perder tanto tiempo compilando, que se use el comando "make pokeplat -j 4".
Este comando basicamente actualizara los cambios que hagas, colocandolos en la ROM ya compilada (obio tienes que tener "pokeplat.nds" ya compilado en la carpeta para que funcione).
No se que tan efectivo sea este comando, porque de verdad aun no lo he probado.

Y creo que hasta aqui! ire actualizando el tutorial a medida que vaya aprendiendo cosas, note errores, o que JimB actualize su Github.
De tener alguna duda o error, contactenme.
 
Última edición:

PkPower

Webmaster
Miembro del equipo
Webmaster
Respuesta: Introducción a PokePlat | Nos robamos (mas o menos) lo mejor de GBA jsjsjsjsjs.

Siempre me ha dado la sensación de que el rom-hacking de NDS nunca terminó de despegar, y esta puede ser una oportunidad estupenda para revertir la situación.
 

KleinStudio

Un plato es un plato
Miembro del equipo
Webmaster
Respuesta: Introducción a PokePlat | Nos robamos (mas o menos) lo mejor de GBA jsjsjsjsjs.

Hay que tener en cuenta que pokeplat no está siendo descompilado por el mismo grupo que está descompilando Ruby, Emerald, FireRed, Crystal y demás y sobretodo que todavía no tiene absolutamente nada de código en C por lo que no se puede comparar mucho a los otros proyectos.
Pero aun así puede ser útil para modificar gráficos y demás, o para buscar más fácilmente en el código ensamblador de la ROM y encontrar cosas útiles ;)
 

Mimilena

Mimilena Strike Back
Re: Introducción a PokePlat | Nos robamos (mas o menos) lo mejor de GBA jsjsjsjsjs.

Eso lo deje en "Contexto" xD
Me parece que, sabiendo ASM puede llegar a ser bastante util, muy pocas cosas son las que no estan completas (JimB no me especifico mucho, pero creo que el arm9/7 y la mayoria de los overlay estan completos).
De hecho, me voy a poner a modificar la rutina de la pokedex en cuanto tenga tiempo, basandome en la de MeroMero xD
 

Lunos

Enfrentando a La Organización
Miembro insignia
Respuesta: Introducción a PokePlat | Nos robamos (mas o menos) lo mejor de GBA jsjsjsjsjs.

Venia a aclarar una cosirijilla: Este no es un proyecto de decompilación, solo de desensamblaje.
Creo que Jim no planea traducir el codigo a C, como lo están haciendo los de Pret con los juegos anteriores.

En cualquier caso, buena suerte y espero que traer PokePlat aqui incentive a la gente a utilizarlo :)
 
Arriba