Program to create animation strips and GIFs of unit sprites for the mobile game Brave Frontier. (Also compatible with Final Fantasy Brave Exvius sprites as of v1.2)
- Can create an animation strip or GIF for 1 unit or multiple units
- This program can output different versions of the same unit in GIF form.
- the three animations of a unit (idle, attack, and move) with opacity values
- the three animations of a unit (idle, attack, and move) without opacity values
- the idle animation of a unit with a minimum height of 140px for the BF wiki with opacity values
- the idle animation of a unit with a minimum height of 140px for the BF wiki without opacity values
- the three animations of a unit (idle, attack, and move) from an animation strip
- the idle animation of a unit with a minimum height of 140px for the BF wiki from an animation strip
- Note that the suffixes of the files will tell you which option you chose
unit_<unitID>_<type>_opac.gif
for one of the three animations with opacity values- replace
opac
withnopac
to get the name of the file with no opacity values - add
strip
to the end to get the name of the file created from an animation strip - same applies to
unit_ills_anime_unitID_opac.gif
for a wiki animation with opacity values
- This program also outputs animation strips, which are basically images where the frames are laid out horizontally; one strip represents one full animation (i.e. idle, move, atk).
- As of v2.0, each frame can be saved as a strip of individual parts (when not creating from a strip).
What this program does is it takes a .txt file (which I'll refer to as list.txt
) and uses it to reference the locations of the source files and the location of where the results will be saved. Below are examples of the list.txt and the file-tree for accessing and saving files.
list.txt
would contain:
10011
Note: there should only be 1 ID per line
The file-tree accessed from this list.txt would look like this:
/GIFs/
-/output/
--[GIFs for each unit would be saved here]
--/frames/
---[frames for each unit would be saved here]
/Units/
-[Folders are accessed by the unit ID]
-/10011/
--unit_atk_cgs_10011.csv [contains info on the order of the frames for the attack animation]
--unit_idle_cgs_10011.csv [contains info on the order of the frames for the idle animation]
--unit_move_cgs_10011.csv [contains info on the order of the frames for the move animation]
--unit_cgg_10011.csv [contains info on creating each frame]
--unit_anime_10011.png [the spritesheet]
--unit_atk_10011.png [the attack animation in strip form]
--unit_idle_10011.png [the idle animation in strip form]
--unit_move_10011.png [the move animation in strip form]
list.txt
You can view what the file tree would look like in this file.
To get the spritesheet and CSV files, you would have to download them from the Global or JP server; to get these files for multiple units, a combination of wget
and a batch file would be best. The atk, idle, and move strips are generated by the program itself as of v1.1 (June 12, 2016 update).
As of v2.0, the naming convention of the strips have changed to include _opac
or _nopac
at the end, since they can now be generated with either.
Download the BFFrameAnimator.jar in the root folder (or compile the classes in the /bin/ folder into a jar file with BFAnimationMenu as the main class) to somewhere on your computer. After that, run it through the command prompt with java -jar BFFrameAnimator.jar
, and follow the onscreen prompts. Be sure that the folders of the file tree (shown above) are already made by the time you run the program, or you may encounter errors. Also ensure that nothing in those folders are being used by another program; you may encounter file opening/saving errors if the file tree isn't prepared correctly.
As of v2.0, you can use the command java -jar BFFrameAnimator.jar -help
to view the available command line options to use. For any options that require a file path, use the following format (without the brackets): ["C:\\folder1\\folder2\\Units\\10011"]
(this would be the path for unit 10011).
A log file will be saved into the directory for the GIFs assuming that the user get's past the stage to select a list.txt file.
- Thanks to Deathmax for telling me what each value in the CSV files correspond to
- This program uses the following to function. Credits to them for their portions of my program.
- A modified and stripped-down version of bookClasses, which is licensed under a Creative Commons Attribution 3.0 US License, to handle some image operations and file operations
- The Java class AnimatedGifEncoder to handle GIF creation from one or more image files.
- There are also code snippets from the Internet that I may adapt to use in my program. Those sources can be found near their relative blocks of code.
The source code created by me (and not mentioned in the Credits/Sources section) is licensed under a Creative Commons Attribution 3.0 United States License. By using this code, you agree to the terms stated in the Creative Commons Attribution 3.0 United States License.
This project was started on December 21, 2015, my 18th birthday. It's gone through many, many revisions between then and the first time I put it on Github (May, 7, 2016). I'm sure that it will be more helpful here for others to view and use.