Cutscenes
Depending on the version of SA2, the data for the event cutscenes can differ. EXXXX.PRS is the main file, while the _0 to _J files contain miscellaneous resources, such as audio timings and lighting/screen fade information. In the Dreamcast version, the models and animation data for a scene are all contained within the main file, while in SA2B, the animation data was split off into an uncompressed file labeled exxxxmotion.bin. With two exceptions in the DC version - those being E0203 and E0210 - the event files can only be interpreted by the game if the main file is compressed.
Main File Information
Offset |
Type |
Description
|
0
|
Pointer
|
Scene geometry
|
4
|
Pointer
|
Texture list
|
8
|
|
Scene count
|
C
|
Pointer
|
Texture sizes
|
10
|
Pointer
|
Unknown
|
14
|
Pointer
|
Unknown
|
18
|
Pointer
|
Unknown
|
1C
|
Pointer
|
Tails' tails
|
20
|
Pointer
|
Upgrade list
|
24
|
Pointer
|
Models that use animated textures
|
28
|
|
Drop shadow control? A value of 1 indicates updated scene geometry to accommodate proper drop shadows. (SA2B only)
|
Upgrade List
The upgrade list is constant throughout the game. To work around a technical limitation with the character models in SA2B, Mech Tails and Mech Eggman were given an upgrade slot each for their windshields, as they would have problems rendering otherwise.
Number |
Description
|
1
|
Sonic's Light Shoes
|
2
|
Sonic's Flame Ring
|
3
|
Sonic's Bounce Bracelet
|
4
|
Sonic's Magic Gloves
|
5
|
Shadow's Air Shoes
|
6
|
Shadow's Flame Ring
|
7
|
Knuckles' Shovel Claw (Left)
|
8
|
Knuckles' Shovel Claw (Right)
|
9
|
Knuckles' Hammer Glove (Left)
|
10
|
Knuckles' Hammer Glove (Right)
|
11
|
Knuckles' Sunglasses
|
12
|
Knuckles' Air Necklace
|
13
|
Rouge's Pick Nails
|
14
|
Rouge's Treasure Scope
|
15
|
Rouge's Iron Boots
|
16
|
Rouge's Heart Plates
|
17
|
Mech Tails' cockpit window (SA2B only)
|
18
|
Mech Eggman's cockpit window (SA2B only)
|
Character Node Hierarchy
The node hierarchy for the characters in the cutscenes tends to be quite different from their main game counterparts. As a result, there isn't so much a common skeleton for the cutscene models so much as a different arrangement for the same nodes, with some alterations for what's included within the body's mesh. As a general rule of thumb, any part of the mesh that requires shape motions in the scene is not included with the main model.
Sonic
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Body node (Parent 2)
|
4
|
Legs + Tail node (Parent)
|
5
|
Legs + Tail node (Parent 2)
|
6
|
Left Leg (Parent)
|
7
|
Left Leg node (hip)
|
8
|
Left Leg node (thigh)
|
9
|
Left Leg node (knee)
|
10
|
Left Leg node (end)
|
11
|
Left Foot node (Parent)
|
12
|
Left Foot node (Heel)
|
13
|
Left Foot node (Toe)
|
14
|
Left Foot node (End)
|
15
|
Tail (Parent)
|
16
|
Tail node (base)
|
17
|
Tail node (2nd from base)
|
18
|
Tail node (2nd from end)
|
19
|
Tail node (end)
|
20
|
Right Leg (Parent)
|
21
|
Right Leg node (hip)
|
22
|
Right Leg node (thigh)
|
23
|
Right Leg node (knee)
|
24
|
Right Leg node (end)
|
25
|
Right Foot node (Parent)
|
26
|
Right Foot node (Heel)
|
27
|
Right Foot node (toe)
|
28
|
Right Foot node (end)
|
29
|
Chest node (Parent)
|
30
|
Chest node (middle)
|
31
|
Head + Arms node (Parent)
|
32
|
Head + Arms node (Parent 2)
|
33
|
Right Arm (Parent, contains arm array)
|
34
|
Right Arm (Parent 2)
|
35
|
Right Arm node (base)
|
36
|
Right Arm node (elbow)
|
37
|
Right Arm node (wrist)
|
38
|
Right hand (Parent)
|
39
|
Right hand (Parent 2)
|
40
|
Face node (Parent)
|
41
|
Face node (Parent 2)
|
42
|
Face node (Parent 3)
|
43
|
Muzzle (Parent)
|
44
|
Head (Parent)
|
45
|
Right eye (Parent)
|
46
|
Right eye
|
47
|
Left eye (Parent)
|
48
|
Left eye
|
49
|
Left Arm (Parent, contains arm array)
|
50
|
Left Arm (Parent 2)
|
51
|
Left Arm node (base)
|
52
|
Left Arm node (elbow)
|
53
|
Left Arm node (wrist)
|
54
|
Left hand (Parent)
|
55
|
Left Hand (Parent 2)
|
Shadow
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Body node (Parent 2)
|
4
|
Legs + Tail node (Parent)
|
5
|
Legs + Tail node (Parent 2)
|
6
|
Right Leg (Parent)
|
7
|
Right Leg node (hip)
|
8
|
Right Leg node (thigh)
|
9
|
Right Leg node (knee)
|
10
|
Right Leg node (end)
|
11
|
Right Foot node (Parent)
|
12
|
Right Foot node (Heel)
|
13
|
Right Foot node (Toe)
|
14
|
Right Foot node (End)
|
15
|
Tail (Parent)
|
16
|
Tail node (base)
|
17
|
Tail node (2nd from base)
|
18
|
Tail node (2nd from end)
|
19
|
Tail node (end)
|
20
|
Left Leg (Parent)
|
21
|
Left Leg node (hip)
|
22
|
Left Leg node (thigh)
|
23
|
Left Leg node (knee)
|
24
|
Left Leg node (end)
|
25
|
Left Foot node (Parent)
|
26
|
Left Foot node (Heel)
|
27
|
Left Foot node (toe)
|
28
|
Left Foot node (end)
|
29
|
Chest node (Parent)
|
30
|
Chest node (middle)
|
31
|
Head + Arms node (Parent)
|
32
|
Head + Arms node (Parent 2)
|
33
|
Right Arm (Parent, contains arm array)
|
34
|
Right Arm (Parent 2)
|
35
|
Right Arm node (base)
|
36
|
Right Arm node (elbow)
|
37
|
Right Arm node (wrist)
|
38
|
Right hand (Parent)
|
39
|
Face node (Parent)
|
40
|
Face node (Parent 2)
|
41
|
Face node (Parent 3)
|
42
|
Muzzle (Parent)
|
43
|
Head (Parent)
|
44
|
Right eye (Parent)
|
45
|
Right eye
|
46
|
Left eye (Parent)
|
47
|
Left eye
|
48
|
Left Arm (Parent, contains arm array)
|
49
|
Left Arm (Parent 2)
|
50
|
Left Arm node (base)
|
51
|
Left Arm node (elbow)
|
52
|
Left Arm node (wrist)
|
53
|
Left hand (Parent)
|
Knuckles
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Body node (Parent 2)
|
4
|
Legs + Tail node (Parent)
|
5
|
Legs + Tail node (Parent 2)
|
6
|
Right Leg (Parent)
|
7
|
Right Leg node (hip)
|
8
|
Right Leg node (thigh)
|
9
|
Right Leg node (knee)
|
10
|
Right Leg node (end)
|
11
|
Right Foot node (Parent, contains shoe array)
|
12
|
Right Foot node (Parent 2)
|
13
|
Right Foot node (Heel)
|
14
|
Right Foot node (Toe)
|
15
|
Right Foot node (End)
|
16
|
Left Leg (Parent)
|
17
|
Left Leg node (hip)
|
18
|
Left Leg node (thigh)
|
19
|
Left Leg node (knee)
|
20
|
Left Leg node (end)
|
21
|
Left Foot node (Parent, contains shoe array)
|
22
|
Left Foot node (Parent 2)
|
23
|
Left Foot node (Heel)
|
24
|
Left Foot node (toe)
|
25
|
Left Foot node (end)
|
26
|
Tail (Parent)
|
27
|
Tail node (base)
|
28
|
Tail node (2nd from base)
|
29
|
Tail node (2nd from end)
|
30
|
Tail node (end)
|
31
|
Chest node (Parent)
|
32
|
Chest node (middle)
|
33
|
Head + Arms node (Parent)
|
34
|
Head + Arms node (Parent 2)
|
35
|
Left Arm (Parent, contains arm array)
|
36
|
Left Arm (Parent 2)
|
37
|
Left Arm node (base)
|
38
|
Left Arm node (elbow)
|
39
|
Left Arm node (wrist)
|
40
|
Left hand (Parent)
|
41
|
Face node (Parent)
|
42
|
Face node (Parent 2)
|
43
|
Face node (Parent 3)
|
44
|
Muzzle (Parent)
|
45
|
Head (Parent)
|
46
|
Right eye (Parent)
|
47
|
Right eye
|
48
|
Left eye (Parent)
|
49
|
Left eye
|
50
|
Right Arm (Parent, contains arm array)
|
51
|
Right Arm (Parent 2)
|
52
|
Right Arm node (base)
|
53
|
Right Arm node (elbow)
|
54
|
Right Arm node (wrist)
|
55
|
Right hand (Parent)
|
Rouge
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Body node (Parent 2)
|
4
|
Legs + Tail node (Parent)
|
5
|
Legs + Tail node (Parent 2)
|
6
|
Right Leg (Parent)
|
7
|
Right Leg node (hip)
|
8
|
Right Leg node (thigh)
|
9
|
Right Leg node (knee)
|
10
|
Right Leg node (end)
|
11
|
Right Foot node (Parent, contains shoe array)
|
12
|
Right Foot node (Parent 2)
|
13
|
Right Foot node (Heel)
|
14
|
Right Foot node (Toe)
|
15
|
Right Foot node (End)
|
16
|
Left Leg (Parent)
|
17
|
Left Leg node (hip)
|
18
|
Left Leg node (thigh)
|
19
|
Left Leg node (knee)
|
20
|
Left Leg node (end)
|
21
|
Left Foot node (Parent, contains shoe array)
|
22
|
Left Foot node (Parent 2)
|
23
|
Left Foot node (Heel)
|
24
|
Left Foot node (toe)
|
25
|
Left Foot node (end)
|
26
|
Tail (Parent)
|
27
|
Tail node (base)
|
28
|
Tail node (2nd from base)
|
29
|
Tail node (2nd from end)
|
30
|
Tail node (end)
|
31
|
Chest node (Parent)
|
32
|
Chest node (middle)
|
33
|
Head + Arms node (Parent)
|
34
|
Head + Arms node (Parent 2)
|
35
|
Right Arm (Parent, contains arm array)
|
36
|
Right Arm (Parent 2)
|
37
|
Right Arm node (base)
|
38
|
Right Arm node (elbow)
|
39
|
Right Arm node (wrist)
|
40
|
Right hand (Parent)
|
41
|
Right hand (Parent 2)
|
42
|
Right thumb node (Parent)
|
43
|
Right thumb node (middle)
|
44
|
Right thumb node (tip)
|
45
|
Right fingers node (Parent)
|
46
|
Right fingers node (middle)
|
47
|
Right fingers node (tip)
|
48
|
Right pinkie node (Parent)
|
49
|
Right pinkie node (middle)
|
50
|
Right pinkie node (tip)
|
51
|
Right hand
|
52
|
Face node (Parent)
|
53
|
Face node (Parent 2)
|
54
|
Face node (Parent 3)
|
55
|
Muzzle (Parent)
|
56
|
Head (Parent)
|
57
|
Right eye (Parent)
|
58
|
Right eye
|
59
|
Left eye (Parent)
|
60
|
Left eye
|
61
|
Left Arm (Parent, contains arm array)
|
62
|
Left Arm (Parent 2)
|
63
|
Left Arm node (base)
|
64
|
Left Arm node (elbow)
|
65
|
Left Arm node (wrist)
|
66
|
Left hand (Parent)
|
67
|
Left Hand (Parent 2)
|
68
|
Left thumb node (Parent)
|
69
|
Left thumb node (middle)
|
70
|
Left thumb node (tip)
|
71
|
Left fingers node (Parent)
|
72
|
Left fingers node (middle)
|
73
|
Left fingers node (tip)
|
74
|
Left pinkie node (Parent)
|
75
|
Left pinkie node (middle)
|
76
|
Left pinkie node (tip)
|
77
|
Left hand
|
Mech Tails
ID |
Description
|
0
|
Mech's Root node
|
1
|
Mech's Legs node (Parent)
|
2
|
Mech's Chest node (Parent)
|
3
|
Vulcan Cannon
|
4
|
Vulcan Cannon node
|
5
|
Missile Blaster node (base)
|
6
|
Missile Blaster node (barrel)
|
7
|
Missile Blaster node (tip)
|
8
|
Laser Blaster node (base)
|
9
|
Laser Blaster node (barrel)
|
10
|
Laser Blaster node (tip)
|
11
|
Bazooka node (base)
|
12
|
Bazooka node (barrel)
|
13
|
Bazooka node (tip)
|
14
|
Cannon node
|
15
|
Pilot's root node
|
16
|
Pilot's Chest node
|
17
|
Pilot's Left Arm node (base, contains array for arm)
|
18
|
Pilot's Left Arm node (Parent)
|
19
|
Pilot's Left Arm node (Armpit)
|
20
|
Pilot's Left Arm node (elbow)
|
21
|
Pilot's Left Arm node (wrist)
|
22
|
Pilot's Right arm node (base, contains array for arm)
|
23
|
Pilot's Right arm node (Parent)
|
24
|
Pilot's Right arm node (armpit)
|
25
|
Pilot's Right arm node (elbow)
|
26
|
Pilot's Right arm node (wrist)
|
27
|
Pilot's Face node (Parent)
|
28
|
Pilot's Face node (Parent 2)
|
29
|
Pilot's Face node (Parent 3)
|
30
|
Pilot's Right eye
|
31
|
Pilot's Left eye
|
32
|
Pilot's face node (end)
|
33
|
Yoke node
|
34
|
Lock-on Laser node
|
35
|
Mech's Right foot node (Parent)
|
36
|
Mech's Right foot node (Parent 2)
|
37
|
Mech's Right foot node (base)
|
38
|
Mech's Right foot node (calf, Parent)
|
39
|
Mech's Right foot node (calf)
|
40
|
Booster (Right)
|
41
|
Mech's Right foot node (Foot, Parent 1)
|
42
|
Mech's Right foot node (Foot, Parent 2)
|
43
|
Mech's Right foot node (Foot, Parent 3)
|
44
|
Mech's Right foot node (Foot)
|
45
|
Mech's Right foot node (Foot, tip)
|
46
|
Mech's Left foot node (Parent)
|
47
|
Mech's Left foot node (Parent 2)
|
48
|
Mech's Left foot node (base)
|
49
|
Mech's Left foot node (calf, Parent)
|
50
|
Mech's Left foot node (calf)
|
51
|
Booster (Left)
|
52
|
Mech's Left foot node (Foot, Parent 1)
|
53
|
Mech's Left foot node (Foot, Parent 2)
|
54
|
Mech's Left foot node (Foot, Parent 3)
|
55
|
Mech's Left foot node (Foot)
|
56
|
Mech's Left foot node (Foot, tip)
|
Mech Eggman
ID |
Description
|
0
|
Root node
|
1
|
Mech's Legs node (Parent)
|
2
|
Mech's Right Leg node (base)
|
3
|
Mech's Right Leg node (calf)
|
4
|
Mech's Right Foot node (heel)
|
5
|
Mech's Right Foot node (toe)
|
6
|
Jet Engine (Right)
|
7
|
Mech's Left Leg node (base)
|
8
|
Mech's Left Leg node (calf)
|
9
|
Mech's Left Leg node (heel)
|
10
|
Mech's Left Leg node (toe)
|
11
|
Jet Engine (Left)
|
12
|
Mech's Chest node (Parent)
|
13
|
Blaster node
|
14
|
Lock-on Laser node
|
15
|
Accessories node? (Parent)
|
16
|
Protection Armor
|
17
|
Vulcan Cannon
|
18
|
Vulcan Cannon node
|
19
|
Missile Blaster node (base)
|
20
|
Missile Blaster node (barrel)
|
21
|
Missile Blaster node (tip)
|
22
|
Large Cannon
|
23
|
Large Cannon node
|
24
|
Laser Blaster node (base)
|
25
|
Laser Blaster node (barrel)
|
26
|
Laser Blaster node (tip)
|
27
|
Laser Blaster node (glow)
|
28
|
Pilot's root node
|
29
|
Pilot's chest node (Contains array for the body)
|
30
|
Pilot's Arms node (Parent)
|
31
|
Pilot's Left Arm node (Parent)
|
32
|
Pilot's Left Arm node (base)
|
33
|
Pilot's Left Arm node (elbow)
|
34
|
Pilot's Left Arm node (wrist)
|
35
|
Pilot's Left hand node (Parent)
|
36
|
Pilot's Right Arm node (Parent)
|
37
|
Pilot's Right arm node (base)
|
38
|
Pilot's Right arm node (elbow)
|
39
|
Pilot's Right arm node (wrist)
|
40
|
Pilot's Right hand node (Parent)
|
41
|
Pilot's Face node (Parent)
|
42
|
Pilot's Face node (Parent 2)
|
43
|
Pilot's Face node (Parent 3)
|
Tails
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Chest node (Parent)
|
4
|
Chest node (middle)
|
5
|
Head + Arms node (Parent)
|
6
|
Head + Arms node (Parent 2)
|
7
|
Left Arm (Parent, contains arm array)
|
8
|
Left Arm (Parent 2)
|
9
|
Left Arm node (base)
|
10
|
Left Arm node (elbow)
|
11
|
Left Arm node (wrist)
|
12
|
Left hand (Parent)
|
13
|
Left hand (Parent 2)
|
14
|
Right Arm (Parent, contains arm array)
|
15
|
Right Arm (Parent 2)
|
16
|
Right Arm node (base)
|
17
|
Right Arm node (elbow)
|
18
|
Right Arm node (wrist)
|
19
|
Right hand (Parent)
|
20
|
Right Hand (Parent 2)
|
21
|
Face node (Parent)
|
22
|
Face node (Parent 2)
|
23
|
Face node (Parent 3)
|
24
|
Eyes (Parent)
|
25
|
Left Eye
|
26
|
Right eye
|
27
|
Muzzle (Parent)
|
28
|
Head (Parent)
|
29
|
Body node (Parent 2)
|
30
|
Legs + Tail node (Parent)
|
31
|
Legs + Tail node (Parent 2)
|
32
|
Right Leg (Parent)
|
33
|
Right Leg node (hip)
|
34
|
Right Leg node (thigh)
|
35
|
Right Leg node (knee)
|
36
|
Right Leg node (end)
|
37
|
Right Foot node (Parent, contains shoe array)
|
38
|
Right Foot node (Parent 2)
|
39
|
Right Foot node (Heel)
|
40
|
Right Foot node (Toe)
|
41
|
Right Foot node (End)
|
42
|
Tails (Parent)
|
43
|
Right tail
|
44
|
Left tail
|
45
|
Left Leg (Parent)
|
46
|
Left Leg node (hip)
|
47
|
Left Leg node (thigh)
|
48
|
Left Leg node (knee)
|
49
|
Left Leg node (end)
|
50
|
Left Foot node (Parent, contains shoe array)
|
51
|
Left Foot node (Parent 2)
|
52
|
Left Foot node (Heel)
|
53
|
Left Foot node (toe)
|
54
|
Left Foot node (end)
|
Eggman
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Chest node (Parent)
|
4
|
Chest node (middle)
|
5
|
Head + Arms node (Parent)
|
6
|
Head + Arms node (Parent 2)
|
7
|
Left Arm (Parent)
|
8
|
Left Arm node (base)
|
9
|
Left Arm node (elbow)
|
10
|
Left Arm node (wrist)
|
11
|
Left Hand node (Parent)
|
12
|
Left Hand node (Parent 2)
|
13
|
Right Arm (Parent)
|
14
|
Right Arm node (base)
|
15
|
Right Arm node (elbow)
|
16
|
Right Arm node (wrist)
|
17
|
Right hand node (Parent)
|
18
|
Right hand node (Parent 2)
|
19
|
Face node (Parent)
|
20
|
Face node (Parent 2)
|
21
|
Face node (Parent 3)
|
22
|
Body node (Parent 2)
|
23
|
Legs node (Parent)
|
24
|
Legs node (Parent 2)
|
25
|
Right Leg node (Parent)
|
26
|
Right Leg node (hip)
|
27
|
Right Leg node (thigh)
|
28
|
Right Leg node (knee)
|
29
|
Right Leg node (End)
|
30
|
Right Foot node (Parent)
|
31
|
Right Foot node (calf)
|
32
|
Right Foot node (heel)
|
33
|
Right Foot node (toe)
|
34
|
Left Leg node (Parent)
|
35
|
Left Leg node (hip)
|
36
|
Left Leg node (thigh)
|
37
|
Left Leg node (knee)
|
38
|
Left Leg node (end)
|
39
|
Left Foot node (Parent)
|
40
|
Left Foot node (calf)
|
41
|
Left Foot node (heel)
|
42
|
Left Foot node (toe)
|
Amy
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Body node (Parent 2)
|
4
|
Legs + Tail node (Parent)
|
5
|
Legs + Tail node (Parent 2)
|
6
|
Right Leg (Parent)
|
7
|
Right Leg node (hip)
|
8
|
Right Leg node (thigh)
|
9
|
Right Leg node (knee)
|
10
|
Right Leg node (end)
|
11
|
Right Foot node (Parent)
|
12
|
Right Foot node (Heel)
|
13
|
Right Foot node (Toe)
|
14
|
Right Foot node (End)
|
15
|
Tail (Parent)
|
16
|
Tail node (base)
|
17
|
Tail node (2nd from base)
|
18
|
Tail node (2nd from end)
|
19
|
Tail node (end)
|
20
|
Left Leg (Parent)
|
21
|
Left Leg node (hip)
|
22
|
Left Leg node (thigh)
|
23
|
Left Leg node (knee)
|
24
|
Left Leg node (end)
|
25
|
Left Foot node (Parent)
|
26
|
Left Foot node (Heel)
|
27
|
Left Foot node (toe)
|
28
|
Left Foot node (end)
|
29
|
Chest node (Parent)
|
30
|
Chest node (middle)
|
31
|
Head + Arms node (Parent)
|
32
|
Head + Arms node (Parent 2)
|
33
|
Face node (Parent)
|
34
|
Face node (Parent 2)
|
35
|
Muzzle (Parent)
|
36
|
Eyes (Parent)
|
37
|
Right eye
|
38
|
Left eye
|
39
|
Face node (Parent 3)
|
40
|
Head (Parent)
|
41
|
Right Arm (Parent, contains arm array)
|
42
|
Right Arm (Parent 2)
|
43
|
Right Arm node (base)
|
44
|
Right Arm node (elbow)
|
45
|
Right Arm node (wrist)
|
46
|
Right hand (Parent)
|
47
|
Right hand (Parent 2)
|
48
|
Left Arm (Parent, contains arm array)
|
49
|
Left Arm (Parent 2)
|
50
|
Left Arm node (base)
|
51
|
Left Arm node (elbow)
|
52
|
Left Arm node (wrist)
|
53
|
Left hand (Parent)
|
54
|
Left Hand (Parent 2)
|
Super Sonic/Super Shadow
ID |
Description
|
0
|
Root node
|
1
|
Root node 2 (Main array for the body)
|
2
|
Body node (Parent)
|
3
|
Body node (Parent 2)
|
4
|
Legs + Tail node (Parent)
|
5
|
Legs + Tail node (Parent 2)
|
6
|
Right Leg (Parent)
|
7
|
Right Leg node (hip)
|
8
|
Right Leg node (thigh)
|
9
|
Right Leg node (knee)
|
10
|
Right Leg node (end)
|
11
|
Right Foot node (Parent, contains shoe array)
|
12
|
Right Foot node (Parent 2)
|
13
|
Right Foot node (Heel)
|
14
|
Right Foot node (Toe)
|
15
|
Right Foot node (End)
|
16
|
Left Leg (Parent)
|
17
|
Left Leg node (hip)
|
18
|
Left Leg node (thigh)
|
19
|
Left Leg node (knee)
|
20
|
Left Leg node (end)
|
21
|
Left Foot node (Parent, contains shoe array)
|
22
|
Left Foot node (Parent 2)
|
23
|
Left Foot node (Heel)
|
24
|
Left Foot node (toe)
|
25
|
Left Foot node (end)
|
26
|
Tail (Parent)
|
27
|
Tail node (base)
|
28
|
Tail node (2nd from base)
|
29
|
Tail node (2nd from end)
|
30
|
Tail node (end)
|
31
|
Chest node (Parent)
|
32
|
Chest node (middle)
|
33
|
Head + Arms node (Parent)
|
34
|
Head + Arms node (Parent 2)
|
35
|
Left Arm (Parent, contains arm array)
|
36
|
Left Arm (Parent 2)
|
37
|
Left Arm node (base)
|
38
|
Left Arm node (elbow)
|
39
|
Left Arm node (wrist)
|
40
|
Left hand (Parent)
|
41
|
Left hand (Parent 2)
|
42
|
Face node (Parent)
|
43
|
Face node (Parent 2)
|
44
|
Face node (Parent 3)
|
45
|
Muzzle (Parent)
|
46
|
Head (Parent)
|
47
|
Right eye (Parent)
|
48
|
Right eye
|
49
|
Left eye (Parent)
|
50
|
Left eye
|
51
|
Right Arm (Parent, contains arm array)
|
52
|
Right Arm (Parent 2)
|
53
|
Right Arm node (base)
|
54
|
Right Arm node (elbow)
|
55
|
Right Arm node (wrist)
|
56
|
Right hand (Parent)
|
57
|
Right Hand (Parent 2)
|
EXXXX_0 Information
Screen Effects
Information starting at 0x9800 denotes any screen effects that occur within the scene, such as fades or color changes.
Offset |
Type |
Description
|
0
|
|
Frame in which the lighting information takes effect
|
4
|
|
Fade control. 1 is a fade, while 2 is a hard cut
|
8
|
Char Array [4]
|
ASCII color (ARGB)
|
Lighting Information
Starting at 0x26800 are 68-byte chunks that dictate the lighting information for the corresponding cutscene. The last 20 bytes can be considered a buffer for now.
Offset |
Type |
Description
|
0
|
|
Frame in which the lighting information takes effect
|
4
|
|
Fade control. 1 is a hard cut, while 2 is a fade-in from the previous set of instructions
|
8
|
Float
|
Light Direction Vector (X-Component)
|
C
|
Float
|
Light Direction Vector (Y-Component)
|
10
|
Float
|
Light Direction Vector (Z-Component)
|
14
|
Float
|
Red
|
18
|
Float
|
Green
|
1C
|
Float
|
Blue
|
20
|
Float
|
Light intensity
|
24
|
Float
|
Ambient R
|
28
|
Float
|
Ambient G
|
2C
|
Float
|
Ambient B
|
In-Level Scenes
Scenes that are labeled as MEXXXX.PRS in the event files are cutscenes that occur within a game state, such as before certain boss fights like Big Foot and Flying Dog. The contents of these files are not as robust as those of the main cutscenes, often only containing animation and shape motion data for the designated characters. As these scenes rely on the player models, specific parts of their body are omitted and replaced with cutscene-specific variants for the duration of the scene, with the exception of Mech Eggman as he only requires animation data. The contents of these files can be broken down as follows:
Offset |
Type |
Description
|
0
|
|
An indicator of the characters in the scene. Can be 01 (Sonic), 02 (Shadow), 03 (Sonic and Shadow), 10 (Knuckles), 20 (Rouge), 30 (Knuckles and Rouge), 80 (Mech Eggman)
|
4
|
Pointer
|
Camera information
|
8
|
Pointer
|
Sonic's pointer array (if applicable)
|
C
|
Pointer
|
Shadow's pointer array (if applicable)
|
18
|
Pointer
|
Knuckles' pointer array (if applicable)
|
1C
|
Pointer
|
Rouge's pointer array (if applicable)
|
24
|
Pointer
|
Mech Eggman's pointer array (if applicable)
|
The order for each character's pointer array always begins with the player model's animations, followed by the model -> animation -> shape motion data sets for each cutscene model. The head's data goes first, followed by the mouth, then the left hand, and finally the right hand.