Listed here are conventions used in describing Oblivion mod and save file formats. Many of these conventions are standard c-type conventions, others (e.g., iref) are specific to this subject.
Based on this page.
C (Count)[]
This is used for mod subrecords.
Count | Usage |
---|---|
? | Unknown |
+ | Required |
- | Optional |
* | Repeating
|
Names/Comments[]
Text | Usage |
---|---|
num | Count of something. E.g. number of records. |
size | Size in bytes of some data object. |
?Huh? | Question or speculation. |
[indent] | Substructure. |
Data Types[]
Type | Size | Description |
---|---|---|
byte | 1 | Byte, signed. |
ubyte | 1 | Byte, unsigned.
|
char | 1 | Character, signed.
|
short | 2 | Short integer, signed. |
ushort | 2 | Short integer, unsigned. |
long | 4 | Long integer, signed. |
ulong | 4 | Long integer, unsigned.
|
float | 4 | Floating point number |
int64 | 8 | Long 64-bit integer, signed. |
uint64 | 8 | Long 64-bit integer, unsigned. |
hash | 8 | A hash of a string. See {..}. |
systemtime | 16 | SYSTEMTIME structure. |
type[num] | num*sizeof(type) | Array of num types. |
bstring | 1+?? | A string prefixed with a byte length. NOT zero terminated.
|
bzstring | 1+?? | A string prefixed with a byte length and terminated with a zero (\x00). |
zstring | ?? | Zero terminated string.
|
string | ?? | String which is not terminated
|
struct | ?? | Collection of other data types.
|
list[len] | ?? | List of items of variable length, and possibly different types.
|