C3 Files Format

Common Files & Formats & Usage

Scripts:  .inc, .script, .aix
These are used to define the working of the game, how units, objects , etc react to each other, as well define how the interface works and is shaped.
There are 2 main folders with scripts :/data/gui & data/scripts.

AIX files hold a collection of which .inc files to load. Common.aix is the normal 'game' state. Editor.aix is the one used to load the editor's state and it's scripts, this one is situated outside the /data/ folder, and can be found in the /scripts/ folder (not /data/scripts !) . There are other .aix files for units, gui, buildings, etc...

Graphics.osm, .oss, .actor, .lib

Osm (one small mesh) is a mesh format used for static objects and LODs and animations in vertex form. (Mostly buildings)
OSS (one small skin) is a mesh format with information on bones, weight, animation. (Mostly units)
Actor files hold the properties/options that are being applied to these .osm and .oss files.
The .lib ('library') is a list of all the actor files, so the game knows which files to load.

Animations: .acl, .aaf, .ref, .tpl, .tfl

ACL (Animation cycle library) are complex files which state which animation to run after which and for how many times. In raw format it is very hard to read. There is however a tool which gives a better overview of the animations setup. It can be accessed in the editor.exe under Module -> Animation Library. A standalone version is also available here :

AAF files state the 'default' animations (like idle, attack, death) and determine from which frame to which frame the game is meant to run the animation from the .oss file.

TLF (transformation list frame) files hold animation data used to animate static objects (attachments: swords, shields, helmets), trees moving in the wind, etc.

TPL (Track Point Library) - settings for unit step speed.

Objects: .prop (.properties), .lib , .ref

Prop (Properties) files hold the values and options for the objects (units, buildings). They stitch together any units/buildings using attachments, state which .aix files are being used , which .acl file, how large the objects are, etc... and it's name used in the country.script and unit.script file.

The .lib ('library') is a list of all the prop files, so the game knows which files to load.

REF (reference) files are not unique to objects, you can find them for other files as well (.actor,materials,...). These are used to list all the 'default' options and settings used for .actor, .prop, etc files. Rather than bloating a file with all the possible options, making it hard to read, a single line referring to this file will load all these options. (ie: {refurl=.\data\objects\ref\refunit.prop; refkey=mainproperty} ) .Overwriting any of these options is simply done by redefining the option in the used file.

Less Common & Various formats

Configs (.cfg/.ini)
BitMaps: .bmp, .tga, .dds
Patterns (.pattern)
Special Effects (.pfx)


* About .DDS format:

If there is an alpha channel : save to DXT 5

If there is no alpha channel : DXT 1

Sharpen : Medium