Tutorial rápido para la creación de animaciones.

Para creaciones en base a otros FE o similares, así como preguntas o tutoriales.
Responder
Shadeloki
Sabio
Sabio
Mensajes: 748
Registrado: 13 Ene 2016, 01:26

Mensaje por Shadeloki »

Buenas tardes damas y caballos. Debido a que muchos de los tutoriales del foro tienen imágenes caídas (y desconozco si los autores seguirán activos en el foro), decidí reescribir algunos y publicarlos acá por si luego llega algún interesado ya que siempre hay gente va y viene con esto de los mods y hackroms y nunca se sabe a quien le podrían servir.

Advierto que puede que estén escritos y explicados medio al pedo por que no e querido enfrascarme mucho en detallar algunas partes para no tener que hacer mas screen-capture de las necesarias por lo latoso que me resulta subir imágenes, así que cualquier confusión, duda o cosa que no quede muy en clara podéis proceder a preguntar.

Empezare con un tutorial “breve y rápido” sobre como hacer animaciones de batalla. Para ello necesitaremos de al menos 2 programas.

1-FEditor Adv: Que usaremos para extraer animaciones, como también para insertarlas o crear una nueva.
2-Usenti: Que necesitaremos para realizar nuestras labores de modificación.

Por ahora me enfocare en explicar como hacer una animación nueva usando como base una ya existente, y ya mas adelante explicare como poder hacer una animación desde 0, ya que para esto últimos tendremos que recurrir también algunos programas adicionales como HxD y Gifmoviegear (o cualquier otro programa de creación de imágenes gif).

Primero recreare los pasos que seguí para hacer la animación personalizada del Berseker, la cual tiene como base la animación utilizada por Hawkeye. Así que lo primero por hacer es abrir FEditor Adv, cargar el rom de FE7, luego ir a “Class animation Manager” y buscar la animación en cuestión.

Imagen

Lo normal es simplemente proceder a extraer con el boton “Dump…”, pero como también nos puede y va a interesar saber como se compone cada fotograma tendremos que marcar también la opción “Include Frames” (podríamos llegar a necesitarlo). Una vez que extraigamos todas las animaciones que necesitamos podemos cerrar el programa ya no lo ocuparemos otra vez hasta que terminemos.

Ahora se viene la parte candente, cuando extraigamos las animaciones nos van a quedar un archivo, un .dmp, una carpeta llena de fotogramas de la animación (si marcaron la opción que os dije) y varias hojas de imágenes que contienen los sprites comprimidos, estos últimos son los que nos interesan y vamos a abrir en Usenti para su modificación. ¡Por nada del mundo se les ocurra intentar modificar esas hojas usando otro programa como paint o alguna tontería así! En un momento procederé a explicarles por que.

Imagen

Fijaos bien en lo que e encerrado dentro de un cuadro rojo en la imagen, eso que veis allí son los colores que posee la hoja de sprites, eso colores NO se deben alterar o de lo contrario cuando traten de insertar la animación nuevamente solo les dará error. Digamos que el programa de FEditor es tan delicado que si al momento de extraer una animación y luego reinsertarla nota el más mínimo cambio en la gama de colores ya no la acepta. De modo que cualquier edición que hagamos deberá ser usando uno de los 15 colores disponibles en la paleta original (y digo 15 por que el fondo no cuenta al volverse transparente).

Lo encerrado en el cuadrito naranja es nuevamente la paleta de colores (que igual podemos ver la parte derecha de la ventana del programa y deberían ser solo 16, si aparecen mas entonces no hiciste caso a mi advertencia).

Y lo puesto dentro del circulo verde es el botón de “Tile grid” que recomiendo tener activo en todo momento ya que estas hojas de sprites al ser imágenes comprimidas son como un rompecabezas, y esas líneas formando cuadros azules nos ayudan a poder ver hasta donde llegan y dividen esas “piezas”, no creo que nadie quiera que su animación tenga gráficos basura y pixeles fuera de lugar de modo que lo mejor es poder ver y respetar esas líneas.

Ya solo resta hacer las modificaciones que deseemos, y al terminar de cambiar pixeles a todas las hojas de sprite debería tener una “evolución” más o menos así.

Imagen

