[Cerrada] Escuela de ROM-Hacking Básico de Franco Kuchiki

Avisos

Like Tree26Gracias

 
 
Herramientas Desplegado
  #11  
02/02/2015
Predeterminado Respuesta: [Presentación] ¿Por qué rom-hackear?: Sobre inspiración y entusiasmo
Asi que ya comienzan las clases
Por fin, después de 1 mes y medio de espera xD
  #12  
05/02/2015
Predeterminado Clase 1: Conceptos básicos


CLASE 1


Conceptos básicos


Para iniciar en el rom-hacking y entender lo que estamos haciendo a medida que vamos avanzando y realizando diversas modificaciones, hace falta comprender ciertos conceptos básicos. Empecemos:
  • ROM: Es la forma abreviada de Read Only Memory, cuya traducción sería "memoria de solo lectura". Eso significa que no podemos "escribir" la memoria, modificarla. Entonces ustedes se preguntan: ¿Cómo hacemos para rom-hackear? La respuesta es que ese término proviene de tiempos anteriores, donde las ROMs no podían ser modificadas, y se aplica a las nuevas formas de memorias más modernas por extensión. En el caso de los videojuegos, los desarrolladores usaban memorias de tipo ROM en los cartuchos para almacenarlos. Con el fin de evitar la pérdida de esos juegos para siempre, los usuarios comenzaron a realizar copias en sus PCs. De este modo, los archivos ROM o imágenes ROM (compréndanse dentro de este punto los juegos de pokémon) son perfectamente modificables.
  • Bit: Es la forma corta de Binary digit, o, en español, dígito binario. El nombre proviene de que es justamente un dígito del sistema de numeración binario. Por esto, puede representar dos valores distintos, el 0 o el 1. Generalmente, se lo compara con una bombilla de luz, que puede estar apagada o encendida.
    El bit es, además, la mínima unidad de información empleada en la informática. Pero tengamos en mente algo, un bit solamente puede representar 2 valores, para representar más valores necesitamos más bits.
  • Byte: Es un conjunto de bits, su nombre proviene de ser la cantidad mínima de datos que una computadora puede "morder" ('bite' en inglés) a la vez. Si bien antiguamente era común que un byte contara con entre 6 y 9 bits, siendo definido como un conjunto con un número fijo de bits, actualmente es más regular que el byte tenga 8 bits, por lo que en español es conocido como "octeto" (aunque algunos autores sostengan que es una estandarización errónea y que esos términos no deben ser usados como sinónimos). De todos modos, llamaremos byte al conjunto de 8 bits que, sacando equivalencias, corresponde a 2 dígitos hexadecimales.
  • Offset: Un offset es un número entero que indica el desplazamiento que hay desde el inicio hasta cierto punto. A través de ellos podemos saber dónde se encuentran ciertos datos, como imágenes o scripts. Aclárese que, generalmente, lo representamos con dígitos hexadecimales.
  • Pointer: Un pointer, o en español, puntero, es una variable que contiene especificada una dirección hacia otra parte del archivo. Es decir, que podríamos llamar puntero a la cadena de datos que usamos, por ejemplo, para señalar la paleta que usa tal o cual mini, especificando mediante éste el offset en el que se encuentra la susodicha paleta.
Espero que hayan entendido estos conceptos. Ante cualquier duda que tengan, no duden en recurrir al tema: Preguntas y Respuestas.
Manténganse atentos porque para mañana podría estar la próxima clase.


Enlaces Importantes


Alumnos


@Parritalol!
@ItsGrimlock
@Injuxa
@KraimonPower
@The Age
@Shido
@Green
ArcticMankey-_-
@Antialias sama
@Tyren Lannister
@Zitrux
@Scripter Uchiha
@Panda_Megan4568
@Pedrito4427
@Charizard15
@ApoloD
@rjgamester
@Alan
@Mattercore
@Warmon99
@Dante
@Lunos
@Walter
@Joselux
@Luis Pokemon World
@agmelmejor1996
@Gareicho
@Delos7
@Absol-96
@FhierusIV
@Calayax
@Severino
@Anto

  #13  
05/02/2015
Predeterminado Respuesta: Preguntas y Respuestas
Realmente no entendí mucho el pointer, entonces ¿sólo te redirige a otro offset? ¿O es otra función?
Juega conmigo ^^

No abrir:

Pincha para ir a mi canal de Youtube:









  #14  
06/02/2015
Predeterminado Respuesta: Preguntas y Respuestas
Dicho por KraimonPower Ver mensaje
Realmente no entendí mucho el pointer, entonces ¿sólo te redirige a otro offset? ¿O es otra función?
Vamos a ver. Un pointer podríamos definirlo como un offset insertado dentro de los datos que hay en el ROM. Lo que hace es indicar que la información que buscamos está en tal o cual dirección.
Entendamos que un ROM de pokémon, generalmente, está formado por 32 MB de datos continuos. Para encontrar ciertas cosas dentro de todo ese conjunto, es necesario indicar en ciertas partes dónde está. Ese es el caso de los minis, en la información de los minis, hay una parte que es el offset en el que se encuentran los colores de la paleta.
Es decir, si abrimos nuestro ROM en un editor hexadecimal y vamos a donde están todos los datos de un mini (escritos en forma de bytes), encontraremos una parte que (si bien parece lo mismo) en realidad es un puntero. Ese puntero indica que, al leer el ROM, cuando haya que interpretar ese mini, el emulador busque la paleta en la dirección indicada.
En resumen, es como una redirección, nos dice dónde buscar ciertos datos.

GMod de un tono algo insolente, hiciste que a la gente le duela tu dolor.
GMod, de staff equilibrista, más que GMod artista con vicios de GMod...
¿Crees que Flame ha hecho un buen trabajo? ¡Entra!
Ya ves, a mí y a Whack a Hack nos falta tanto el aire cuando no está el GMod...

100% STAFFMIGUISTA
¡VIVA EL STAFFMIGUISMO!

Edo...Volvé y sé millones




EDO 4 ADMIN


  #15  
07/02/2015
Predeterminado Clase 2: Editores de mapas


CLASE 2


Editores de mapas


Buenas. Ayer tocó hablar de conceptos básicos, pero hoy ya empezamos con los editores de mapas.
Empecemos con el más conocido: A-Map.
Advance-Map
El Advance Map fue creado por LU-HO. Es actualmente el editor de mapas por defecto. La última versión estable conocida es la 1.92, si bien la última que salió fue la 1.95. Esta última cuenta con muchísimos bugs, lo que la hace bastante inestable y no es recomendable usarla.
Blue Spider
Este editor de mapas estaba siendo desarrollado por cosarara97. Tenía la ventaja de funcionar en Linux y (aunque la versión fuese anticuada) en MAC y ser open source (de código libre).
Es un muy bonito programa, que tenía el potencial de superar al A-Map. Sin embargo, según cosarara me dijo, el proyecto ha sido cancelado al ver el Map Editor of Happiness (MEH). Aún así, cuenta con una versión utilizable, aunque podría haber bugs no descubiertos.
Map Editor of Happiness
Este editor comenzó a desarrollarse en enero de 2014, por Shiny Quagsire y interdpth. Cuenta con una ventaja primordial, a diferencia del A-Map, no sobreescribe la información al agrandar un mapa, el repunteo funciona bien.
Sus ideas son espectaculares, podemos encontrar el proyecto de un sistema DNS (o bien una compatibilidad con uno), un editor de pokémons y un nuevo editor de conexiones. Sin embargo, la versión actual es aún una beta, por lo que tampoco es recomendable usarla para hackeo completo.

Ahora vamos a familiarizarnos un poco con las herramientas que tienen:

Advance-Map


Spoiler



