Creating characters in FFEdit

Creating characters in FFEdit is somewhat less friendly than using the in-game character screen, but is necessary for creating permanent SHAPESHIFTER associations for danger room or skirmish, adding new minion types to the PUPPET MASTER attribute, or for creating your own mods.

The following is a step-by-step guide on how to use FFEdit for this.

The basics

Fire up FFEdit.
I'll start by having a look at Minute Man, since he's a familiar character to most of us.
The data for a character is spread across four tabs, the Characters tab contains data on the characters powers and RPG attributes, the Templates tab contains data on the characters mesh and physical properties as a game object, and the Powers tab contains data on the character's powers. Finally, active and passive defence powers are listed in the Defences tab.

The Characters Tab

Go to the characters tab. Select 'minute_man' from the list on the left to view MM's data.
WARNING: When you're making a character, if you wish to check another character in the database, always press the Save button first or you'll lose any changes you've made.
At the top you can see his RPG stats: Strength, Speed, Endurance, Energy and Agility as listed in the first screen of the in-game character screen. Each of these is a drop list with descriptive names for the ten levels that can be set.

To the left are TierA, TierB and Start Attr. These can range from 0 to 5, and represent the number of attributes and powers in each tier which the character starts with in a campaign or danger room session. If you're creating a character for use in the Danger Room, set all of these to 5, so that all powers are available.

Below that is Speech ID. This is a two character code used to identify the in-game speeh the character will use, set on the third screen in the in-game character screen. When creating a new character, have a look at the FF campaign characters for comparison to get the codes they use (e.g. man_o_war has MO, to distinguish him from the other MW, Microwave)

The campaign only box is checked for character who do NOT appear in the character creation screen under built-ins. Note that minute_man is campaign only, and that a separate character minute_man_extra is the one you actually see if you choose to create a custom based on him. The difference is that minute_man_extra has ALL powers immediately available.

Cutscene base: ignore this.

AI should always be set to CGenericHero for player controllable characters. For puppet master minions, read the AI doc that comes with FFEdit.

To the left below AI is the attribute box, containing a list of all available attributes and those that the character has below. To add an attribute, select it in the top box and press the down arrow button, the new attribute will appear at the end of the characters list. To remove an attribute, select it in the character's list and press the up arrow. As usual, up to 5 attributes may be bought for the character. (And remember to put tempform in if you need to - this is necessary to change back.)
Some of the FFX attributes (and original ones) have slightly odd names - if you get confused open up strings.txt and have a look. The names of attributes are encoded like this:
ATTRIB_SUPERHEALER_01, regenerative
This means the attribute referred to as 'superhealer' in FFEdit has the name 'regenerative' in the in-game UI. Other notably difficult pairs are:
telepathy = enhanced senses
metashield = energy shield
sensitive = cosmic awareness
alkali = neutralise
(While you're at it have a look for anything beginning with attrib. There's some interesting ones in there thatnever made it into the final game. The FFX ones are at the top, the Irrational ones are all mixed in together.)

To the right is the movement box. Always leave the radius as one, and the allowed and preffered terrain types should contain all elements highlighted in blue, or your character may be unable to move over certain terrain types.

Finally, the Powers box lists the two power tiers which your character will have. Each box can hold up to 5 powers, all of which are listed in the box above. The details for each power are listed in the Powers tab. Use the up and down arrows as for attributes to add and remove powers.
Be warned, that the list of powers is pretty long!

The Templates Tab

The templates tab contains the common object descriptions used by all game objects, from characters, vehicles, props to powerups! This is a massively long list, you can screen out characters only by clicking the Character radio button below.

A built-in character requires a template of the same name as the name used in the Characters tab, so go to 'minute-man' once again, and we'll see his template stats on the left.


Class describes what type of object this is. Characters have the following classes: GAME_OBJ_HERO, GAME_OBJ_VILLAIN, GAME_OBJ_POLICE, GAME_OBJ_MINION and GAME_OBJ_CIVILIAN. For a player controlled character, always select GAME_OBJ_HERO (to go with the CGenericHero AI on the characters tab); for a PUPPETMASTER minion select GAME_OBJ_POLICE.

Material determines base resistances, as in the character editor. Note theres a few extras in here:- Concrete, cloth and air. Feel free to mess around with them.

Example NIF contains a path to the character's mesh, and can be browsed for using the ... button. All mesh paths are relative to the Freedom Force/Data/Art folder, and so should start with library/characters for built-in meshes or custom_characters for custom meshes.

In the attributes box there are various game statistics. For a character, you typically just need the three listed: mass gives the characters mass in kg, elasticity determines how bouncy the character is from 0 to 100, and pickupDistance determines the distance from the characters centre that a picked up object sits. (compare with other character templates with the same mesh if in doubt, 2 is about normal).

Under the Optional arguments box, just use Skin for characters. This should be blank to use the standard skin or have the name of the folder within the character's mesh's skins folder.

The Powers tab

Having a quick look back at Minute Man's character tab, we see his first power in tier A is listed as minute Patriot Smash. This is his Smash ability
Flicking to the Powers tab, we can find a power of this name in the list on the left. Select it to see the power details.

A quick run-down of the Powers Tab entries.
Name - a unique name for this power. If you're being thorough and want nice looking names and descriptions in the status bar and character UI, add entries of the form _01 and to strings.txt. e.g. for the power ffx_gravity_up I added the entries:
FFX_GRAVITY_UP_01, gravity reversal
FFX_GRAVITY_UP_DESC_01, temporarily reverse gravity, causing the target to fly into the air and back down again
Recompile the string table using FFEDit. This is all optional, by the way.
Attack Type - choose between Melee, Ranged (Beams and Projectiles), Area, Direct and Special
Attack Sub Type - only applies if you set Attack Type to Ranged, this differentiates the different types.
Magnitude - how much damage the power does or how hard it is to resist for state attacks. Most powers use this, the exception being special powers like teleport.
Damage Type - this covers the basic damage types and some special states. If you're after a special attack type, say Density Maximisation, and can't see it in here, try the Special Type box further down. If the Special Type box doesn't have _None selected then it overrides the contents of the Damage Type box, so make sure its set to _None for most Powers.
EP Cost How much EP it takes to use the power.
Speed How fast projectiles and beams travel, and how hard melee attacks are to dodge.
Stun How likely the attack is to stun the target.
Knockback How much knockback the attack does.
Range For melee powers, set these values to 1 and 5. For ranged and direct set to Min=0 and Max=0,1 or 2 for short, medium and long range. A Max=3 power will have effectively infinite range. Movement powers like teleport and sprint use the same values as Ranged powers, so a Teleport with Range=0,0 will be next to useless and a teleport with 0,3 means you have infinite range teleport.
Accuracy Chance of hitting for melee and ranged.
Radius Size of the explosion for Area and Ranged:Explosive Projectile powers. For melee attacks with the Melee:Area Attack flag checked, Small, Medium and Large correspond to 90, 180 and 360 degree arcs.
Special Type See desription of Damage Type above. Should usually be set to _None
Attached FX The FX used by the power. SHould be of the right type. If in doubt, check the FX used by known character's powers, but remeber to Save first.
Animation The animation to use with this power. Must be compatible with the power type, eg a melee animation for a melee attack etc.
Max Instances Used for flight Spawn and Impact Spawn projectiles.