Notese que he usado solo los colores disponibles, y para evitar posibles pixeles fuera de lugar e mantenido un limite en las proporciones par estar al margen de las líneas azules.

No les voy a mentir señores, realizar modificaciones a una animación bajo este método puede ser muy complicado y tedioso, o muy sencillo y rápido, todo va a depender de que tan grande sea la animación (esta del Berseker por ejemplo, solo son 3 hojas comprimidas, pero hay otras animaciones que poseen hasta 8), y de la cantidad de detalles y modificando que planeen hacer. Pero a su vez es la que a mi parecer da los resultados más satisfactorios (al menos cuando lo que quieres es únicamente hacer una animación nueva, pero usando como base otra ya existente), y es que entre los pros y contra de este método tenemos.

Pros:
- Nuestra animación tendrá la misma velocidad y fluidez de fotogramas que la animación original.
- El juego podrá asignarle automáticamente colores a nuestra animación cuando se use en unidades genéricas (es decir que se visualizaran perfectamente en azul, verde o rojo).
- Algunas animaciones poseen efectos visuales que son muy difíciles de replicar, por lo que este método es el más confiable para conservar dichos efectos (esto va de la mano con el primer punto). Por mencionar un par de ejemplos: La animación del Campeón cuando lanza y hace girar el escudo es un efecto dentro la animación, y la única forma de replicarla seria haciendo frame por frame esa parte; Otro ejemplo es el efecto de “parpadeo” que tiene el asesino cuando activa su habilidad, (hasta la fecha, no he encontrado a quien haya podido replicar ese efecto al hacer la animación del asesino desde 0).

Contras:
- Solo nos permite cambiar la parte estética, es decir que no podemos cambiar su paleta de colores genérica (aunque se pueden modificar dentro de la rom con HxD, pero esto ya es aparte), tampoco cambiar los efectos de sonido y visuales, y debido a que las hoja de sprite son imágenes comprimidas también debemos lidiar con cierto “limite de espacio” cuando agregamos detalles.
- Requiere de mucha paciencia y buen ojo debido a que trabajar con las imágenes comprimidas es como ver un rompecabezas, en mas de una oportunidad nos hará falta revisar la secuencia de frames para ver a que parte corresponde cada pieza (por esta razón es que recomendé anteriormente tener marcada la opción de incluir frames al extraer la animación en FEditor Adv).
- En resumidas, si queremos una animación mas original y diferente, obviamente este método no es el que indicado.

Ya una vez que terminen de hacer modificaciones en las hojas que componen la animación, solo resta guardar, volverlas a insertar en la rom con el FEditor Adv (de preferencia en un espacio vacio y no sobre-escribiendo), y luego apreciar el resultado final (claro, tampoco olvidéis asignar primero las animaciones nuevas, hombre, no me hagais tener que explicar también como debéis usar el Nightmare para eso).

Un par de muestras para que vean la animación in-game.
SPOILER:

BTW, esa animación de la Warrior no la hice yo, pero puedo asegurarles que fue realizada bajo el mismo método.
SPOILER:

Aquí pueden ver como el juego se encarga perfectamente de cambiar la paleta de colores para las unidades genéricas... y al RNG me trolleandome. -_-u
Mas adelantes explicare como poder hacer una animación desde 0.

Areynor
Recluta
Recluta
Mensajes: 87
Registrado: 09 Nov 2020, 15:42
FE Favorito: Three Houses
Personaje fav.: Dimitri

Mensaje por Areynor »

Y como se haría un recolor?

Areynor
Recluta
Recluta
Mensajes: 87
Registrado: 09 Nov 2020, 15:42
FE Favorito: Three Houses
Personaje fav.: Dimitri

Mensaje por Areynor »

no tengo lo de include frames

Shadeloki
Sabio
Sabio
Mensajes: 748
Registrado: 13 Ene 2016, 01:26

Mensaje por Shadeloki »

Areynor escribió: 28 Nov 2020, 13:10 no tengo lo de include frames
Sino te aparece para marcar esa opción has de tener alguna versión diferente del programa, quizás una muy des-actualizada. (La version que yo tengo pone 20140801.1).

Sobre como re-colorear una animación. Iba a explicarlo como un “dato extra” cuando pusiera el otro método de hacer una animación, pero como va a ser una guía larga mejor lo pongo aparte (además de que aun me llevara tiempo terminar de redactarla).

Antes que nada me gustaría señalar que en lo personal, pienso que los colores genéricos están bien tal cual (con el rojo para enemigos, azul el jugador, verde neutrales, etc. Es lo más básico en estos juegos), por lo que yo no recomendaría cambiarlos ¡a no ser! que sea estrictamente necesario. Y es que las unidades del jugador (y también los jefes enemigos) poseen ya sus propias paletas de colores que se encargan de eso, y solo en casos muy específicos, como las animaciones del “Lord”, el Manakete u otra clase “única”, seria necesario cambiar la propia paleta base de la animación, en lugar de solo asignarle una paleta de colores.

Dicho todo eso, solo voy a realizar esto para cambiar los colores base de mi “Lord” de FE8, ya que en la pantalla de titulo cuando se muestran las clases, aparece en rojo y dorado (la paleta genérica original de la animación), pero mi Lord se supone tiene tonos en azul y plateado.

Lo primero que necesito saber es el nombre de la animación, eso puedo verlo abriendo el rom en FEditor Adv (que en este caso, la que busco seria lorf_sw1).

Luego, necesito conocer el code de su paleta de colores en Hexadecimal (aquí, nos podría ayudar el FE recolor. Esto es opcional, pero conocerlo nos facilitara un poco el trabajo).

5553 FF7F FF6B 1F4B 182A 2E19 B37F 897A 625D FF1B 9E1A 9401 1C01 7608 6F0C A514 (Esta es la paleta original en Hexadecimal)

5553 FF7F FF6B 1F4B 182A 693D B37F 897A 625D 9877 F36E 6949 E568 C450 A340 A514 (Y esta es la paleta de mi lord).

Luego de que tenga estos 2 datos, debo abrir el rom con el HxD para buscar la animación (ir a buscar, cadena de texto y poner lorf_sw1).

Imagen
Lo remarcado es lo que estaba buscando, casi, esto son los punteros de la imágenes comprimidas que componen la animación (y creo que poco mas), ahora debo de tomar los 8 últimos dígitos (que serian 30 EB C0 08) e invertirlos para ir hasta el offset de la animación (me quedaría el offset en C0EB30).

Esos ya son las bases que determinan los colores de la animación (bueno, de solo una de ellas), ya lo único que debo hacer allí es comparar valores hexadecimales e ir cambiándolos, luego de hacer los cambios debidos solo queda guardar y listo. (creí haber echo una screen capture para esta parte, pero parece que la perdí, mira mejor la otra guía que recién acabo de subir sobre como hacer paleta de colores, allí también justo hice lo mismo).

Imagen
Este es el resultado visto desde el FEditor Adv, he de aclarar que aquí solo e cambiado los colores por default que se muestran cuando se inicia la animación del Lord al atacar (izquiera), pero si paso a ver la del Lord cuando esta desarmado (derecha) esa seguirá viéndose con sus colores originales por que es una “animación aparte”, así que debo de repetir todo el proceso realizado en HxD para cambiar sus valores también (por eso siempre digo que es mejor asignar paleta de colores en los personajes).

Shadeloki
Sabio
Sabio
Mensajes: 748
Registrado: 13 Ene 2016, 01:26

Mensaje por Shadeloki »

Bueno, esta segunda parte tardo más tiempo de lo debido, en una parte por pereza mia, y por otra porque algunos pasos los recuerdo de forma medio vaga, pero al buscar el tema que tenia de referencia no logre encontrarlo (nose si desapareció o que le paso). En fin, no quisiera que el segundo método quede en el limbo así que intentare arreglármelas para explicar cómo hacer una animación desde 0, aunque para este caso ejemplo voy a hacer trampa ya que voy a usar una animación ya existente y modificarla, pero técnicamente el proceso es igual.

Imagen
Primero que nada necesitamos saber cómo está estructurada la script de una animación antes de proceder a realizar la nuestra, así que para tener una referencia voy a proceder a extraer una o varias animaciones usando FEditor Adv, solo que esta vez voy a marcar esa casilla que pone “include frames”.

Imagen
Esto me dará no solo la animación sino también una carpeta con todos los fotogramas de movimiento y el script en un blog de notas (adicional y dependiendo de la versión del FEditor también puede generar varias imágenes gif animadas, pero no son tan importantes),

Imagen
Recomiendo hacer una carpeta nueva por cada animación para tener todo más ordenado.

En este caso, yo e extraído la animación del Bardo de FE6 para crear a mi propio Bardo en FE8, solo que el mío ¡si podrá atacar! (y sin congelar el juego, pero me estoy adelantando).

Si abro el blog de nota veré lo siguiente.
SPOILER:

Código: Seleccionar todo

//begin Mode 1
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C44
3  p- frame009.png
6  p- frame010.png
11  p- frame011.png
6  p- frame012.png
9  p- frame013.png
8  p- frame014.png
8  p- frame015.png
7  p- frame016.png
C05
5  p- frame017.png
C01
C48
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
16  p- frame017.png
6  p- frame020.png
C06
70  p- frame021.png
~~~
//begin Mode 2
C03
C07
1  p- frame024.png
5  p- frame024.png
5  p- frame024.png
4  p- frame024.png
3  p- frame024.png
3  p- frame024.png
6  p- frame024.png
7  p- frame024.png
5  p- frame024.png
C44
3  p- frame024.png
6  p- frame024.png
11  p- frame024.png
6  p- frame024.png
9  p- frame024.png
8  p- frame024.png
8  p- frame024.png
7  p- frame024.png
C05
5  p- frame025.png
C01
C48
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
16  p- frame025.png
6  p- frame025.png
C06
70  p- frame025.png
~~~
//begin Mode 3
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C44
3  p- frame009.png
6  p- frame010.png
11  p- frame011.png
6  p- frame012.png
9  p- frame013.png
8  p- frame014.png
8  p- frame015.png
7  p- frame016.png
C05
5  p- frame017.png
C01
C48
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
16  p- frame017.png
6  p- frame020.png
C06
70  p- frame021.png
~~~
//begin Mode 4
C03
C07
1  p- frame024.png
5  p- frame024.png
5  p- frame024.png
4  p- frame024.png
3  p- frame024.png
3  p- frame024.png
6  p- frame024.png
7  p- frame024.png
5  p- frame024.png
C44
3  p- frame024.png
6  p- frame024.png
11  p- frame024.png
6  p- frame024.png
9  p- frame024.png
8  p- frame024.png
8  p- frame024.png
7  p- frame024.png
C05
5  p- frame025.png
C01
C48
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
16  p- frame025.png
6  p- frame025.png
C06
70  p- frame025.png
~~~
//begin Mode 5
C03
C07
1  p- frame024.png
5  p- frame024.png
5  p- frame024.png
4  p- frame024.png
3  p- frame024.png
3  p- frame024.png
6  p- frame024.png
7  p- frame024.png
5  p- frame024.png
C44
3  p- frame024.png
6  p- frame024.png
11  p- frame024.png
6  p- frame024.png
9  p- frame024.png
8  p- frame024.png
8  p- frame024.png
7  p- frame024.png
C05
5  p- frame025.png
C01
C48
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
16  p- frame025.png
6  p- frame025.png
C06
70  p- frame025.png
~~~
//begin Mode 6
C03
C07
1  p- frame024.png
5  p- frame024.png
5  p- frame024.png
4  p- frame024.png
3  p- frame024.png
3  p- frame024.png
6  p- frame024.png
7  p- frame024.png
5  p- frame024.png
C44
3  p- frame024.png
6  p- frame024.png
11  p- frame024.png
6  p- frame024.png
9  p- frame024.png
8  p- frame024.png
8  p- frame024.png
7  p- frame024.png
C05
5  p- frame025.png
C01
C48
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
5  p- frame025.png
6  p- frame025.png
16  p- frame025.png
6  p- frame025.png
C06
70  p- frame025.png
~~~
//begin Mode 7
C02
1  p- frame000.png
C0E
3  p- frame022.png
1  p- frame023.png
C01
3  p- frame022.png
C0D
~~~
//begin Mode 8
C02
1  p- frame000.png
C0E
3  p- frame022.png
1  p- frame023.png
C01
3  p- frame022.png
C0D
~~~
//begin Mode 9
1  p- frame000.png
C01
~~~
//begin Mode 10
1  p- frame000.png
C01
~~~
//begin Mode 11
1  p- frame000.png
C01
~~~
//begin Mode 12
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C44
3  p- frame009.png
6  p- frame010.png
11  p- frame011.png
6  p- frame012.png
9  p- frame013.png
8  p- frame014.png
8  p- frame015.png
7  p- frame016.png
C05
5  p- frame017.png
C01
C48
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
5  p- frame018.png
6  p- frame019.png
16  p- frame017.png
6  p- frame020.png
C06
70  p- frame021.png
~~~
//End of animation script
Esto es el script de esta animación, procediendo a explicar más o menos cada cosa:

- Para empezar tenemos la palabra “begin mode” seguido de algún numero, todas y cada una de ellas representan diferentes secuencias de animación para diferentes condiciones. Si no mal recuerdo cada una representa:

Mode 1: Es ataque normal.

Mode 3: Es ataque critico.

Mode 5: Es ataque mágico (o más bien a distancia)

Mode 6: Lo mismo del anterior, pero critico.

Mode 7 y 8: Ambos son evasión, solo que el primero es de cerca y el segundo de lejos.

Mode 9, 10 y 11: Son espera (no estoy seguro de por qué eran 3 y que correspondían cada una, pero son de cuando no puedes contraatacar y cosas así que no te mueves durante la animación).

Mode 12: Es de cuando atacas pero fallas.

PD: Los “mode” 2 y 4 no se utilizan pero por alguna razón están allí, aparentemente son rutinas de animación que se deberían de utilizar cuando se ataca a mele con magia y a distancia con magia respectivamente, pero los magos ocupan igual los “mode” 1 y 5. Es recomendable borrar esas dos rutinas para evitar problemas con nuestra animación (a no ser que realmente planeemos utilizarlas en algún mod con clases mixtas o algo).

- Los “p- frame000.png”, “p- frame001.png” son los fotogramas que posee la animación (se aprecia en la tercera imagen) y el numero a su izquierda representa su velocidad/duración (supongo que en fps). Lo recomendable es poner números entre 3 y 8 para que la animación no se vea demasiado acelerada.

PD: por cierto, en este caso en particular no se nota por que los bardos no atacaban, pero si comparásemos los “mode” 1 y 3 de un sabio o cualquier otra clase veríamos que la secuencia de fotogramas/duración es diferente. Y si miramos los “mode” 2 y 4 las imágenes están prácticamente en blanco.

- Ahora, esas líneas que ponen “C03” “C07” (y en general cualquier línea que inicie en “C”) son comandos especiales, la mayoría de ellos necesarios para que la animación funcione, mientras que otros son para añadir efectos y sonidos.

En este caso el “C03” y “C07” son las sentencias de inicio de la animación.

“C05” es para llamar a la animación asociada al hechizo del arma (esta solo se aplica a magias y armas a distancia como las jabalinas).

“C01” es para decirle a la animación que se “espere” hasta que termine el cálculo de daño, C06 es para hacer que la pantalla se mueva hacia el enemigo antes del golpe (esto se ve principalmente en las animaciones a distancia).

Y “C0D” es para proceder a terminar la secuencia de la animación y pasar a la siguiente. Esta última si se fijan NO aparece en la script del bardo por ninguna parte, y por consecuencia el juego no sabe cómo proceder luego de que el bardo (o la Dancer igualmente) ataquen, aunque esto solo congela el juego si se da el caso de que se produzca un ataque doble ya que normalmente tras terminar la animación el juego lo que hace es “reiniciar” la secuencia, y sin ese comando no se da ese reinicio. Muy seguramente pase lo mismo si intento forzar a los clérigos a atacar ya que sus animaciones están hechas solo para “realizar una acción” y terminar la secuencia sin hacer reinicios o bucles.

El resto son efectos de sonidos o visuales como los destellos al golpear, aunque para saber más a detalle sobre ellos recomendaría buscar más información según el juego para el que estés haciendo la animación por qué no todos los valores son los mismo (excepto por los que indique arriba).
Para que se entienda mejor, los comandos “C44” y “C48” corresponden al sonido del Arpa y el canto del pajarito respectivamente, pero esos sonidos solo existen dentro de la data de FE6, en cambio en FE7 y FE8 o están vacios o tienen asignado un audio diferente, así que por sentido común, tengo que removerlos o cambiarlos por otro valor para que no me produzca anomalías (generalmente provocan gliches de audio).

