Hola a todos, ya hace muchísimo tiempo que no escribía un tutorial, y como parte de mi propia iniciativa para que la actividad de WAH resurga he decidido escribir uno de los tutoriales más buscados y que muchos han intentado cambiar, se trata de como cambiar la mochila por completo, incluyendo fondo y sprite de la mochila.
================
¿Que necesitamos?
================
- Sphere editor
- NLZ GBA
- NTME
- Free Space Finder
- Character Maker Pro
- Paint XP (El de Vista tambien sirve)
Anted que nada necesitamos diseñar nuestro fondo y la mochila, lo mejor es que nos basemos en los originales, yo voy a usar este diseño basado en la de BW2:
(Antes que lo pregunten, son públicos con créditos)
=========
Paso 1
=========
Primero debemos de armar el tileset con el fin de eliminar los tiles repetidos y ahorrar espacio, para ello usaremos Sphere (Buscalo en el foro o googlea) y vamos a abrir el programa "editor", ubicaremos la barra de herramientas y buscaremos la opción import>image to map, y seleccionaremos el fondo de nuestra mochila.
Ya seleccionada nos pedirá que seleccionemos el tamaño de los tiles, los fijaremos de tamaño 8x8
Luego nos preguntará si deseamos remover los tiles repetidos, le daremos que si, y con ewto ya se ha armado el tileset y nos ha creado un archivo en formato .rmp
=========
Paso 2
=========
Ahora abriremos en sphere el archivo .rmp que nos ha generado, al abrirlo veremos el fondo de nuestra mochila y el tileset con los tiles repetidos eliminados
Vamos a presionar "prnt scrn" en nuestro teclado para capturar la pantalla, vamos a pegar la captura en paint, vamos a eliminar todo los que no nos sirva, dejando solo el tileset, los espscios negros que queden los llenaremos de un color de fondo chillón, AÚN NO LO GUARDES.
La mochila usa animaciones de trancisión de bolsillos, para lo cual usa unos tiles especificos del tileset para estas animaciones, dichos tiles son marcados aqui abajo en color fucsia:
Llos tiles marcados van a usarse como animaciones, asi que lo mejor es no dejarlos de color de fondo y llenarlos de un color especifico, los tiles que ahi estaban muevelos hacia los espacios no usados del color de fondo.
Ahora si puedes guardar el tileset, despues de eso recuerda indexar el tileset.
=========
Paso 3
=========
Ahora es momento de armar el tilemap, vamos a abrir NTME y abriremos el tileset de la mochila que creamos, ya abierto vamos a la barra de herramientas y seleccionamos Open Tilemap>From Sphere RMP File.
Buscaremos el archivo .rmp que nos generó sphere, lo seleccionamos y se nos armará de manera automática el tilemap, al hacerlo este no se verá bien por los tiles movidos, para que se vea bien solo es cuestión de poner los tiles movidos de nuevo en su lugar a modo de rearmar el fondo, lo guardamos en formato .raw y listo, ya tenemos el tilemap.
========
Paso 4
========
Ya es hora de insertar todo lo que hemos hecho, asi que cargaremos nuestra Rom con NLZ GBA, y nos dirigiremos a la offset donde se encuentra el tileset de la mochila, las offsets son las siguientes:
0xe830cc Tileset (Grafico)
0xe832c0 TileMap (RAW)
0xe835b4 Colores (Paleta)
Podemos cambiar las paletas desde NLZ, solo debemos escribir la offset de la paleta en el cuadro donde dice "ROM Pallete Offset" y tildamos donde dice "compressed pallete" para ver la paleta normalmente.
Ahora es momento de cargar el tileset de nuestro nuevo fondo, asi que vamos a presionsr donde dice "import a bitmap", y vamos a buscar nuestro tileset, al seleccionarlo se nos abrirá un recuadro de las opciones de insercción. Probablemente el fondo sea más grande al original, asi que en FSF buscaremos algo de espacio libre, ya que tengamos la offset donde vamos a poner el fondo, la escribimos en el espscio en blanco, yo la pondré en 0xA90000, y luego tildaremos las tres casillas y presionaremos OK.
Luego que demos OK nos mostrará un recuadro donde nos indica la offset del puntero, le damos OK, y luego presionamos "Write to ROM", con esto el fondo ya está insertado en la ROM.
Para el tilemap repetimos el mismo proceso anterior, a excepción que ahora demos presionar "Import RAW" y desmarcamos la opción "Import Pallete to ROM".
Si todo salió bien esto debería verse mas o menos así:
Si no te sale vuelve a intentarlo, este proceso suele dar más errores que cambiar otro tipo de fondos, donde la prueba y error son la solución.
Es todo por hoy, saludos c:
================
¿Que necesitamos?
================
- Sphere editor
- NLZ GBA
- NTME
- Free Space Finder
- Character Maker Pro
- Paint XP (El de Vista tambien sirve)
Anted que nada necesitamos diseñar nuestro fondo y la mochila, lo mejor es que nos basemos en los originales, yo voy a usar este diseño basado en la de BW2:
(Antes que lo pregunten, son públicos con créditos)
=========
Paso 1
=========
Primero debemos de armar el tileset con el fin de eliminar los tiles repetidos y ahorrar espacio, para ello usaremos Sphere (Buscalo en el foro o googlea) y vamos a abrir el programa "editor", ubicaremos la barra de herramientas y buscaremos la opción import>image to map, y seleccionaremos el fondo de nuestra mochila.
Ya seleccionada nos pedirá que seleccionemos el tamaño de los tiles, los fijaremos de tamaño 8x8
Luego nos preguntará si deseamos remover los tiles repetidos, le daremos que si, y con ewto ya se ha armado el tileset y nos ha creado un archivo en formato .rmp
=========
Paso 2
=========
Ahora abriremos en sphere el archivo .rmp que nos ha generado, al abrirlo veremos el fondo de nuestra mochila y el tileset con los tiles repetidos eliminados
Vamos a presionar "prnt scrn" en nuestro teclado para capturar la pantalla, vamos a pegar la captura en paint, vamos a eliminar todo los que no nos sirva, dejando solo el tileset, los espscios negros que queden los llenaremos de un color de fondo chillón, AÚN NO LO GUARDES.
La mochila usa animaciones de trancisión de bolsillos, para lo cual usa unos tiles especificos del tileset para estas animaciones, dichos tiles son marcados aqui abajo en color fucsia:
Llos tiles marcados van a usarse como animaciones, asi que lo mejor es no dejarlos de color de fondo y llenarlos de un color especifico, los tiles que ahi estaban muevelos hacia los espacios no usados del color de fondo.
Ahora si puedes guardar el tileset, despues de eso recuerda indexar el tileset.
=========
Paso 3
=========
Ahora es momento de armar el tilemap, vamos a abrir NTME y abriremos el tileset de la mochila que creamos, ya abierto vamos a la barra de herramientas y seleccionamos Open Tilemap>From Sphere RMP File.
Buscaremos el archivo .rmp que nos generó sphere, lo seleccionamos y se nos armará de manera automática el tilemap, al hacerlo este no se verá bien por los tiles movidos, para que se vea bien solo es cuestión de poner los tiles movidos de nuevo en su lugar a modo de rearmar el fondo, lo guardamos en formato .raw y listo, ya tenemos el tilemap.
========
Paso 4
========
Ya es hora de insertar todo lo que hemos hecho, asi que cargaremos nuestra Rom con NLZ GBA, y nos dirigiremos a la offset donde se encuentra el tileset de la mochila, las offsets son las siguientes:
0xe830cc Tileset (Grafico)
0xe832c0 TileMap (RAW)
0xe835b4 Colores (Paleta)
Podemos cambiar las paletas desde NLZ, solo debemos escribir la offset de la paleta en el cuadro donde dice "ROM Pallete Offset" y tildamos donde dice "compressed pallete" para ver la paleta normalmente.
Ahora es momento de cargar el tileset de nuestro nuevo fondo, asi que vamos a presionsr donde dice "import a bitmap", y vamos a buscar nuestro tileset, al seleccionarlo se nos abrirá un recuadro de las opciones de insercción. Probablemente el fondo sea más grande al original, asi que en FSF buscaremos algo de espacio libre, ya que tengamos la offset donde vamos a poner el fondo, la escribimos en el espscio en blanco, yo la pondré en 0xA90000, y luego tildaremos las tres casillas y presionaremos OK.
Luego que demos OK nos mostrará un recuadro donde nos indica la offset del puntero, le damos OK, y luego presionamos "Write to ROM", con esto el fondo ya está insertado en la ROM.
Para el tilemap repetimos el mismo proceso anterior, a excepción que ahora demos presionar "Import RAW" y desmarcamos la opción "Import Pallete to ROM".
Gracias a jiangzhengwenjz, quien amablemente me dio la información que por tanto tiempo busque. Ahora disponemos del offset para modificar a gusto el molesto tema de la animación, lo dispenciosa que pueda ser esa tarea, depende directamente del resultado que queramos obtener.
Con esta información podemos alterar la animación para que ella se acople a nuestro menú y no al revés. O simplemente quitarla que seria la forma mas fácil y rápida de que nuestro menú quede totalmente diferente y visualmente agradable.
Aqui tenemos 1 problema principal, el tutorial fue hecho completamente basado en el hecho de que la animación tenia que dejarse, y poner esta info en el cuerpo del tutorial involucraría editar todo y cambiar extensamente el contenido del tutorial.
Por ese motivo, tratare esto como un anexo y dejare a su imaginación los resultados que puedan obtener al utilizarlo. Pero claro les explicare un poco sobre los datos que nos compartió jiangzhengwenjz.
De acuerdo a lo anterior, ahora sabemos las posiciones de memoria VRAM donde se encuentran los datos referentes a la animación de cambio de bolsillo:
0x810924C = el bloque animado al cambiar de bolsillo.
0x8452D08 = el fragmento de tilemap que se modifica cuando se cambia de bolsillo.
0x8109252 y 0x8109336: las posiciones donde se llama directamente la animación (supongo que eso es lo que hace).
Encontraremos esas posiciones en el hxd simplemente quitando el 8 al inicio de cada una (10924C, 452D08, 109252 y 109336).
Bueno y esto de que nos sirve??... Bien aquí todo queda en manos de lo que queramos hacer, personalmente me gusta que haya animaciones pero no considero que sea algo necesario en esta pantalla, asi que mi recomendación si lo que quieren es ahorrar tiempo y aun asi dejar un buen resultado seria eliminar la animación. Para ello solo pondremos 00 00 00 00, en las ultimas dos direcciones como indico antes jiangzhengwenjz en el HXD.
Con esto ya seria suficiente para que hagan sus menús como quieran sin ninguna limitación (en lo que se refiere a la animación), asi que cualquier punto del tutorial donde se mencione la animación o una limitante por la misma puede ser ignorada si se aplica este pequeño paso. Pueden diseñar como quieran y ordenar como quieran su tileset y tilemap.
Ahora bien, si lo que quieren es entrar en mas detalle, les dire que la dirección 452D08 contiene un "raw" sin comprimir, se aplica en el área de la lista de objetos cuando se hace la animación. raw sin comprimir significa que lo que ven ahí es la numeración de los tiles que se ponen, lo mismo que veriamos si abrimos un archivo .raw creado en ntme con el HXD.
Así, podemos manualmente ordenar todos los tiles que queremos que se vean en nuestra lista de objetos cuando se produzca la animación, quitando la limitación de tiles explicada en el tutorial. Sin embargo resulta mucho mas simple solo remover la animación, experimenten si quieren.
La dirección 10924C, contiene información sobre la animación en si misma, el primer byte corresponde al tile utilizado en la animación (2D que es igual a 45), los valores siguientes (por lo poco que mire) corresponden a posicionamiento horizontal y vertical de la animación y otras cosas que aun no entiendo. Son libres también de tocarlos a ver que pasa.
No pongo imágenes pues no considero que se requiera ya que básicamente son puros datos en hex. De manera que en pocas palabras, ya no deben limitarse al diseñar su menú, sean todo lo creativos que quieran y eliminen la animación (es la forma mas simple y el resultado visual es bueno).
Con esta información podemos alterar la animación para que ella se acople a nuestro menú y no al revés. O simplemente quitarla que seria la forma mas fácil y rápida de que nuestro menú quede totalmente diferente y visualmente agradable.
Aqui tenemos 1 problema principal, el tutorial fue hecho completamente basado en el hecho de que la animación tenia que dejarse, y poner esta info en el cuerpo del tutorial involucraría editar todo y cambiar extensamente el contenido del tutorial.
Por ese motivo, tratare esto como un anexo y dejare a su imaginación los resultados que puedan obtener al utilizarlo. Pero claro les explicare un poco sobre los datos que nos compartió jiangzhengwenjz.
De acuerdo a lo anterior, ahora sabemos las posiciones de memoria VRAM donde se encuentran los datos referentes a la animación de cambio de bolsillo:
0x810924C = el bloque animado al cambiar de bolsillo.
0x8452D08 = el fragmento de tilemap que se modifica cuando se cambia de bolsillo.
0x8109252 y 0x8109336: las posiciones donde se llama directamente la animación (supongo que eso es lo que hace).
Encontraremos esas posiciones en el hxd simplemente quitando el 8 al inicio de cada una (10924C, 452D08, 109252 y 109336).
Bueno y esto de que nos sirve??... Bien aquí todo queda en manos de lo que queramos hacer, personalmente me gusta que haya animaciones pero no considero que sea algo necesario en esta pantalla, asi que mi recomendación si lo que quieren es ahorrar tiempo y aun asi dejar un buen resultado seria eliminar la animación. Para ello solo pondremos 00 00 00 00, en las ultimas dos direcciones como indico antes jiangzhengwenjz en el HXD.
Con esto ya seria suficiente para que hagan sus menús como quieran sin ninguna limitación (en lo que se refiere a la animación), asi que cualquier punto del tutorial donde se mencione la animación o una limitante por la misma puede ser ignorada si se aplica este pequeño paso. Pueden diseñar como quieran y ordenar como quieran su tileset y tilemap.
Ahora bien, si lo que quieren es entrar en mas detalle, les dire que la dirección 452D08 contiene un "raw" sin comprimir, se aplica en el área de la lista de objetos cuando se hace la animación. raw sin comprimir significa que lo que ven ahí es la numeración de los tiles que se ponen, lo mismo que veriamos si abrimos un archivo .raw creado en ntme con el HXD.
Así, podemos manualmente ordenar todos los tiles que queremos que se vean en nuestra lista de objetos cuando se produzca la animación, quitando la limitación de tiles explicada en el tutorial. Sin embargo resulta mucho mas simple solo remover la animación, experimenten si quieren.
La dirección 10924C, contiene información sobre la animación en si misma, el primer byte corresponde al tile utilizado en la animación (2D que es igual a 45), los valores siguientes (por lo poco que mire) corresponden a posicionamiento horizontal y vertical de la animación y otras cosas que aun no entiendo. Son libres también de tocarlos a ver que pasa.
No pongo imágenes pues no considero que se requiera ya que básicamente son puros datos en hex. De manera que en pocas palabras, ya no deben limitarse al diseñar su menú, sean todo lo creativos que quieran y eliminen la animación (es la forma mas simple y el resultado visual es bueno).
Si todo salió bien esto debería verse mas o menos así:
Si no te sale vuelve a intentarlo, este proceso suele dar más errores que cambiar otro tipo de fondos, donde la prueba y error son la solución.
Es todo por hoy, saludos c:
Última edición: