A desktop application for viewing and analyzing KOG Studios .kom archive files (Grand Chase, Elsword).
- KOM File Parsing: Complete support for KOG Studios .kom archive format (V.0.2)
- File Tree Browser: Navigate archive contents with size and compression information
- Text Viewer with Line Numbers: View decompressed files with line numbering
- Smart Encoding Detection: Automatic detection of CP949, EUC-KR, UTF-8, and other encodings
- Search: Find text within file contents (Ctrl+F)
- Export: Save individual files as .txt or extract all files
- Dark Theme: Professional dark mode interface
- Drag & Drop: Drag .kom files into the application
- Keyboard Shortcuts: Quick access to common operations
- KOG GC TEAM MASSFILE V.0.2 (zlib-compressed entries)
- Python 3.10 or higher
- Windows, macOS, or Linux
-
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python main.py [optional-file.kom]
-
Build executable:
python build.py # Single-file .exe python build.py --onedir # Directory bundle (faster startup) python build.py --clean # Clean before building
-
Find executable:
- Single-file:
dist/kom-viewer.exe - Directory:
dist/kom-viewer/kom-viewer.exe
- Single-file:
- File Menu: File > Open (Ctrl+O)
- Drag & Drop: Drag .kom files into the window
- Command Line:
python main.py path/to/archive.kom
- Select a file from the tree view on the left
- View decompressed content in the text viewer on the right
- Use Ctrl+F to search within the content
- Single File: File > Export as .txt (Ctrl+S) – Saves current view
- All Files: File > Export All Files – Extracts entire archive
| Shortcut | Action |
|---|---|
| Ctrl+O | Open file |
| Ctrl+S | Export current file as .txt |
| Ctrl+F | Find text |
| Ctrl+C | Copy selection |
| Ctrl+A | Select all |
| Ctrl+Q | Exit application |
kom-viewer/
├── main.py # Application entry point
├── viewer.py # Main window and GUI components
├── decryptor_interface.py # KOM archive parser and decoder
├── build.py # PyInstaller build script
├── kom-viewer.spec # PyInstaller specification
├── requirements.txt # Python dependencies
├── assets/
│ └── dark_theme.qss # Qt stylesheet for dark theme
├── pyproject.toml # Project metadata (PEP 621)
└── README.md # This file
The .kom format is a proprietary archive used by KOG Studios:
- Header: 60 bytes with magic string
KOG GC TEAM MASSFILE V.0.2. - File Table: Array of 72-byte entries (filename, sizes, offset)
- Data: zlib-compressed file contents
See decryptor_interface.py for implementation details.
MIT License – see LICENSE file for details.
Contributions are welcome! Please ensure your changes are tested thoroughly before submitting.
This tool is provided for educational and research purposes only. Do not use it to violate game Terms of Service or redistribute copyrighted content.
- Ensure Python 3.10+ is installed
- Verify all dependencies:
pip install -r requirements.txt
- Verify the file is a valid .kom archive (V.0.2 format)
- Check the file is not corrupted
- See the error message for details
- The viewer automatically detects CP949 (Korean Windows), EUC-KR, and UTF-8 encodings
- If text shows as � (replacement characters), the KOM archive itself contains corrupted data
- The original text was lost before the files were compressed into the archive
- Try getting an uncorrupted version of the KOM file from the original game installation
- Ensure all dependencies are installed:
pip install -r requirements.txt - Run with
--cleanflag:python build.py --clean
Developed for viewing KOG Studios archive files from Grand Chase and Elsword games.