SWG IFF Viewer
Copyright © 2024 Wasted Potential Studios LLC. All Rights Reserved.
A Visual Studio Code extension for viewing Star Wars Galaxies IFF (Interchange File Format) files in a clean, modern webview interface.
Features
- 📄 Right-click to view - Simply right-click any
.iff file and select "SWG: View IFF File"
- 🌳 Structure Visualization - See the complete hierarchical chunk structure of IFF files
- 📊 DataTable Support - Special handling for DTII (DataTable) files with column/type information
- 📝 String Extraction - Automatically extracts and displays embedded strings
- 🎨 Modern Dark Theme - Clean, professional interface with easy-to-read formatting
- 📈 File Statistics - View file size, chunk counts, and unique tags at a glance
Supported File Types
This viewer supports all SWG IFF file types, with enhanced support for:
| Form Type |
Description |
| DTII |
DataTable (Binary) |
| SHOT |
Shader Object Template |
| SBOT |
Server Object Template |
| CBOT |
Client Object Template |
| MESH |
Mesh Geometry |
| SKEL |
Skeleton |
| ANIM |
Animation |
| APPR |
Appearance |
| And many more... |
|
Installation
- Download the
.vsix file
- Open VS Code
- Press
Ctrl+Shift+P (Windows/Linux) or Cmd+Shift+P (macOS)
- Type "Install from VSIX" and select the command
- Navigate to and select the downloaded
.vsix file
Or install directly from the VS Code Marketplace by searching for "SWG IFF Viewer".
Usage
- In the VS Code Explorer, navigate to a folder containing
.iff files
- Right-click on any
.iff file
- Select "SWG: View IFF File" from the context menu
- A new panel will open displaying the file's contents
Screenshots
File Overview
View comprehensive file information including size, type, and statistics.
Structure Tree
Navigate the hierarchical chunk structure with offset information and data previews.
For DataTable files, see column definitions with type specifications.
IFF (Interchange File Format) files are binary files used by Star Wars Galaxies to store various game data. The format consists of:
- FORM chunks: Containers that hold other chunks or forms
- Data chunks: Actual data blocks with 4-character tags
Each chunk contains:
- A 4-byte tag identifier
- A 4-byte size (big-endian)
- The chunk data (or nested chunks for FORMs)
Requirements
- Visual Studio Code 1.80.0 or higher
- Windows, macOS, or Linux
Extension Settings
swg-iff-viewer.enableCli — Enable/disable the wps CLI commands. When off, wps iff-viewer … refuses to run.
swg-iff-viewer.cliMaxRows — Maximum DataTable rows printed in the CLI (default 20).
CLI Usage (wps)
The package now exposes a lightweight CLI that mirrors the viewer output in the terminal.
- From this extension folder run
npm install -g . (or npm link) to make the wps command available.
- Parse any IFF file from a terminal:
wps iff-viewer path/to/file.iff
The CLI prints the nested chunk tree and, for DTII DataTables, an ASCII table of rows (capped by cliMaxRows). It obeys the enableCli setting so you can turn it off from VS Code settings if needed.
Known Issues
- Very large IFF files (>50MB) may take a few seconds to parse
- Some proprietary chunk types may show limited preview information
Release Notes
1.0.0
Initial release:
- IFF file viewing with webview panel
- Support for all common SWG IFF types
- DataTable (DTII) enhanced support
- String extraction
- Modern dark theme UI
Contributing
Found a bug or have a feature request? Please open an issue on our GitHub repository.
License
This extension is licensed under the MIT License. See LICENSE for details.
Made with ❤️ by Wasted Potential Studios LLC
Star Wars Galaxies is a trademark of Lucasfilm Ltd. This extension is a fan-made tool and is not affiliated with or endorsed by Lucasfilm Ltd., Daybreak Game Company, or Sony Online Entertainment.