Tables

From FreeSpace Wiki
Revision as of 20:13, 16 March 2010 by TopAce (talk | contribs) (.tbm files: linking the same article once in three lines is enough)
Jump to: navigation, search

Tables are the major data files in FreeSpace and FreeSpace 2. Compared with many other games, they are highly intuitive and easy to edit, requiring no special tools other than Notepad. For more detail on specific tables, see the links below.

Full list of tables can be found in Category:Tables page.
In-depth modular tables info can be found in Modular Tables page.

Information on how FreeSpace uses tables can be found on the FreeSpace 2 directory structure page.

Table files

Tables files and related code files
Ai.tbl /ai/aicode.cpp
Ai_profiles.tbl /ai/ai_profiles.cpp
Armor.tbl /ship/ship.cpp
Asteroid.tbl /asteroid/asteroid.cpp
Autopilot.tbl /autopilot/autopilot.cpp
Credits.tbl /menuui/credits.cpp
Cutscenes.tbl /cutscene/cutscenes.cpp
Fireball.tbl /fireball/fireballs.cpp
Help.tbl /gamehelp/contexthelp.cpp
Hud.tbl /hud/hudshield.cpp
Hud_gauges.tbl /hud/hudparse.cpp
Icons.tbl /mission/missionbriefcommon.cpp
Iff_defs.tbl /iff_defs/iff_defs.cpp
Lightning.tbl /nebula/neblightning.cpp
Mainhall.tbl /menuui/mainhallmenu.cpp
Medals.tbl /stats/medals.cpp
Menu.tbl /menuui/snazzyui.cpp
Messages.tbl /mission/missionmessage.cpp
Mflash.tbl /weapon/muzzleflash.cpp
Music.tbl /gamesnd/eventmusic.cpp
Nebula.tbl /nebula/neb.cpp
Objecttypes.tbl /ship/ship.cpp
Pixels.tbl /palman/palman.cpp
Rank.tbl /stats/scoring.cpp
Scripting.tbl /parse/scripting.cpp
Ships.tbl /ship/ship.cpp
Sounds.tbl /gamesnd/gamesnd.cpp
Species_defs.tbl /species_defs/species_defs.cpp
Species.tbl /menuui/techmenu.cpp
Ssm.tbl /hud/hudartillery.cpp
Stars.tbl /starfield/starfield.cpp
Strings.tbl /localization/localize.cpp
Tips.tbl /menuui/playermenu.cpp
Traitor.tbl /missionui/missiondebrief.cpp
Tstrings.tbl /localization/localize.cpp
Weapon_expl.tbl /weapon/weapons.cpp
Weapons.tbl /weapon/weapons.cpp

Accessing table files

Volition used a special kind of packaging method called .vp (Volition Package) for the FreeSpace games. Table files are stored in Root_fs2.vp. To open and extract files from a VP, you must use a VP editing program such as VPView32. For more details about VP files and how to work with them, consult this article.

Table files are customarily edited using Notepad, but any text editor that can save in a pure text format will do.

For some further information about where to put modified files, consult FreeSpace 2 directory structure.

.tbl files

These files are the basic FreeSpace table used for defining various aspects of the game. Game reads only single .tbl choosing the one it encounters first while parsing the game directories.

.tbm files

These files are modular table files. They can be used for adding content to the 'base' tables or to modify the data from those files. For usage info and important notes, see Modular Tables.

Notes of certain table files

Hardcoded table files

Some of the table files are not actually required as the basic version has been written directly to the code. However these can be overridden by table files present in game directories.

These files are not present in standard FreeSpace 2 .vp files

Optional table files

Certain tables are not found from the code nor do they belong to the basic table set. These tables are parsed if game detects them

These files are not present in standard FreeSpace 2 .vp files

Obsolete table files

Some table files have since been 'retired' and they are no longer needed with FreeSpace Open

Important notes

Table entries must be ordered

  • As a general rule, all the table entries must be ordered.
  • Keep the order shown in the following help sections for each table in both normal tables (tbl files) and Modular Tables (tbm files). If you don't do it, you can get parser errors on FS2 or FRED2 loading when they are reading them.

Brief descriptions of table files

  • In all the table help pages, SCP added entries are usually marked with infoboxes that mark the branch there the particular feature has added to.
  • {{Table3610| text}} gives 3.6.10 box
FS2 Open 3.6.10: text
  • {{Table3611| text}} gives 3.6.11 box
FS2 Open, 3.6.12: text