$keyvalues
Jump to navigation
Jump to search
$keyvalues
is a QC command available in all Source games. It embeds a block of arbitrary keyvalues into the .mdl file.
Note:Since the values are arbitrary, studiomdl can't check that they are correct when it compiles the model.
Programmers can access the $keyvalues block with modelinfo->GetModelKeyValueText(GetModel())
and the KeyValues
class.
Syntax
$keyvalues { keyvalue data }
Common KeyValues
See Category:QC Keyvalues for a complete list.
prop_data
- Defines various properties for models for use in Valve's prop_* entities - usually prop_physics.
physgun_interactions
- Defines any non-standard interactions with the Gravity Gun.
particles
- Attaches particles.
door_options
- Configures the model for use with prop_door_rotating.
vehicle_entry
- Positions where the player will enter into a vehicle, where the player's camera will blend into the vehicle's camera position ( eyes ). It is defined by attachments with a number to indicate the hitbox group, set previously on any hitbox within a hitbox set called "entryboxes".
vehicle_exit
- Positions where the player will exit from a vehicle. Defined by the name of an attachment and if is intended to be used while the vehicle is upright ( "upright" ) or upside down ( "upsidedown" ).
vehicle_escape_exit
- Positions where the player will exit from a vehicle in case there are problems ( underwater, upside down, other events... ). Same definitions as in vehicle_exit.
AddedAmbientScale <int>
- Softens the ambient lighting received by this model. Present in L4D2 infected.
Example
$keyvalues { prop_data { base Wooden.Small dmg.bullets 0 explosive_damage 100 explosive_radius 100 } physgun_interactions { onfirstimpact break onfirstimpact paintsplat onlaunch spin_zaxis onbreak explode_fire } // hud_name has been made up as an example of a one-dimensional custom KV. // (If you were being picky, you might point out that it ought to be localised ...) hud_name "Rubber chicken with a pulley in the middle" }
$keyvalues { vehicle_entry { "enter1" "1" "enter2" "2" "enter3" "3" "enter4" "1" "enter5" "2" "enter6" "3" "enter7" "1" } vehicle_exit { "exit3" "upright" "exit4" "upright" "exit6" "upsidedown" } vehicle_escape_exit { "exit1" "upright" "exit2" "upright" "exit5" "upsidedown" "exit7" "upright" "exit8" "upsidedown" } }