El Rom Hacking


Publicado por DrBoiffard, el February 23rd, 2006 in Video-Juegos.

Antes os he hablado del hacking de hardware: las consolas nes piratas que hacían los orientales para que los niños pobres tambien jugásemos al Mario, y, con más artesanía y salero, las consolas caseras que hacen unos cuantos manitas. Ahora toca pasarse al hacking de software. Que es mucho más divertido, porque este se ve y se toca, solo hay que bajarse las roms, un emulador, y a disfrutar.

  • ¿DE QUE VA EL ROM HACKING?
  • Primero convendría definir que es una rom, para los novatos. Una rom es una memoria de solo lectura. Una rom de un juego es, esencialmente, el contenido de un cartucho de consola. Las roms se pueden pasar a archivos de diversas maneras, y una vez en un PC se puede jugar con un emulador a la consola en cuestión. Un emulador es un programa que imita el funcionamiento de un cacharro, desde consolas hasta ordenadores antiguos. El rom hacking, entonces, consiste en modificar esas roms. Desde cambiarle los textos o los escenarios a un juego a programar uno entero, siempre orientado a ser jugado en un emulador por nostálgicos como el que escribe.

  • ¿PERO COMO COÑO SE HACE ESO?
  • La primera forma de hackear roms es la evidente, que es cogerte la rom enterita, verla byte a byte en hexadecimal con algun editor de hexadecimal y modificarla a pelo. Como es evidente, esta opción no es muy potente, y esencialmente se usa para cambiar textos, que es lo único legible cuando coges una rom y miras a lo bruto lo que tiene. Aunque si hay gente que se puede construir una Dreamcast portátil, tambien hay hackers de ROMs capaces de hacer malabares con un editor hexadecimal. Otra forma de hackear roms más completa y potente es cambiar directamente el codigo máquina de las roms, mediante un emulador que disponga de debugger, observando pacientemente el cómo funciona el juego para entender el código y así poder cambiarlo. Esta es la técnica por excelencia del hacker de roms.

    Por otro lado tambien hay una forma completamente opuesta de hackear roms, accesible al gran público, que es coger una herramienta prefabricada, con sus botoncitos, sus casillas y sus ventanitas: el Lunar Magic, por ejemplo, una sencilla herramienta para editar niveles del Super Mario World de Super Nintendo. Los no-programadores pueden ir todavía más allá con un editor de datos para un juego específico, (principalmente los RPGs más clásicos), donde se identifican las estructuras de datos del juego (habilidades de los personajes, dialogos, caracteres, IAs de los enemigos, etc). Si bien esto no requiere conocimientos de programación, si que requiere un conocimiento del funcionamiento del juego y de los datos que se están manejando en las ventanitas con sus botoncitos y pestañitas apestantes a Windows.

  • MAS LEJOS TODAVIA
  • Brian Provinciano, una de las personas del mundo con más amor por la vieja consola de Nintendo, está desarrollando Grantheftendo, un GTA para NES. Esto quizá no debería estar aquí, porque no es rom hacking sino directamente programación en NES. Un rom hack es, estrictamente, una modificación de una rom, no la creación de un juego entero.

    Sin embargo, el proyecto que está realizando este genio merece estar aquí por ser el máximo exponente de lo que venimos a explicar. El notas se ha currado todo un lenguaje de ensamblador para desarrollar el juego: el NESHLA, libre y descargable desde SouceForge. También se ha construido sus propias aplicaciones para editar el juego y por supuesto, el tío lo prueba en la propia NES con el cacharro que se ha construido él mismo, el Devtendo. La cuestión no es que el señor Provinciano esté desarrollando un juego con herramientas de desarrollo, la cuestión es que esas herramientas de desarrollo se las ha construido él mismo. Y una vez construidas tus propias herramientas de desarrollo, ¿quien quiere modificar ROMs puediendo programarlas desde cero?

    Puede que los gráficos no impresionen demasiado, pero requiere una habilidad impresionante programar un GTA para la vieja consola de Nintendo. En su día el GTA de PSX costó mucho sudor por la limitada memoria (8 MB) que tenía la de Sony, ya que almacenar toda la ciudad y sus coches y sus habitantes no es moco de pavo. Todavía no está disponible este juego de NES, y al parecer va para largo, pero si se logra realizar con éxito va a ser una joya de la programación digna de mucha, mucha, mucha alabanza. Es realmente difícil. En la página pone humildemente que será el más complejo juego de NES creado jamás. El proyecto lleva desde 2004, pero tanta dedicación y esfuerzo no se tira a la basura así como así, y tarde o temprano podremos descargarnos algo que abrir en nuestro emulador.

  • HACKS DE ROMS PARA LA MUCHACHADA
  • Hay unas cuantas joyas del rom hacking que merece la pena bajarse y, por lo menos echar un vistazo.


    El Mario Adventure
    es una impresionante re-programación del Super Mario Bros 3 que acaba de salir y es lo que me ha llevado a escribir esto. Si el SMB3 es tecnicamente el mejor juego que jamás vio la NES, y, para mi juicio, el mejor Mario en 2D que hay (sí, mejor que el Super Mario World, es más completo y divertido, Yoshi es una lagartija de mierda), esta rom es para echar bastante baba. Absolutamente todos los niveles son nuevos, los graficos se han rediseñado con un acabado mejor que el original, el clima en las pantallas es aleatorio, hay nuevos power-ups…Pero no solo eso. El sistema de juego ha cambiado ligeramente, ya no hay que llegar al final, sino que debemos recoger unas serie de llaves, una por mundo, para completar el juego, al final de cada fase nos encontraremos un simpático Boom Boom en vez de la cartita de siempre, las monedas se pueden cambiar por items en lugar de dar vidas… En definitiva, un nuevo e increíble juego del fontanero amante de los alucinógenos para la siempre eterna NES.

    Más hacks que están bastante graciosos, aunque menos currados, son la serie de Super Bald Bros, donde un calvo y orgulloso ha modificado los 3 marios originales de NES para que el fontanero aparezca con una brillante y preciosa calva. También están el Super KKK Bros, conversion del SMB1 donde nuestro Mario ha sido sustituido por un skinhead y los enemigos por gente de color. En la misma página también hay un hack del Zelda2 basado en el clásico gore , Evil Dead (la idea está bastante bien pero el acabado final no tanto) o un hack del Donkey Kong basado en la peli The Wall de Pink Floyd. Y en general, toneladas y toneladas de modificaciones de juegos de todos los cacharros, unas para freaks, como estas, otras útiles, como traducciones de juegos, y otras que merecen borrarse de la red por chapuzas injugables.

    Por supuesto, al igual que ocurría con el hardware, no sólo están los juegos modificados por genios con tiempo libre, sino que hay kilos y kilos de juegos modificados made in Hong-Kong, el complemento software a las consolas piratas. Estas son principalmente las clásicas recopilaciones de juegos en cartuchos de 100-en-1, modificaciones del Super Mario Bros con los niveles intercambiados o modificaciones sin ningún encanto, simplemente puestas ahí para disimular de mala manera la copia pirata de un juego. Sin embargo, al igual que había increíbles NES clónicas con reproductor VCD o teclado y modem, tambien hay juegos piratas que son una verdadera pasada. A mí particularmente me han hecho gracia (sí, lo se, tengo obsesión por Mario) el Super Mario World y el Street Fighter 2 de NES. Si hubieran llegado a mis manos estos cartuchos piratas, solo estos dos, jamás me hubiera pasado media infancia deseando tanto la Super Nintendo que nunca tuve. También hay un Tekken 2 bastante currado.

    Dios bendiga a los emuladores. Y a los hackers de roms.

    Referencias

  • Rom Hacking en Wikipedia (ENG)
  • I-Mockery.com Rom hacks graciosas
  • Pagina de Brian Provinciano un genio del asunto.
  • GrandTheftendo GTA para NES
  • acmlm.org: Herramientas varias para trastear con roms
  • Neshla: ensamblador maqueado de NES
  • Mario Adventure
  • Artículos relacionados

  • Las consolas caseras
  • La piratería artesanal o la conspiración de Nintendo para dominar el mundo.