Animation Events (File Format): Difference between revisions

From Retro Modding Wiki
Jump to navigation Jump to search
imported>Jackoalan
imported>Jackoalan
Line 257: Line 257:
|long
|long
|sound_id
|sound_id
|16-bit [[AGSC (File Format)|AGSC]] ''sound-id'' indirected via [[ATBL (File Format)|ATBL]]
|Lower 16-bits are [[AGSC (File Format)|AGSC]] ''sound-id'' indirected via [[ATBL (File Format)|ATBL]]. Most-significant bit is a ''looped'' flag
|-
|-
|+0x4
|+0x4

Revision as of 00:25, 25 February 2015

This file format is almost completely documented
Some event parameters need research

The EVNT format is a companion to ANIM resources. Animators are able to synchronize functional events to rigged animations for things like sound effects, visual effects, character messages, and playback control.

Data Type Element Count Identifier Notes
long 1 version 0x1 or 0x2
long 1 loop_event_count
Loop Event loop_event_count loop_events
long 1 uevt_event_count Version 0x2 only
UEVT Event uevt_event_count uevt_events Version 0x2 only
long 1 effect_event_count
Effect Event effect_event_count effect_events
long 1 sound_event_count
Sound Event sound_event_count sound_events

Event Base

Offset Length Data Type Identifier Notes
<start> 2 short unknown0
+0x2 <null-term> string event_name
++0x0 2 short event_type Enumerated event type (unknown values)
++0x2 4 float event_timestamp Time (in seconds) from start of ANIM to trigger event
++0x6 4 long unknown1
++0xA 4 long event_index Index of event unique from other events (perhaps used to maintain a triggered bitmap)
++0xE 1 bool unknown2 Unknown Flag
++0xF 4 float unknown3
++0x13 4 float unknown4
++0x17 4 long unknown5

RWK Note: The props string is formatted as: Type:<event_type> <unknown1> <unknown2> <unknown3> <unknown4> <unknown5>

Loop Event

Offset Length Data Type Identifier Notes
<start> <varies> Event Base event_base
+0x0 1 bool unknown_flag

UEVT Event

Offset Length Data Type Identifier Notes
<start> <varies> Event Base event_base
+0x0 4 long uevt_type Enumerated UEVT type (unknown values)
+0x4 <null-term> string bone_name CINF Bone Name (for applicable events)

Effect Event

Offset Length Data Type Identifier Notes
<start> <varies> Event Base event_base
+0x0 4 long frame_count Number of frames to run effect-emitter for
+0x4 4 long effect_type FourCC of effect's type (PART, SWHC, ELSC)
+0x8 4 long effect_ref ID of effect resource
+0xC <null-term> string bone_name CINF Bone Name (for transforming effects)
++0x0 4 float effect_scale Proportional-scale to applied to effect in scene
++0x4 4 long transform_type Enumerated transform-mode relating effect to actor's bone:
  1. Effect-emitter transformed to bone for initial frame, then retained
  2. Effect-emitter continuously transformed to bone
  3. Entire effect (particle instances and all) continuously transformed to bone

Sound Event

Offset Length Data Type Identifier Notes
<start> <varies> Event Base event_base
+0x0 4 long sound_id Lower 16-bits are AGSC sound-id indirected via ATBL. Most-significant bit is a looped flag
+0x4 4 float ref_amplitude Reference amplitude for audio attenuation
+0x8 4 float ref_distance Reference distance for audio attenuation