SWG IFF Creator
Create IFF files from Star Wars Galaxies DataTable TAB and XML files with a single right-click in Visual Studio Code.

Features
- ✅ Right-Click Compilation: Compile .tab or .xml files to .iff format directly from the explorer or editor context menu
- ✅ Batch Processing: Compile all .tab files in a folder at once
- ✅ Pure TypeScript: Built-in IFF compiler with no external dependencies
- ✅ Cross-Platform: Works on Windows, macOS, and Linux
- ✅ Zero Configuration: No setup needed - just install and use!
- ✅ Progress Notifications: Visual feedback during compilation
- ✅ Syntax Highlighting: Basic syntax support for .tab files
Quick Start
- Install the extension
- Open a workspace containing SWG source files
- Right-click any
.tab or .xml file
- Select "SWG: Compile to IFF"
That's it! Your .iff file will be created automatically. No external tools required!
Commands
| Command |
Description |
Shortcut |
| SWG: Compile to IFF |
Compile selected .tab or .xml file to .iff format |
Right-click menu |
| SWG: Compile All TAB Files in Folder |
Batch compile all .tab files in folder |
Right-click folder |
- TAB Files: Tab-delimited DataTable files with column headers, type definitions, and data rows
- XML Files: DataTable XML format with column definitions and cell data
- IFF Files: Binary Interchange File Format (FORM/DTII) compatible with SWG
Configuration
No configuration required! The extension works out of the box with zero setup.
Output Path Strategy
"swg-iff-creator.outputPath": "auto"
## Usage Examples
### Compile Single File
1. Open or select a `.tab` or `.xml` file in Explorer
2. Right-click the file
3. Select **"SWG: Compile to IFF"**
### Compile All Files in Folder
1. Right-click on a folder containing `.tab` files
2. Select **"SWG: Compile All TAB Files in Folder"**
3. Watch the progress notification
## Technical Details
### IFF Format
The extension generates binary IFF (Interchange File Format) files with the following structure:
- **FORM** chunk: Container chunk
- **DTII** chunk: DataTable type identifier (version 5)
- **COLS** chunk: Column names
- **TYPE** chunk: Type specifications (s=string, i=integer, f=float, b=boolean, e=enum, etc.)
- **ROWS** chunk: Binary-encoded data rows
### Supported DataTable Types
- `s` - String
- `i` - Integer (32-bit)
- `f` - Float (IEEE 754)
- `b` - Boolean (byte)
- `e` - Enum (stored as integer)
- `h` - Hash string
- `c` - CRC (integer)
- `v` - Packed string
### TAB File Format
TAB files are tab-delimited text files with:
1. Header row: Column names separated by tabs
2. Type row: Type specifications separated by tabs
3. Data rows: Values separated by tabs (one row per line)
## Requirements
**None!** This extension is completely self-contained with no external dependencies.
## Troubleshooting
### Compilation Errors
If compilation fails, check:
1. TAB file format is correct (columns, types, data)
2. Type specifications are valid (s, i, f, b, e, h, c, v)
3. Data values match their type specifications
3. Or set `swg-iff-creator.dataTableToolPath` in settings
### Compilation Fails
- Check that your .tab file is valid
- Verify DataTableTool.exe is the correct version
- Check the output for error messages
- Ensure you have write permissions to the output directory
### Output File Not Created
- Check the output path setting
- Verify the target directory exists
- Look for error messages in the notification
## Known Issues
- Binary IFF files may appear as garbled text if opened in VS Code
- Large batch compilations may take several minutes
## Release Notes
### 1.0.0
- Initial release
- Right-click compilation for .tab and .xml files
- Batch folder compilation
- Pure TypeScript implementation
- Cross-platform support (Windows, macOS, Linux)
- Zero configuration required
- Progress notifications
- Basic .tab syntax highlighting
## Version History
### 1.0.0
- Pure TypeScript IFF compiler (no external dependencies)
- Support for TAB and XML input formats
- Complete DataTable type support (s, i, f, b, e, h, c, v)
- Binary IFF generation with FORM/DTII structure
## License
MIT License - see LICENSE file for details
## Credits
Created for the Star Wars Galaxies modding and development community by **Wasted Potential Studios LLC**.
IFF format and DataTable specifications based on the SWG source code release.
---
**Enjoy creating IFF files with ease!** 🚀
For more SWG development tools, check out our companion extension: **SWG IFF Deconstructor**