Reference: Entities and their models Last edited 3 months ago2024-09-12 02:44:50 UTC

You are viewing an older revision of this wiki page. The current revision may be more detailed and up-to-date. Click here to see the current revision of this page.
This page lists all monster entities and their associated model files. This is intended to be a reference for scripted_sequence where animations are stored in the model files.

There's also the Body and Skin columns which denotes how entities handle such keyvalues if given by mappers.

Towards the end of the page is a little section for prop model placements.

Monsters

Legend

Table columns:
Entity Name of the entity
Model path to model associated with entity
Body How the entity handles the body keyvalue
Skin How the entity handles the skin keyvalue
Values for body and skin:
✔️ Direct value support
📃 Use a fixed enumerated value
Discarded / unused
Unknown, but tend for direct value support
See the notes at the bottom of this page for more info.

Table

Entity Model Body Skin Remarks
monster_alien_babyvoltigore (Half-Life: Opposing Force) models/baby_voltigore.mdl
monster_alien_controller models/controller.mdl
monster_alien_grunt models/agrunt.mdl
monster_alien_slave models/islave.mdl Skin used for attack charge state, but unrealized in stock model.
monster_alien_slave_dead (Half-Life: Opposing Force) models/islave.mdl
monster_alien_voltigore (Half-Life: Opposing Force) models/voltigore.mdl
monster_apache models/apache.mdl
monster_assassin_repel (Half-Life: Opposing Force) models/massn.mdl
monster_babycrab models/baby_headcrab.mdl
monster_barnacle models/barnacle.mdl
monster_barney models/barney.mdl ✔️ Uses different body values for weapon state: hand carry, holstered, none.
monster_barney_dead models/barney.mdl ✔️
monster_bigmomma models/big_mom.mdl
monster_blkop_apache (Half-Life: Opposing Force) models/blkop_apache.mdl
monster_blkop_osprey (Half-Life: Opposing Force) models/blkop_osprey.mdl
monster_bloater models/floater.mdl
monster_bullchicken models/bullsquid.mdl ✔️ Skin used for blinking.
monster_cleansuit_scientist (Half-Life: Opposing Force) models/cleansuit_scientist.mdl 📃 Skin tied to body.
monster_cleansuit_scientist_dead (Half-Life: Opposing Force) models/cleansuit_scientist.mdl 📃 Skin tied to body.
monster_cockroach models/roach.mdl
monster_drillsergeant (Half-Life: Opposing Force) models/drill.mdl
monster_flyer_flock models/aflock.mdl
monster_furniture specified by mapper ✔️ ✔️ Requires scripted_sequence to set sequence.
monster_gargantua models/garg.mdl
monster_geneworm (Half-Life: Opposing Force) models/geneworm.mdl
monster_generic specified by mapper ✔️ ✔️
monster_gman models/gman.mdl
monster_gonome (Half-Life: Opposing Force) models/gonome.mdl
monster_gonome_dead (Half-Life: Opposing Force) models/gonome.mdl
monster_grunt_ally_repel (Half-Life: Opposing Force) models/hgrunt_opfor.mdl Body uses head+weapons combo. Skin always 0.
monster_grunt_repel models/hgrunt.mdl Spawns a grunt programmatically.
monster_handgrenade models/w_grenade.mdl
monster_headcrab models/headcrab.mdl
monster_hevsuit_dead models/player.mdl
monster_hgrunt_dead models/hgrunt.mdl 📃 Always light skin (skin 0).
monster_houndeye models/houndeye.mdl ✔️ Skin used for blinking.
monster_houndeye_dead (Half-Life: Opposing Force) models/houndeye.mdl
monster_human_assassin models/hassassin.mdl
monster_human_grunt models/hgrunt.mdl See page.
monster_human_grunt_ally (Half-Life: Opposing Force) models/hgrunt_opfor.mdl Body uses head+weapons combo. Skin always 0.
monster_human_grunt_ally_dead (Half-Life: Opposing Force) models/hgrunt_opfor.mdl Body uses head+weapons combo. Skin always 0.
monster_human_medic_ally (Half-Life: Opposing Force) models/hgrunt_medic.mdl Body uses head+weapons combo. Skin always 0.
monster_human_torch_ally (Half-Life: Opposing Force) models/hgrunt_torch.mdl Body uses weapons. Skin always 0.
monster_ichthyosaur models/icky.mdl ✔️ Skin used for blinking.
monster_leech models/leech.mdl
monster_male_assassin (Half-Life: Opposing Force) models/massn.mdl
monster_miniturret models/miniturret.mdl
monster_nihilanth models/nihilanth.mdl
monster_op4loader (Half-Life: Opposing Force) models/loader.mdl
monster_osprey models/osprey.mdl
monster_otis (Half-Life: Opposing Force) models/otis.mdl ✔️ Body uses head+bodystate combo.
monster_otis_dead (Half-Life: Opposing Force) models/otis.mdl
monster_pitdrone (Half-Life: Opposing Force) models/pit_drone.mdl
monster_pitworm (Half-Life: Opposing Force) models/pit_worm_up.mdl
monster_pitworm_up (Half-Life: Opposing Force) models/pit_worm_up.mdl
monster_rat models/bigrat.mdl
monster_recruit (Half-Life: Opposing Force) models/recruit.mdl
monster_rosenberg (Half-Life: Blue-Shift) models/scientist.mdl 📃 Skin tied to body. Blue Shift replaces scientist's Slick head to Rosenberg.
monster_satchel models/w_satchel.mdl
monster_scientist models/scientist.mdl 📃 Skin tied to body.
monster_scientist_dead models/scientist.mdl 📃 Skin tied to body.
monster_sentry models/sentry.mdl
monster_shockroach (Half-Life: Opposing Force) models/w_shock_rifle.mdl
monster_sitting_cleansuit_scientist (Half-Life: Opposing Force) models/cleansuit_scientist.mdl 📃 Skin tied to body.
monster_sitting_scientist models/scientist.mdl 📃 Skin tied to body.
monster_skeleton_dead (Half-Life: Opposing Force) models/skeleton.mdl ✔️ ✔️
monster_snark models/w_squeak.mdl
monster_shocktrooper (Half-Life: Opposing Force) models/strooper.mdl
monster_tentacle models/tentacle2.mdl
monster_tripmine models/v_tripmine.mdl
monster_turret models/turret.mdl
monster_zombie models/zombie.mdl ✔️ ✔️ Vault: LD, HD
monster_zombie_barney (Half-Life: Opposing Force) models/zombie_barney.mdl ✔️ ✔️
monster_zombie_soldier (Half-Life: Opposing Force) models/zombie_soldier.mdl ✔️ ✔️
monster_zombie_soldier_dead (Half-Life: Opposing Force) models/zombie_soldier.mdl ✔️ ✔️
Entity Model Body Skin Remarks