(Esta es la info que tengo sobre cada valor en FE8, si hacen una animación para meterla en FE7 algunos comandos de sonido serán diferentes por obvias razones).
SPOILER:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lista de Comandos
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PD: solo cambia el "0x" por "C"

Código: Seleccionar todo

0x00 Nada
0x01 Wait for HP to deplete (freezes if no HP depletion is occurring/has occurred)
   (should be used even in missed attack) (should end standing animations)
0x02 Start of dodge
0x03 Start attack animation; should be followed by 0x07; should head "dodged attack"
   (melee that will miss)
0x04 Prepare HP depletion routine; needed to animate return to standing frame after hit
0x05 Call spell associated with equipped weapon
0x06 Begin opponent's turn after hit
0x07 Start attack animation; should be preceeded by 0x03
0x08 Critical hit
0x09 Critical hit
0x0A Critical hit
0x0B Critical hit
0x0C Critical hit
0x0D End of dodge animation (should have an 0x01 command before it and after a preceding 0x0E)
   (should be used just before 00 00 00 80 and should end missed attack as well)
0x0E Start of dodging frames (should go after standing frame and before dodging animation)
0x0F Unused; does nothing
0x10 Unused; does nothing
0x11 Unused; does nothing
0x12 Unused; does nothing
0x13 ? (ranged attack - hand axe for Hector)
0x14 Heavy vibration of screen
0x15 Slight vibration of screen
0x16 Unused; does nothing
0x17 Unused; does nothing
0x18 Use this instead of 0x02 to dodge toward the foreground instead of toward the background
0x19 Play bow pulling SFE
0x1A Normal hit
0x1B Play quick "heavy step" SFE
0x1C Play light horse stepping SFE; pitch decreases
0x1D Play light horse stepping SFE; pitch increases
0x1E Similar to 0x1D; a bit louder
0x1F Play hit SFE (sounds like Eliwood with sword's hit)
   (Will be normal hit sound during normal attack and critical hit sound during critical attack)
0x20 Play hit SFE (sounds like Knight Lord with Durandal's hit) (see previous note)
0x21 Play hit SFE (sounds like Knight Lord with sword's hit) (see previous note)
0x22 Play short sword swinging SFE
0x23 Play shorter sword swinging SFE
0x24 Play sword slashing air SFE
0x25 Play wing flap SFE
0x26 Sword toss; VERY hardcoded (uses 32x32 at linear sheet index 0x1C from current sheet)
0x27 Shield toss; while this command is used for shield tossing, it is actually just a copy of command 0x26
0x28 Play electrical charging SFE (Used by Shamans)
0x29 Kills BGM
0x2A Kills BGM
0x2B Play armored unit "leaping" SFE
0x2C Show fire (that envelopes Sealed Sword; contains all Sealed Sword fire frames) animation
   Slashing frames missing in FE 7/8!
0x2D ? (Assassin critical) (Lethality activator that is dependent on other commands?)
0x2E Show sage's normal magic rune drawing animation
0x2F Show sage's critical magic rune drawing animation
0x30 Show dirt kicking (as from dashing forward) animation
0x31 Show small dirt wave moving forward animation (starts about mid screen)
0x32 Show medium sized dirt wave moving backward animation (starts from feet of attacker)
0x33 Play battle cry SFE (REALLY stupid)
0x34 Play heavy stepping SFE
0x35 Play longer wing flapping SFE
0x36 Play sword unsheathing SFE
0x37 Play sword clicking SFE
0x38 Play heavy spear spinning SFE
0x39 Pauses the attacker, makes them flash white and makes the screen flash white
   Essentially makes it look as though the attacker was hit, but without blue sparks
0x3A Play dancer magic release SFE
0x3B Play bard song SFE
0x3C Play sword "whooshing" SFE (done by Nomads; sounds like wing flap)
0x3D Show Nergal's dark aura animation - FE 7 only!
0x3E Play burning SFE
0x3F Play alternate arrow firing SFE?
0x40 Kills BGM
0x41 Play short axe swinging SFE
0x42 Play long axe swinging SFE
0x43 Play weapon stance SFE (Clicking noise)
0x44 Play short "light emission" SFE (I seriously don't know a better way to describe this)
0x45 Play horse neighing SFE
0x46 Play dropped axe crashing onto ground SFE
0x47 Show cape flowing animation; VERY hardcoded
0x48 Kills BGM
0x49 Play sage's magic firing SFE
0x4A Play valkyrie's magic charging SFE (Pretty much the same as the shaman's)
0x4B Play monk's magic casting SFE
0x4C Play Athos' magic casting SFE
0x4D Play Athos' critical glint SFE
0x4E Show dirt wave (as from horse kicking forward from ground) animation
0x4F Play druid critical charging SFE
0x50 ? (Nergal's critical uses this)
0x51 Show brief white flash animation
0x52 See command 0x2D
0x53 through 0xFF – Unused
Sabiendo esto, lo que voy hacer ahora para crear mi propia animación será cambiar, agregar y/o modificar las imágenes en la carpeta, esto deben hacerlo con Usenti. (En mi caso, yo he removido al pajarito e hice algunos fotogramas adicionales para la variante de cuando hace crítico). Pueden guardar cada fotograma con el nombre que quieran o solo usar números, lo importante es que sepan identificarlos para que les sea fácil de meter en la script.

Hablando de la script, ya que estamos, aparte de agregar las líneas de los nuevos fotogramas, también hay que borrar las rutinas de los “Mode” 2 y 4 (pues ya mencione antes que no se ocupan, o al menos yo no los voy a ocupar) y cambiar los comandos de los sonidos que no me sirven por que no existen en FE8, y claro, agregar el comando “C0D” que falta para que todo funcione bien.

En resultado ahora la carpeta y mi script lucen así. (Pueden comparar con el spoiler de más arriba).
Imagen
SPOILER:

Código: Seleccionar todo

//begin Mode 1
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C3A
3  p- frame009.png
6  p- frame010.png
11  p- frame011.png
6  p- frame012.png
9  p- frame013.png
8  p- frame014.png
8  p- frame015.png
7  p- frame016.png
C05
5  p- frame017.png
C01
6  p- frame020.png
C06
7  p- frame021.png
C0D
~~~
//begin Mode 3
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C3A
4  p- C001.png
4  p- C002.png
4  p- C003.png
4  p- C004.png
4  p- C005.png
4  p- C006.png
4  p- C007.png
4  p- C008.png
4  p- C009.png
4  p- C010.png
4  p- C011.png
4  p- C012.png
4  p- C013.png
4  p- C014.png
4  p- C015.png
4  p- C016.png
4  p- C017.png
C05
5  p- frame017.png
C01
6  p- frame020.png
C06
7  p- frame021.png
C0D
~~~
//begin Mode 5
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C3A
3  p- frame009.png
6  p- frame010.png
11  p- frame011.png
6  p- frame012.png
9  p- frame013.png
8  p- frame014.png
8  p- frame015.png
7  p- frame016.png
C05
5  p- frame017.png
C01
6  p- frame020.png
C06
7  p- frame021.png
C0D
~~~
//begin Mode 6
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C3A
4  p- C001.png
4  p- C002.png
4  p- C003.png
4  p- C004.png
4  p- C005.png
4  p- C006.png
4  p- C007.png
4  p- C008.png
4  p- C009.png
4  p- C010.png
4  p- C011.png
4  p- C012.png
4  p- C013.png
4  p- C014.png
4  p- C015.png
4  p- C016.png
4  p- C017.png
C05
5  p- frame017.png
C01
6  p- frame020.png
C06
7  p- frame021.png
C0D
~~~
//begin Mode 7
C02
1  p- frame000.png
C0E
3  p- frame022.png
1  p- frame023.png
C01
3  p- frame022.png
C0D
~~~
//begin Mode 8
C02
1  p- frame000.png
C0E
3  p- frame022.png
1  p- frame023.png
C01
3  p- frame022.png
C0D
~~~
//begin Mode 9
1  p- frame000.png
C01
~~~
//begin Mode 10
1  p- frame000.png
C01
~~~
//begin Mode 11
1  p- frame000.png
C01
~~~
//begin Mode 12
C03
C07
1  p- frame000.png
5  p- frame001.png
5  p- frame002.png
4  p- frame003.png
3  p- frame004.png
3  p- frame005.png
6  p- frame006.png
7  p- frame007.png
5  p- frame008.png
C3A
3  p- frame009.png
6  p- frame010.png
11  p- frame011.png
6  p- frame012.png
9  p- frame013.png
8  p- frame014.png
8  p- frame015.png
7  p- frame016.png
C05
5  p- frame017.png
C01
4  p- frame020.png
C06
4  p- frame021.png
C0D
~~~
//End of animation script
Ya con el script y las imágenes listas solo nos queda abrir el FEditor Adv (es necesario cargar alguna rom de FE), ir a la pestaña de “tools” y “Class Animation creator”).

Imagen
Una vez en esta ventana solo tendremos que marcar el botón de “load from script” y buscar el blog de notas con la info de nuestra nueva animación y cargarla, el programa pasara a leer la información del mismo y si hicimos todo bien ¡Felicidades! Has terminado con éxito tu animación, solo ponle algún nombre y elige donde guardarla. (Pero si por el contrario tira error, fíjate bien en que tipo de error te marca para corregirlo y luego de eso toca el botón "Reset Animation" y vuelve a intentar cargar la script).

Ojo, que esto no introduce la animación de una vez en la rom, solo crea su data y comprime las imágenes, ya luego tu veras en que rom las usas.

El resultado final.
SPOILER:

Cabe señalar, que este proceso entre más grande sea la animación que hagan, mas tedioso va a ser (porque va a requerir más edición de fotogramas), pero definitivamente es el que deja los resultados más satisfactorios si se realiza bien.

El único punto negativo que podría señalar de este método es que no utiliza la variantes de color para las unidades genéricas (osea, no rojo, verde y azul, todos se van a ver del mismo color). Y la única forma solucionar eso es cambiar el puntero de los colores y escribir en su lugar el puntero de otra animación dentro del juego. (Pero, tienen que coincidir la info del orden de sus paletas de colores para que no se arruine tampoco). Habría que hacer más o menos lo que explique antes sobre cómo hacer un recolor.

Como una pequeña recomendación, busquen algún programa como Gif Movie Gear (o cualquier otro que permita hacer imágenes gif) para que puedan comprobar la fluidez de movimiento cuando editen los fotograma, no hay más horrible que una animación temblorosa.

Areynor
Recluta
Recluta
Mensajes: 87
Registrado: 09 Nov 2020, 15:42
FE Favorito: Three Houses
Personaje fav.: Dimitri

Mensaje por Areynor »

No es mejor exportar directamente el gif o una plantilla manejable con FEBuilder?

Shadeloki
Sabio
Sabio
Mensajes: 748
Registrado: 13 Ene 2016, 01:26

Mensaje por Shadeloki »

Areynor escribió: 15 May 2021, 10:13 No es mejor exportar directamente el gif o una plantilla manejable con FEBuilder?
probablemente, nose. Nunca e utilizado ni e indagado a fondo en todas las funciones de FEBouilder asi que nose que se crean animaciones allí. Igual indiferentemente del programa no deja de ser recomendable usar algun editor de imagenes gif para poder hacer bien la secuencia de fotogramas antes de pasarlo a FEBouilder.

Stafy y Starly
Sabio
Sabio
Mensajes: 730
Registrado: 28 Dic 2019, 20:48
FE Favorito: Thracia 776
Personaje fav.: Eyvel- Ike- Sety

Mensaje por Stafy y Starly »

Hace 2 años intentaba crear animaciones para que Lalum pueda usar espadas, y no lo sabía, espero poder hacerlo ahora.

Shadeloki
Sabio
Sabio
Mensajes: 748
Registrado: 13 Ene 2016, 01:26

Mensaje por Shadeloki »

Stafy y Starly escribió: 29 May 2021, 13:16 Hace 2 años intentaba crear animaciones para que Lalum pueda usar espadas, y no lo sabía, espero poder hacerlo ahora.
Si te surge algún problema no dudes en preguntar por acá y tratare de responder en la brevedad que me sea posible.

Por ahora el mejor consejo que te puedo dar es que extraigas la animación de algún usuario de espadas (el Mirmidon, el Mercenario, cualquiera que use espadas vale) para que puedas guiarte de su scrip y se te haga mas fácil armar el tuyo. (Yo por ejemplo para hacer al Bardo me ayude orientando con la animación de Mago).

Responder