This article relates to the game "Black Mesa". Click here for more information.

Playermodel manifest.txt

From Valve Developer Community
Jump to navigation Jump to search

The character selection menu in the VGUI.
The character selection in the QtUI.
Black Mesa Level Creation

playermodel_manifest.txt is a txt file available in Black Mesa Black Mesa, placed in scripts folder. This file describes the set of default multiplayer characters, used by servers for player's character data, Qt and VGUI for character selection and character's parameters. The file allows to set following paramaters:

  • Model - path to the model character will use (value must be in lowercase).
  • Label - translatable label used for the name of the character displayed for the character selection.
  • Criteria - name of file taked from scripts/talker_player, the file is a set of responses (VDC scenes) and their rules for the character, this is how different voice lines for the characters are done.
  • Preview - a set of paramaters for character selection model preview in the menu. Used only by VGUI, BlackMesaEngine singleton type also doesn't expose it for Qt. The paramaters are:
    • Weapon - path to the weapon model the character will hold.
    • Body Activity - animation used for the character model.
    • Viewmodel Bodygroup Overrides - a set of bodygroup overrides for weapon's viewmodel. The game uses two viewmodels, the first is the main (index 0), the second is used for the satchel radio viewmodel (index 1). The bodygroup overrides allows to use different models for certain bodygroups, this is how different hands for the characters are done (not by different saparate weapon models or hand viewmodels).
  • Bodygroup Overrides - a set of bodygroup overrides for character's model, used by selected character's skin. Works in the same way as viewmodel bodygroup overrides.

All the default multiplayer characters are: HEV scientist, male scientist, alternative male scientist, female scientist, security guard, alternative security guard, marine, alternative marine, zombie guard, zombie scientist, Gman. There is also unsed models for ZEV, ZECU and female assassin.

The first character is also used for the default character preset.

The rest of character parameters is defined by the game. Amount of skins is defined by the model data, Qt doesn't show skins bar if selected model doesn't provide more than 2). The face sliders are defined by the model data, this feature is only in VGUI, Qt doesn't provide the sliders by default.

Note.pngNote: For custom characters in your servers, it's better to use third-party solutions, Ultimate ModelChooser by Alienmario for example. The reason is because the file can't be changed by servers, this means servers can't add new characters to the player's character selection menu.

Code

// ####### IMPORTANT NOTE

// ####### Ensure all model names are lower case! "playermodel_manifest.txt" { // Default model goes first! "mp_scientist_hev" { "label" "#GameUI_HevSci" "model" "models/player/mp_scientist_hev.mdl" "criteria" "sci_male"

"preview" { "weapon" "models/weapons/w_crowbar.mdl" "body_activity" "ACT_BMMP_IDLE_CROWBAR" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "0" }

"1" { "arms" "0" } } }

"mp_scientist" { "label" "#GameUI_Sci" "model" "models/player/mp_scientist.mdl" "criteria" "sci_male"

"preview" { "weapon" "models/weapons/w_egon.mdl" "body_activity" "ACT_BMMP_IDLE_GLUON" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "2" }

"1" { "arms" "2" } } }

"mp_scientist_02" { "label" "#GameUI_Sci_Alt" "model" "models/player/mp_scientist_02.mdl" "criteria" "sci_male"

"preview" { "weapon" "models/weapons/w_egon.mdl" "body_activity" "ACT_BMMP_IDLE_GLUON" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "2" }

"1" { "arms" "2" } } }

"mp_scientist_female" { "label" "#GameUI_FemSci" "model" "models/player/mp_scientist_female.mdl" "criteria" "sci_female"

"preview" { "weapon" "models/weapons/w_egon.mdl" "body_activity" "ACT_BMMP_IDLE_GLUON" "face_activity" "ACT_DIERAGDOLL" }

// Informs the character model system of which bodygroups are to be activated with what skin. "bodygroup_overrides" { // Skin 0 wants bodygroup "hair" to be "0". "0" { "hair" "0" }

// Skin 1 wants bodygroup "hair" to be "2". "1" { "hair" "2" }

"2" { "hair" "4" }

"3" { "hair" "3" }

"4" { "hair" "4" }

"5" { "hair" "4" }

"6" { "hair" "4" } }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { //this will be "5" when smds are added and qc is updated. "arms" "2" }

"1" { //this will be "5" when smds are added and qc is updated. "arms" "2" } } }

"mp_guard" { "label" "#GameUI_Guard" "model" "models/player/mp_guard.mdl" "criteria" "guard"

"preview" { "weapon" "models/weapons/w_glock.mdl" "body_activity" "ACT_BMMP_IDLE_GLOCK" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "3" }

"1" { "arms" "3" } } }

"mp_guard_02" { "label" "#GameUI_Guard_Alt" "model" "models/player/mp_guard_02.mdl" "criteria" "guard"

"preview" { "weapon" "models/weapons/w_glock.mdl" "body_activity" "ACT_BMMP_IDLE_GLOCK" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "3" }

"1" { "arms" "3" } } }

"mp_marine" { "label" "#GameUI_Marine" "model" "models/player/mp_marine.mdl" "criteria" "marine"

"preview" { "weapon" "models/weapons/w_mp5.mdl" "body_activity" "ACT_BMMP_IDLE_MP5" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "1" }

"1" { "arms" "1" } } }

"mp_marine_02" { "label" "#GameUI_Marine_Alt" "model" "models/player/mp_marine_02.mdl" "criteria" "marine"

"preview" { "weapon" "models/weapons/w_mp5.mdl" "body_activity" "ACT_BMMP_IDLE_MP5" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "1" }

"1" { "arms" "1" } } }

"mp_zombie_guard" { "label" "#GameUI_ZombieGuard" "model" "models/player/mp_zombie_guard.mdl" "criteria" "zombie"

"preview" { "weapon" "models/weapons/w_hgun.mdl" "body_activity" "ACT_BMMP_IDLE_HIVEHAND" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { //This will be "6" once zombie guard smds are made and qc is edited "arms" "5" }

"1" { //This will be "6" once zombie guard smds are made and qc is edited "arms" "5" } } }

"mp_zombie_sci" { "label" "#GameUI_ZombieSci" "model" "models/player/mp_zombie_sci.mdl" "criteria" "zombie"

"preview" { "weapon" "models/weapons/w_hgun.mdl" "body_activity" "ACT_BMMP_IDLE_HIVEHAND" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "4" }

"1" { "arms" "4" } } } "mp_gman" { "label" "#GameUI_G-Man" "model" "models/player/mp_gman.mdl" "criteria" "none"

"preview" { "weapon" "models/weapons/w_hgun.mdl" "body_activity" "ACT_BMMP_IDLE_HIVEHAND" "face_activity" "ACT_DIERAGDOLL" }

"vm_bodygroup_overrides" { //Viewmodel index. (we can have multiple viewmodels in source) "0" { "arms" "6" }

"1" { "arms" "6" } } }

}