Frame commands
From The DarkMod Wiki
Introduction
Each animation can have commands attached. These are either global (they influence the entire animation), or per-frame (they do something at the frame with the given number).
Apart from the default D3 frame commands, the darkmod team has added a few new, useful frame commands. This page tries to describe them all.
Default Doom3 frame commands
| Keyword | Description | Example |
|---|---|---|
| call | calls a global script function | frame 1 call overrideLegs
|
| object_call | calls a script object function | frame 1 object_call ArrowInvisible
|
| event | Calls an event function | Unused so far
|
| sound | Plays the referenced sound shader on the general sound channel. | frame 12 sound readable_page_turn
|
| sound_voice | Plays the referenced sound shader on the voice sound channel. | frame 23 sound_voice snd_sight
|
| sound_voice2 | Plays the referenced sound shader on the second voice sound channel. | frame 1 sound_voice2 monster_boss_vagary_attack1
|
| sound_body | Plays the referenced sound shader on the body sound channel. | frame 50 sound_body snd_footstep
|
| sound_body2 | Plays the referenced sound shader on the second body sound channel. | frame 92 sound_body2 snd_footstep
|
| sound_body3 | Plays the referenced sound shader on the third body sound channel. | Not used so far, but similiar to sound_body
|
| sound_weapon | Plays the referenced sound shader on the weapon sound channel. | frame 16 sound_weapon snd_drawsword
|
| sound_global | Plays the referenced sound shader on the global sound channel. | Not used so far, but similiar to sound_body
|
| sound_item | Plays the referenced sound shader on the item sound channel. | Not used so far, but similiar to sound_body
|
| sound_chatter | Plays the referenced sound shader on the chatter sound channel. | frame 57 sound_chatter snd_alert_idle
|
| skin | Sets a new skin for the model. Skin name is optional, if left off, no skin (e.g. the default skin) is used. | frame 1 skin tdm_burnt_flesh
|
| fx | Plays the named fx (effect combining particle, sound and light). | Not used so far
|
| trigger | Triggers the given target (e.g. activates it). | Not used so far
|
| triggerSmokeParticle | Triggers the named particle (which can be everything, not just smoke). | frame 1 triggerSmokeParticle smokestack
|
| melee | Starts melee action? | frame 9 melee melee_elemental_fire
|
| direct_damage | Does direct damage to the target entity. | Not used so far.
|
| muzzle_flash | Used to flash the weapon muzzle. | Not used so far.
|
| attack | Attack the named entity. | Not used so far.
|
| attack_begin | Begin an attack. | Not used so far.
|
| attack_end | Stop an attack. | Not used so far.
|
| create_missile | Create (in the def specified) missile at the given attachment position. | frame 2 create_missile RMissile
|
| launch_missile | Launches a missile from the given attachment position. | frame 16 launch_missile LeftHand
|
| fire_missile_at_target | Fires a missile at the target. | Not yet used.
|
| footstep | Unknown. | frame 12 footstep
|
| leftfoot | Unknown. | frame 12 leftfoot
|
| rightfoot | Unknown. | frame 12 rightfoot
|
| enableEyeFocus | Unknown. |
|
| disableEyeFocus | Unknown. |
|
| disableGravity | Gravity no longer affacts this model. |
|
| enableGravity | Gravity affacts this model again. |
|
| jump | Makes it jump. |
|
| enableClip | Unknown |
|
| disableClip | Unknown |
|
| enableWalkIK | Unknown |
|
| disableWalkIK | Unknown |
|
| enableLegIK | Unknown |
|
| recordDemo | Unknown |
|
| aviGame | Unknown |
|
TDM frame commands
| Keyword | Description | Version | Example |
|---|---|---|---|
| setRate | Sets the anim rate, used for speeding up/slowing down walking and crouchwalking animations to get correct footstep sounds. | TDM v1.00 and later. |
|
| reattach | Move an attachment to a different position. Used f.i. to move the weapon from the back to hand. | TDM v1.00 and later. | frame 16 reattach melee_weapon hand_r
|
| pause | Pause the animation at its current frame, wait for unpause from somewhere else. | TDM v1.00 and later. | Not used yet.
|
| melee_hold | Holds a melee attack at a given point in the animation (e.g., at the back swing in attacks, at the parry position in parries). Similar to pause but also updates actor's melee status. | TDM v1.00 and later. | frame 6 melee_hold
|
| melee_attack_start | TDM v1.00 and later. | frame 16 melee_attack_start melee_weapon slash_rl
| |
| melee_attack_stop | TDM v1.00 and later. | frame 16 melee_attack_stop weapon
| |
| melee_parry_start | TDM v1.00 and later. | frame 5 melee_parry_start melee_weapon left
| |
| melee_parry_stop | TDM v1.00 and later. | frame 5 melee_parry_stop melee_weapon
| |
| set_combat_flag | TDM v1.00 and later. | frame 16 set_combat_flag melee
| |
| clear_combat_flag | TDM v1.00 and later. | frame 16 clear_combat_flag melee
| |
| attach | Spawns an entity of the given class and attaches it with the given attach name on the given attach position. | TDM v1.02 and later. | frame 42 attach atdm:prop_single_card card hand_r
|
| destroy | Detach and destroy the entity at the named attachment. Usually used after attach. | TDM v1.02 and later. | frame 42 destroy card
|
| drop | Detach and drop to world the entity at the named attachment. Usually used after pickup. | TDM v1.02 and later. | frame 42 drop bucket
|
| pickup | Find the entity with the given name, then attach it as the named attachment at the given position. See this article for more information. | TDM v1.02 and later. | frame 42 pickup atdm_water_bucket_01 bucket hand_l
|
| activate_at_joint | Activate the entity attached to the given joint. | TDM v1.02 and later. | frame 42 activate_at_joint hand_r
|
| activate_near | Find the entity with the given name, near (attached or not) the given joint, then activate it. See this article for more information. | TDM v1.02 and later. | frame 42 activate_near hand_r
|