Notes

  1. For what direct value support means, and how to calculate the values, consult Entity Programming - Introduction to Entities with Animated Models#Low-level animation control and skip to the part where body and skin are discussed.
  2. The paths are relative to their respective mod folders relative to Half-Life executable:
    • Half-Life = valve/
    • Half-Life: Opposing Force = gearbox/
    • Half-Life: Blue Shift = bshift/
  3. The models in the expansion packs generally have extra animations not present in Half-Life.
  4. Dead monsters usually has an enumeration of pose values.
  5. Applying dead poses to living monsters with scripted_sequences usually don't actually make them dead. Best to use env_sprite for that.

Props

To facilitate prop model placement, this section tabulates properties of select entities, and how they handle keyvalues (body/ skin/ sequence/ frame/ framerate).
Entity Nonsolid/Moveable Body Skin Sequence Frame Framerate Loopable/Freezeable Remarks
cycler ❌/❌ ✔️ ✔️ ✔️ ✔️ ❌→ 1 ✔️/✔️ (Toggle) Beware of cyclic functions.
cycler_sprite ❌/❌ ✔️ ✔️ ✔️ ❌→ 1 ✔️/✔️ (Toggle) "
env_sprite ✔️/❌ ✔️ ✔️ ✴️/✔️ (OFF/ON) Plays a sequence once and then freezes.
monster_furniture ✔️/❌ ✔️ ✔️ ❌* ❌/❌ Requires scripted_sequence to set sequence.
monster_generic 🚩/✔️ ✔️ ✔️ ❌/❌ Alive, aggroes enemies.
Legend
  • Moveable - Whether the entity can be pushed around by other entities
  • 🚩 - Enabled via spawnflag
  • ✴️ - Manual looping required
Notes
  • Corpses of NPCs without dead poses → Use env_sprite with the dying sequence and framerate = 8 to speed it up.
  • Statue in a still pose from a sequence → cycler with sequence and frame set.
  • Animating props → cycler with sequence, or monster_furniture with animating idle pose (or scripted_sequence with idle animation)

4 Comments

Commented 3 months ago2024-09-04 08:43:52 UTC Comment #106363
should we add all other entities not available in the FGD, as well as all other hardcoded models/sprites precached and used by all these entities?
Commented 3 months ago2024-09-05 11:34:11 UTC Comment #106371
I think adding entities used for displaying models, such as cycler* entities and env_sprite, could come in handy for those wanting to use props with multiple body/skin groups.
Commented 3 months ago2024-09-12 08:35:43 UTC Comment #106392
Ah there we go, great work! 🙌
Commented 1 month ago2024-11-19 15:47:16 UTC Comment #106517
the reason env_sprite doesn't support body and skin is that apparently those values were hijacked by the sprite renderer as part of the system that makes sprites attached to models in one of their attachment points.

You must log in to post a comment. You can login or register a new account.