VVC file format
Applies to:
BG2, BG2: ToB
General Description
This file format describes visual "spell casting" effects (BAM files) with optional sounds (WAVC files). VVCs can be invoked by some script actions (e.g. CreateVisualEffect, CreateVisualEffectObject) and by some effects (e.g. "Play 3D effect").
VVC Files use a 3D co-ordinates system when playing the exact location of VVC animations. Infinity Engine Games are rendered from an isometric angle; this means that the X-Y-Z axis need to be percieved within this isometric frame to properly understand how VVC files will play. The screenshot below demonstrates each axis, accordingly:
VVC Files use a 3D co-ordinates system when playing the exact location of VVC animations. Infinity Engine Games are rendered from an isometric angle; this means that the X-Y-Z axis need to be percieved within this isometric frame to properly understand how VVC files will play. The screenshot below demonstrates each axis, accordingly:
X is up or down.
Y is the distance between the feet of the character and the animation
Z is the distance between the head of the character and the animation
Y is the distance between the feet of the character and the animation
Z is the distance between the head of the character and the animation
Detailed Description
These files have constant length 1ECh bytes.
| Offset | Size (data type) | Description | |
|---|---|---|---|
| 0x0000 | 4 (char array) | Signature ('VVC ') | |
| 0x0004 | 4 (char array) | Version ('V1.0') | |
| 0x0008 | 8 (resref) | Animation resref (BAM) | |
| 0x0010 | 8 (resref ?) | Unknown | |
| 0x0018 | 2 (word) | Display flags
| |
| 0x001a | 2 (word) | Colour flags
|
|
| 0x001c | 4 (dword) | Unknown | |
| 0x0020 | 4 (dword) | Sequence flags
|
|
| 0x0024 | 4 (dword) | Unknown | |
| 0x0028 | 4 (dword) | X position (0 is smallest) | |
| 0x002c | 4 (dword) | Y position - distance between feet and animation (0 is the highest and FF is lowest) | |
| 0x0030 | 4 (dword) | Unknown | |
| 0x0034 | 4 (dword) | Frame rate (1 = slow) | |
| 0x0038 | 4 (dword) | Face Target | |
| 0x003c | 4 (dword) | Unknown | |
| 0x0040 | 4 (dword) | Position flags
|
|
| 0x0044 | 4 (dword) | Unknown | |
| 0x0048 | 4 (dword) | Unknown | |
| 0x004c | 4 (dword) | Z position - distance between head and animation (0 is lowest and FF is highest) | |
| 0x0050 | 4 (dword) | Unknown | |
| 0x0054 | 8 (resref ?) | Unknown | |
| 0x005c | 4 (dword) | Duration (frames) | |
| 0x0060 | 8 (resref ?) | Unknown, always 0 | |
| 0x0068 | 4 (dword) | First BAM sequence (introduction) | |
| 0x006c | 4 (dword) | Second BAM sequence (duration) | |
| 0x0070 | 8 (resref ?) | Unknown | |
| 0x0078 | 8 (resref) | First WAVC sound (introduction) | |
| 0x0080 | 8 (resref) | Second WAVC sound (duration) | |
| 0x0088 | 4 (long) | Unknown | |
| 0x008c | 4 (long) | Unknown | |
| 0x0090 | 4 (dword) | Third BAM sequence (ending) | |
| 0x0094 | 8 (resref) | Third WAVC soud (ending) | |
| 0x009c | 336 (bytes) | Unknown |