-
Notifications
You must be signed in to change notification settings - Fork 9
File Formats
Robert Jordan edited this page Sep 24, 2020
·
28 revisions
Pages marked with ✓ next to them have had the known extent of their file structure fully documented. There is also a small selection of slightly understood and documented PS Vita File Formats for CatSystem2.
| Wiki Page | Extensions | Description |
|---|---|---|
| KIF Archive ✓ | .int |
Archives for all CatSystem2 files of a specific type |
| HG‐2 Image ✓ | .hg2 |
Images with position info and multiple frames (v2) |
| HG‐3 Image ✓ | .hg3 |
Images with position info and multiple frames (v3) |
| ANM Animation ✓ | .anm |
Animation script for Images with multiple frames |
| CST Scene ✓ | .cst |
Message scene script |
| CSTL Localization ✓ | .cstl |
Localized CST Scene messages in UTF-8 |
| FES Screen ✓ | .fes |
Screen/menu script |
| ZT Package ✓ | .zt |
Packaged files that can be exported from in-game |
| KCS Script | .kcs |
Binary script for game functions, and low level graphics |
| Key Files ✓ | .dat |
Files to verify game authenticity or enable debug mode |
| Wiki Page | Extensions | Description |
|---|---|---|
| CsPack Archive ✓ |
.dat, .csp, .css
|
Archives for all CatSystem1 files of a specific type |
| HG‐2 Image ✓ | .hg2 |
Images with position info and multiple frames (v2) |
| CsMO Scene | .cst |
Message scene script |
| CSX Script | .csx |
Binary scripts for game functions |
| Wiki Page | Description |
|---|---|
| V_CODEs | Keys that are stored in CatSystem2 executable |
| Encryption Methods | Documentation on common encryption methods and tools |
| Zlib | The compression method used in files unless otherwise stated |
These are the data types present when explaining file specifications.
Although most types are listed as uint32 in File Specifications, the TriggersTools.CatSystem2 C# implementation often uses int32 values instead to avoid unnecessary casting or unchecked blocks.
| Type | Size |
|---|---|
byte |
1-byte unsigned integer |
uint16 |
2-byte unsigned integer |
uint32 |
4-byte unsigned integer |
uint64 |
8-byte unsigned integer |
int16 |
2-byte signed integer |
int32 |
4-byte signed integer |
int64 |
8-byte signed integer |
bool32 |
4-byte boolean (0 or 1) |
byte[n] |
Array of n bytes |
char[n] |
String of n bytes of characters |
string |
Null-terminated string |
- All
integerandbooleantypes are read in little-endian format. - All
stringandchar[n]types are read with Shift JIS (Codepage 932) encoding. - The
char[n]type uses null characters as padding, so this type is essentially null terminated as well unless there arenbytes of non-null characters. - All compression is done with Zlib unless otherwise specified.
- Italicezed types are not fixed in length, and must be determined while resting the file.
- Arrays marked with a > length, e.i. mytype[>], must be read sequentially, and often contain information on the offset of the next element.