Rojo: Es el botón "Open ROM", simplemente lo clickeamos para abrir nuestro ROM. (Es como abrir cualquier archivo en cualquier programa)
Verde: Clickeando sobre este botón podremos ver toda la información sobre el A-Map, tales como el desarrollador y la versión.

  • Rojo: Es el típico botón "Guardar", para que se graben los cambios que hemos hecho.
  • Negro: Este botón sirve para crear un nuevo mapa. Al presionarlo nos saldrá este cuadro:

    Spoiler


    Aquí debemos poner: nombre, ancho, largo, el tileset que usaremos como primario y el tileset que usaremos como secundario (respectivamente).
  • Azul: Con él podemos insertar mapas. Abrirá otro cuadro:

    Spoiler


    [IMG][/IMG]
    Aquí podremos:
    • Reemplazar un mapa existente.
    • Insertarlo en un lugar disponible.
    • Crear un nuevo espacio (para luego insertar un mapa allí).
    (Esas son las tres opciones que aparecen, en orden descendente)
  • Verde: Sirve para volver al mapa en que estábamos anteriormente (no funciona si este es el primer mapa que abrimos al iniciar el A-Map).
  • Amarillo: Este botón hará que, en la pestaña de "Events" se muestren solamente los minisprites. Como una imagen vale más que mil palabras, veamos dos capturas, para explicarlo mejor:

    Spoiler


    Así se ve antes de apretar el botón:

    *Nota: Quiero señalar que lo que marqué con un cuadro verde es importante porque nos muestra toda la información sobre el evento que tenemos seleccionado; en este caso, una persona (que está marcada doblemente en rojo porque soy ciego y la marca que hace el A-Map me pareció insuficiente xD)*
    Y así es como queda cuando matamos ocultamos todo excepto los minis:

    *Nota: Esos overworlds que vemos, antes eran cuadrados verdes con una "P" en medio pero con un poco de magia, los convertimos en humanos y camiones.
  • Celeste: Abre el editor de bloques. ¿Qué es un bloque se preguntarán? Pues un conjunto gráfico de 16x16 píxeles. Cada uno de los cuadraditos que usamos para mappear se llama "bloque". ¡A ver las imágenes!

    Spoiler


    Aquí podemos ver el editor en sí.
    Lo que está (de nuevo) marcado doblemente en rojo porque soy ciego es un bloque. De verde marqué el cuadro que nos permite cambiar la paleta con que vemos el tileset (marcado de naranja).
    Todo esto es algo confuso, pero no se preocupen, lo veremos más a fondo cuando tengamos que insertar tiles (;
  • Naranja: Este es el editor de conexiones, veamos qué pasa al clickearlo:

    Spoiler


    Marcado en rojo y naranja esta vez bicolor, porque llama más la atención y el pobre tiene problemas emocionales está nuestro mapa actual. Por otra parte, desde los campos que hay a la izquierda podremos editar las conexiones que tiene el mapa. Ya lo veremos mejor luego también.
  • Violeta: Esto supuestamente debería abrir el editor del worldmap, pero no funciona porque Jaizu se robó la programación del A-Map en esta versión. Sí lo hace en la 1.92.
  • Blanco: Por si no se nota, es la lupa. Nos permite buscar espacio libre en nuestro ROM. Si lo abrimos vemos... Bah, mejor les muestro la imagen y ya está.

    Spoiler


    Prefiero guardar la explicación para después xD Probablemente los confunda demasiado si empiezo con eso ahora.
  • Gris: Eso cambia el criterio para ordenar los mapas.
  • A la izquierda podemos ver la lista de mapas.
  • A la derecha vemos el mapa y los bloques de los que disponemos para mappear.

Ahora vamos a ver las distintas pestañas que tiene el A-Map:

Spoiler


  • Rojo: Es la pestaña que vemos actualmente, la usamos para editar el mapa, la colocación de los bloques más precisamente.
  • Amarillo: Podemos editar los movimientos permitidos, es decir por qué parte se puede caminar, por cuál surfear, por cual no se puede pasar, etc.

    Vista de la pestaña



    Ya explicaremos para qué sirve cada uno más adelante.
  • Verde: Esta ya la vimos antes, nos permite ver y editar los eventos que suceden en el mapa, minis, letreros, scripts de gatillo, posiciones de vuelo...

    ¡A verla!



  • Negro: Desde esa pestaña editamos los pokémons salvajes que aparecen, sea en el pasto, surfeando, pescando o al usar "Rock Smash" (Golpe Roca). Pero vamos a verla:

    Spoiler



  • Azul: Es el cabezal del mapa, allí vemos y editamos el nombre, los scripts de nivel y la música, entre otras cosas. Veamos una imagen, si es que no se la robó el malvado Doctor Chamber D:

    Spoiler



    Pero, al apretar "Ctrl+H", podremos verlo así (no se asusten, es solamente el modo avanzado):

Y eso es todo lo que tenemos que saber sobre el Advance-Map.




Enlaces Importantes


Tarea


Vamos a ver. Como habrán visto si leyeron toda la clase, yo hice un análisis del A-Map, como para que entiendan con qué herramientas cuenta este popular editor de mapas.
De tarea, me gustaría que eligieran otro de los editores que nombré (Blue Spider o MEH) y hagan algo similar, quiero que señalen las partes que yo señalé en el A-Map.
Recuerden que no necesariamente deben estar todas, ya que esos editores de mapas pueden no contar con las mismas funciones, solo señalen las que encuentren.
El modo de entrega será mediante este mismo tema, o bien por MP si así lo prefieren.
Tienen tiempo hasta que salga la próxima clase.

PD: Los invito a visitar la "Asamblea Escolar" (revisar "Enlaces Importantes") y dejar su opinión sobre esta clase.

Alumnos


@Parritalol!
@ItsGrimlock
@Injuxa
@KraimonPower
@The Age
@Shido
@Green
ArcticMankey-_-
@Antialias sama
@Tyren Lannister
@Zitrux
@Scripter Uchiha
@Panda_Megan4568
@Pedrito4427
@Charizard15
@ApoloD
@rjgamester
@Alan
@Mattercore
@Warmon99
@Dante
@Lunos
@Walter
@Joselux
@Luis Pokemon World
@agmelmejor1996
@Gareicho
@Delos7
@Absol-96
@FhierusIV
@Calayax
@Severino
@Anto

Gracias: Lunos y DeadApolo
  #16  
08/02/2015
Predeterminado Respuesta: Clase 2: Editores de mapas
Con el mismo color y todo:
Aquí
Incluso ayuda para ceguera

Aquí tienes:
Deberes


Ya está, ahora toca decirme si están bien los deberes jaja.
Juega conmigo ^^

No abrir:

Pincha para ir a mi canal de Youtube:









  #17  
08/02/2015
Predeterminado Respuesta: Clase 2: Editores de mapas
Yo elegi el Blue Spider, para no hacer exactamente lo mismo que Kraimon y tener un poco mas de diferencia, pero veo que tuve mala suerte, BlueSpider es muchisimo mas basico y se me hizo confusa la tarea por el tema de señalar las similitudes xD

Imagen 1: "Botones" de Abrir e Indice de informacion sobre la herramienta, usé el Rojo como color, y debido a que Blue Spider no posee un indice de informacion a diferencia del A-Map, no pude marcar otra cosa mas que la Opcion de Abrir la ROM xD..

Spoiler



Imagen 2: Muy vacia, lo se, pero es que la unica funcion de todas las mencionadas en esta parte es la de "Guardar ROM" ninguno de los otros botones o funciones en dicha imagen, aparecen en Blue Spider.
(Refiriendome especificamente a las funciones de crear nuevo mapa, insertar nuevo mapa, etc, etc)

Spoiler



Imagen 3: Pestañas de trabajo, utilize los mismos colores que tu para señalarlas y que asi sea mas facil para mi a la hora de señalarlas.

Spoiler



Nota: Como la tarea lo indica, señalé unica y exclusivamente las funciones que tu nombraste, razon por la cual dejé las pestañas "Level Scripts" y "Tilemap Palette" fuera.

Y creo que eso es todo, espero no haberme equivocado, por un momento supuse que "Tilemap Palette" podria referirse a la Paleta de un Tileset especifico, funcion que aparece en el Editor de Bloques del A-Map, pero como dice "Tilemap" en lugar de "Tileset" no sabia si se referia exactamente a lo mismo o a algo distinto, ante la incertidumbre, supuse que seria un concepto distinto y por ende lo dejé sin marcar :3



Cya~
  #18  
08/02/2015
Predeterminado Respuesta: [Presentación] ¿Por qué rom-hackear?: Sobre inspiración y entusiasmo
Justo acabo de leer la Clase 1, la Clase 2 (y hacer su tarea) y acabo de notar que me salté este bonito Prologo ...
Lo siento por no haber respondido antes, es que estuve tan atento los primeros dias y viendo que no habian lecciones aun pues poco a poco dejé de entrar, pero hoy volvi a pasarme y ya estaba todo este contenido <3
En fin, ¡Yo tambien estoy aqui!
*Levanta la mano como en una clase cuando la maestra pasa la lista*


Cya~
  #19  
08/02/2015
Predeterminado Respuesta: Clase 2: Editores de mapas
Bueno, yo use el Blue Spider, ya que el otro no sabia como carajo abrirlo xD asique aqui esta lo mio, señalo todo lo que sabia y conocia

Tarea

  #20  
08/02/2015
Predeterminado Respuesta: Preguntas y Respuestas
Con respecto a la clase anterior (calse 2) queria saber como se abre el MEH, ya que no tengo ni idea xD
Tambien como curiosidad queria saber si van a terminar de desarrollar el MEH y si se conseguira ser mejor el el Advance Map.
Un Saludo!
 

Herramientas
Desplegado

Permisos para publicar mensajes
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los BB code están Activado
Los Emoticones están Activado
El código [IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Desactivado



Extra
Estilo clásico
La franja horaria es GMT +1. Ahora son las 06:50.