What is the TDF file format?
The .tdf extension within Total Annihilation refers to a plain-text hierarchical key-value data format developed by Cavedog Entertainment for their 1997 real-time strategy game. It serves as the game's universal text data container - covering terrain features, unit build trees, sound event mappings, UI layout definitions, keyboard help text, and localization strings. Files such as SIDEDATA.TDF, ALLSOUND.TDF, HELP.TDF, and TRANSLATE.TDF all use this format.
The syntax uses named sections delimited by square brackets or curly braces, with key = value; pairs inside - similar in spirit to INI files but with support for nested blocks. The format has remained unchanged since Total Annihilation's launch in September 1997. It is also shared by related file types: .ota (map data), .fbi (unit definitions), and .gui (interface layout) files all use the same underlying syntax.
.tdf files are stored uncompressed as plain ASCII or Windows-1252 text on disk, but inside HPI archives they are compressed together with other game data. Any plain-text editor can open them. Modern community tools such as CheckTdf and TAUtil (available on GitHub) provide syntax validation and parsing utilities for modders.
Note: the .tdf extension is unrelated to ThunderByte Anti-Virus definition files and Trace Definition Files that also share this extension - those are entirely different formats.
Security & safety
RISK: LOWTDF files are plain text with no executable content. No security risk.
Format details
in a nutshell- ThunderByte Anti-Virus Definition File - Legacy anti-virus database file from TBAV (discontinued mid-1990s), unrelated to gaming.
- Trace Definition File (various tools) - Debug/profiling trace format used by some IDEs and tracing tools.
- Teamdesk Form File / WinDev Table Description - Various proprietary application tools use .tdf for their own table/form description formats.
Programs that open TDF files
Technical details
deep spec| Format type | Plain-text hierarchical key-value data |
| Text encoding | ASCII / Windows-1252 |
| Section syntax | Named blocks in square brackets `[Name]` or curly braces `Name { ... }` with `key = value;` pairs inside |
| Nesting | Supports nested blocks for hierarchical data structures |
| Compression | None when stored on disk; compressed by the HPI archive format when packaged with other game assets |
| Typical file size | Under 50 KB |
| In-game file roles | Terrain features, unit build trees (SIDEDATA.TDF), sound event mappings (ALLSOUND.TDF), keyboard help (HELP.TDF), localization strings (TRANSLATE.TDF) |
| Shared syntax formats | OTA (map data), FBI (unit definitions), and GUI (interface layout) files all use the identical TDF syntax |
| Magic bytes | None - format has no binary signature; files begin with named section headers |
| Community tools | CheckTdf and TAUtil (MHeasell, GitHub) for syntax validation and parsing |
| Associated OS | Windows (95/98 era) |
| Released | 1997 (Total Annihilation release) |
| Latest version | N/A (format unchanged; TA community continues to use it) |
| Specification | units.tauniverse.com |
TDF conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about TDF files.