Revision Difference
Player_Animations#561046
<cat>Dev.Model</cat>
Player model animations have been largely enhanced in Garry's Mod 13 (update 143). The movement system was switched to 9-way (used in Team Fortress 2), current sequences were polished/tweaked, IK rules added, and last but not least, new animations were added, which gamemodes can use for added eyecandy!
Keep in mind that this effectively segregates NPC models and playermodels, as the former use 8-way. **This makes most of the Half-Life 2 NPC animations incompatible with the player animation system.**
# GitHub repository
The entirety of the animation sources are available on [this GitHub repo](https://github.com/robotboy655/gmod-animations).
# For creators
## Playermodels
The skeleton used is the standard HL2 ValveBiped. It can be either Valve's male or female variants.
Playermodel creators should [include](https://developer.valvesoftware.com/wiki/$includemodel) the following in their QCs:
* `m_anm.mdl` (men)
* `f_anm.mdl` (women)
* `z_anm.mdl` (zombies)
Make sure that your model's QC does not have any sequences that are tied to activities (including ACT_IDLE), or they may override the actual animations. As for making playermodels, the Valve Developer Wiki covers this already; nevertheless, here are [helpful .QCI includes](https://github.com/robotboy655/gmod-animations/raw/master/gm_anim_includes.7z)!
## Animators
A QC source set is available [here](https://github.com/robotboy655/gmod-animations/raw/master/gm_anim_src.7z).
It contains examples for all movement types. You can then use this in your own player models (it is technically impossible at the moment to *add* onto the existing animations, sadly).
# List of activities
Check the <page>Enums/ACT</page>.
## Movement types
* `ACT_HL2MP_IDLE_***` (standing still)
* `ACT_HL2MP_SIT_***` (sitting)
* `ACT_HL2MP_WALK_***` (walking)
* `ACT_HL2MP_RUN_***` (running)
* `ACT_HL2MP_JUMP_***` (jumping)
* `ACT_HL2MP_IDLE_CROUCH_***` (standing still while crouched)
* `ACT_HL2MP_WALK_CROUCH_***` (walking while crouched)
* `ACT_HL2MP_SWIM_IDLE_***` (swimming, not moving)
* `ACT_HL2MP_SWIM_***` (swimming, moving)
## Special movement activities
* `ACT_HL2MP_RUN` (running without any weapons; resembles jogging, especially for the girls.)
* `ACT_HL2MP_RUN_FAST` (equivalent to sprinting; looks a lot more like running, as if it were for a race)
* `ACT_HL2MP_RUN_CHARGING` (left forearm forwards; similar to L4D2's charger in nature.)
* `ACT_HL2MP_RUN_PANICKED` (arms in non-standard positions)
* `ACT_HL2MP_RUN_PROTECTED` (left arm used to cover head)
## Aimlayers
Also known as **aim matrices** or **hold types**.
* `ar2`
* `camera`
* `crossbow`
* `duel` (dual pistols)
* `fist`
* `grenade`
* `gravgun`
* `knife`
* `melee`
* `melee2` (two-handed melee weapons)
* `passive` (not aiming in front)
* `pistol` (one-handed small firearms, some knockback on attack anim)
* `revolver` (two-handed small firearms, heavier knockback on attack anim)
* `rpg`
* `shotgun`
* `slam`
* `smg`
## Showoff
There are several idle poses available to addon / gamemode creators under these activities.
* `ACT_GMOD_SHOWOFF_STAND_***`
* `ACT_GMOD_SHOWOFF_DUCK_***`
They were done with "showing off / posing next to something you built, for a picture" in mind — though you can of course use them for whatever else.
## Taunts & gestures
Taunts are animations which were done with "no items held by the model" in mind. As such, weapons should be hidden while these activities play.
* `ACT_GMOD_TAUNT_CHEER` ("hell yeah")
* `ACT_GMOD_TAUNT_LAUGH` (self explanatory)
* `ACT_GMOD_TAUNT_LAUGH` (also self explanatory)
* `ACT_GMOD_TAUNT_MUSCLE` (long "sexy" dance)
* `ACT_GMOD_TAUNT_PERSISTENCE` (wip, unused)
* `ACT_GMOD_TAUNT_ZOMBIE` (zombie tantrum)
* `ACT_GMOD_GESTURE_AGREE` (thumbs up)
* `ACT_GMOD_GESTURE_BECON` (waving to say "come on")
* `ACT_GMOD_GESTURE_DISAGREE` (waving the finger to say "no")
* `ACT_GMOD_GESTURE_SALUTE` (slightly silly military-style salute)
* `ACT_GMOD_GESTURE_WAVE` (waving to say "hello")
* `ACT_GMOD_GESTURE_ITEM_DROP`
* `ACT_GMOD_GESTURE_ITEM_GIVE`
* `ACT_GMOD_GESTURE_ITEM_PLACE`
* `ACT_GMOD_GESTURE_ITEM_THROW`
The above are usually accessible by any player by using the "act" command, e.g.
```
act salute
```
— unless the gamemode restricts it.
Gmod will, by default, switch to a taunt cam while playing these.
## Other
## Multiplayer-oriented activities
* `ACT_LAND` links to a delta sequence that adds recoil to the player when landing from a jump.
* `ACT_GMOD_IN_CHAT` will put the player's left hand to his ear. This is used when typing.
* `ACT_GMOD_DEATH` links to [death animations](https://i.imgur.com/E3X5Vq3.gif) (think TF2-style). The actual code implementation is up to you.
* `ACT_GMOD_DEATH` links to [death animations](https://files.facepunch.com/wiki/files/ab571/8dc3894c9f3f620.gif) (think TF2-style). The actual code implementation is up to you.
## 9-way and 8-way
* 9-way: two pose parameters, move_x and move_y, control the direction and "intensity" of the movement.
* 8-way: a single pose parameter, move_yaw, controls the angle of the movement.
The main difference is that 9-way allows for smooth transitions between idle and its closest movement states. The player animations were switched to 9-way for Gmod 13; Half-Life 2's NPCs, however, are still 8-way.