File Formats

Lots of Nintendo DS games use the same file formats to store their data, but not Fossil Fighters! It has its own set of completely unique file formats that it uses to store all kinds of data, from cutscenes to 3D models to dialogue.

On one hand, this is a huge pain, because we can't use existing tools to export and edit these files. On the other hand, Fossil Fighters's strange data files are really powerful! An incredible amount of the game's logic is encoded in files that can be easily1 read and modified.

Most (but not all!) Fossil Fighters file formats start with a short code that's used to refer to that format.

Both games

File FormatDescriptionLocationcarbonizer support (FF1/FFC)
_match Miscellaneous dataetc/*_match✓✓
3BA etc/battle_attack_type✓✗
3BC model/battle/arcscenecsv.mar/0000✗✗
BBG Kasekiums (fossil battle arenas)etc/btl_bg_defs✓✗
CHR Characterschara/✓✗
DAL Attacksetc/attack_defs✓✗
DBA etc/btl_adjust_defs✓✗
DBS Battlesbattle/✓✗
DBT btl_tutorial/✓✗
DCL Vivosaursetc/creature_defs✓✓
DEP Cutscene triggersepisode/✓✗
DEX Cutscenesepisode/e*✓✓
DMG Dialoguemsg/✓✓
DML etc/museum_defs✓✗
DMS Max IDsetc/*_maxid✓✓
DSL Haikuetc/senryu_defs✓✗
DTX Texttext/✓✓
GRD Map datamap/c/, map/e/, map/g/, map/r/✓✓
HML Masksetc/headmask_defs✓✗
KIL Key itemsetc/keyitem_defs✓✓
KPS FPetc/btl_kp_defs✓✗
MAP Mapsmap/m/✓✗
MAR, MCM Archive formatEverywhere!✓✓
MFS Fontsfont/✗✗
MKL etc/timemask✗✗
MM3 Index files for 3D modelsmodel/✓✓
MMS Index files for spritesmotion/✓✓
MPM Index files for imagesimage/✓✓
RLS Fossilsetc/kaseki_defs✓✗
SHP Shopshop/✓✗

FF1 only

File FormatDescriptionLocationcarbonizer support
3CL Index file for vivosaur 3D modelsmodel/battle/arcdin/0000✓
AIS btl_ai/✗
AST btl_aiset/✗
BCO Unknown—all zerosetc/creature_offset_defs✓
DAB auto_battle/auto_battle✗
DNC dance/✗
ECS Miscellaneous dataetc/excavate_defs✓

FFC only

File FormatDescriptionLocationcarbonizer support
3CM Index file for vivosaur 3D modelsmodel/battle/arcdin✗
3CN Vivosaur model countmodel/battle/arcdin/0000✗
ACL etc/add_contents_defs✗
AIC etc/ai_attack_defs✗
AIP etc/ai_pattern_defs✗
CAMS etc/camera_setting_defs✗
CBS etc/cleaningbasic_defs✗
CCL etc/cleaning_challenge_defs✗
CDTW etc/conditional_word_defs✗
CHI etc/charaitem_defs✗
CPL etc/creature_palet_defs✗
CPLS etc/critical_point_location_defs✗
CRI etc/creature_rankup_interval_defs✗
CWS etc/cannonwarp_defs✗
D2ML etc/2D_motion_defs✗
D3NNL etc/node_name_table✗
DAI etc/ai_tactics_defs✗
DATL etc/ATM_tutorial_list_defs✗
DATM etc/atmwarp_defs✗
DBG etc/debug_defs✗
DBTL etc/donate_battlepoint_defs✗
DCEA etc/creature_evolution_abilityup_param_defs✗
DCL Same magic bytes as creature_defs, unknown if same file typeetc/donate_creature_defs✗
DCS etc/consol_defs✗
DCSL etc/creature_strength_defs✗
DDE etc/btl_dmg_effect_def✗
DDPL etc/donate_point_defs✗
DEMO etc/autodemo_defs✗
DKSK etc/donate_kaseki_defs✗
DMLS etc/manpu_defs✗
DMSK etc/donate_mask_defs✗
DPLS etc/pict_defs✗
DSES etc/state_effect_defs✗
DSFG etc/rank_growth_pattern_defs✗
DTLL etc/textloadtiming_defs✗
DTS etc/donate_exchange_defs✗
ECL extra_contents_defs✗
ECS etc/commonbasic_defs✗
EGL etc/informationguild_defs✗
EMS excavatematch_defs✗
EVI etc/shopeventitem_defs✗
FACH etc/facechange_defs✗
FHL etc/fieldhorider_defs✗
GCOL etc/groundcolor_defs✗
GEFF etc/groundeffect_defs✗
HEXP etc/horider_experience_defs✗
JPK etc/jiman_prize_kaseki_defs✗
MLS etc/motion_defs✗
MPG etc/mapgroup_defs✗
OPMV etc/openingmovie_defs✗
PCS etc/passconnect_defs✗
PLYR etc/player_defs✗
RBBL etc/robobonus_defs✗
RBL etc/robo_defs✗
RLS etc/radarskin_defs✗
SIL etc/symbolicon_defs✗
SKS etc/shopkaseki_defs✗
TPL etc/shoptool_defs✗

  1. Well, "easily" compared to modifying the game's code, which is basically impossible right now ⏎