Introduction to Animation Modding - 0ceal0t/Dalamud-VFXEditor GitHub Wiki
Before You Start
- Do NOT modify animations which move your character (dashes, jumps, etc.) or mod them onto abilities which don't have them, as this is potentially detectable
- Be careful about modifying large
.pap
files likechara/human/c0101/animation/a0001/bt_common/resident/action.pap
. They are large files where the devs dump dozens of animations for every job. Do not replace this file unless you want to crash your game. Only modify it
Terminology
.tmb
/Timelines - these trigger animations, VFXs, and sounds. This is what is actually referenced when you activate an ability..pap
/Animations - these are triggered by.tmb
files, and contain that actual bone movements which your character executes. If you want to edit these in programs such as 3DS Max, see AnimAssist- "Modifying a file" - by this, I mean changing a single aspect of a file, while leaving it otherwise intact. For example, making the sound of "Holy" trigger a bit later
- "Replacing a file" - by this, I mean completely replacing an existing file with another one, such as replacing the "fire" animation with that of "blizzard"
.pap
Files and Races
Some actions have race-specific animations. For example, Hypercharge has a different animation for Lalafell than other races. Keep in mind that you may have to replace these as well.
When referring to "generic" animations, I mean the ones tagged as "Midlander Male," since this is considered the default.
If you are replacing, for example, Bloodspiller with Fell Cleave and want to make sure it works on Lalafell, there are several possible situations that could arise:
- Neither Bloodspiller nor Fell Cleave have Lalafell-specific animations. In this case, simply replace the generic animations.
- Both Bloodspiller and Fell Cleave have Lalafell-specific animations. In this case, make sure to swap those two.
- Bloodspiller has a Lalafell-specific animation, while Fell Cleave doesn't. In this case, replace the Bloodspiller Lalafell-specific animation with the Fell Cleave generic one.
- Bloodspiller does not have a Lalafell-specific animation, while Fell Cleave does. This is the worst-case scenario, and it may be impossible to make the animation work properly. Your best bet is to replace the Bloodspiller generic animation with the Fell Cleave generic one, and hope that it works.
.pap
Ids
Most of the issues which you will run into will probably be related to .pap
ids. Each animation has a name which starts with cbbm_
. Only certain .pap
files get loaded per job, so therefore only certain animations will be available to be triggered through a .tmb
file.
For example, you cannot trigger the Bloodspiller animation directly from the Fell Cleave timeline, since the Bloodspiller .pap
is not loaded when you are on Warrior. Therefore, you will need to move that animation onto a file which is loaded while on Warrior (the Fell Cleave .pap
is the most obvious choice).
NOTE:
action.pap
is loaded for every job
Also note that multiple animations across different jobs may have the same animation Id. For example, Heavy Swing and Hard Slash (this is just an example, this is not actually true) might have the same id cbbm_ws_01
. This is ok, since they are never loaded together. However, if you were to replace the Souleater animation with Heavy Swing, there may be 2 animations with the id cbbm_ws_01
(Hard Slash and Souleater), which can cause issues.
If this is the case, simply change the names of one of the animations (such as to cbbm_ws_01_2
). When changing an animation name, it needs to be changed in 3 Places:
- The "Name" parameter in the
.pap
file - The "Path" parameter of
Animation - PAP Only (C009)
in the.pap
file - The "Path" parameter of
Animation (C010)
in the.tmb
file