Npc barney

From Valve Developer Community

Table of contents

Entity Description

Barney Calhoun, a former security guard at Black Mesa.

Image:note.png Note: Some keyvalues, flags, inputs, or outputs might not affect an NPC based on the functionality and coding of the NPC.

Dedicated Console Variables

  • sk_barney_health
<integer> Barney's spawn health

Keyvalues

<target_source> The name that other entities refer to this entity by.
  • angles
<angles> This entity's angular orientation in the world (also used for angular effect entities).
  • renderfx
<choices>
Literal Value Description
0 Normal
1 Slow Pulse
2 Fast Pulse
3 Slow Wide Pulse
4 Fast Wide Pulse
5 Slow Fade Away
6 Fast Fade Away
7 Slow Become Solid
8 Fast Become Solid
9 Slow Strobe
10 Fast Strobe
11 Faster Strobe
12 Slow Flicker
13 Fast Flicker
14 Constant Glow
15 Distort
16 Hologram (Distort + fade)
17 Scale up
22 Spotlight FX
23 Cull By Distance (TEST)
24 Fade Wider Pulse
  • rendermode
<choices> Used to set a non-standard rendering mode on this entity. See also 'FX Amount' and 'FX Color'.
Literal Value Description
0 Normal
1 Color
2 Texture
3 Glow
4 Solid
5 Additive
7 Additive Fractional Frame
9 World Space Glow
10 Dont Render
  • renderamt
<integer> The FX amount (0 - 255) is used by the selected Render Mode.
  • rendercolor
<color255> The FX color is used by the selected Render Mode.
  • disablereceiveshadows
<boolean> Disable Recieving Shadows
  • damagefilter
<target_destination> Name of the filter entity that controls which entities can damage us.
  • ResponseContext
<string> Response system context(s) for this entity. Format should be: 'key:value,key2:value2,etc'. When this entity speaks, the list of keys and values will be passed to the response rules system.
  • disableshadows
<boolean> Used to disable dynamic shadows on this entity.
  • target
<target_destination> If set, the name of a path corner entity that this NPC will walk to, after spawning.
  • squadname
<string> NPCs that are in the same squad (i.e. have matching squad names) will share information about enemies, and will take turns attacking and covering each other.
  • hintgroup
<string> Hint groups are used by NPCs to restrict their hint-node searching to a subset of the map's hint nodes. Only hint nodes with matching hint group names will be considered by this NPC.
  • hintlimiting
<boolean> Limits NPC to using specified hint group for navigation requests, but does not limit local navigation.
  • sleepstate
<choices> Holds the NPC in stasis until specified condition. See also 'Wake Radius' and 'Wake Squad'.
Literal valueDescription
0 None
1 Waiting for threat
2 Waiting for PVS
3 Waiting for input
  • wakeradius
<float> Auto-wake if player within this distance
  • wakesquad
<boolean> Wake all of the NPCs squadmates if the NPC is woken
  • physdamagescale
<float> Scales damage energy when this character is hit by a physics object. With a value of 0 the NPC will take no damage from physics.
  • additionalequipment
<choices> Weapons - Allows any weapon
Pick one that is made to function for NPCs
Literal Value Description
weapon_pistol Pistol
weapon_smg1 SMG1
weapon_stunstick Stun Stick
weapon_ar2 AR2
0 Nothing
  • ExpressionOverride
<string> Facial expression override

Flags

  • 1 : Wait Till Seen
  • 2 : Gag (No IDLE sounds until angry)
  • 4 : Fall to ground (unchecked means *teleport* to ground)
  • 8 : Drop Healthkit
  • 16 : Efficient - Don't acquire enemies or avoid obstacles
  • 128 : Wait For Script
  • 256 : Long Visibility/Shoot
  • 512 : Fade Corpse
  • 1024 : Think outside PVS
  • 2048 : Template NPC (will not spawn, used by npc_template_maker but not point_template)
  • 4096 : Do Alternate collision for this NPC (player avoidance)
  • 8192 : Don't drop weapons

Inputs

  • Kill
Removes this entity from the world.
  • KillHierarchy
Removes this entity and all its children from the world.
  • AddOutput <string>
Adds an entity I/O connection to this entity. It can be potentially very dangerous, use with care.
Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>
  • FireUser1-4
Causes this entity's OnUser1-4 outputs to be fired. See User Inputs and Outputs.
Set the rendercolor.
Set the renderamt.
  • SetDamageFilter <target_destination>
Sets the entity to use as damage filter. Pass in an empty string to clear the damage filter.
  • AddContext <string>
Adds a context to this entity's list of response contexts. The format should be 'key:value'.
  • RemoveContext <string>
Remove a context from this entity's list of response contexts. The name should match the 'key' of a previously added context.
  • ClearContext
Removes all contexts in this entity's list of response contexts.
  • DisableShadow
Turn shadow off.
  • EnableShadow
Turn shadow on.
  • SetRelationship <string>
Changes this entity's relationship toward another entity or class. (Used like the ai_relationship entity, with this NPC as the subject.)
Format: <target> <disposition> <rank>
<disposition> values:
Literal Value Description
D_HT Hate
D_FR Fear
D_LI Like
D_NU Neutral
  • SetHealth <integer>
Set this NPC's health.
  • SetBodyGroup <integer>
HACK: Sets this NPC's body group (from 0 - n). You'd better know what you are doing!
  • physdamagescale <float>
Sets the value that scales damage energy when this character is hit by a physics object.
Image:note.png Note: 0 means this feature is disabled for backwards compatibility.
  • Ignite
Ignite, burst into flames
  • Break
Break, smash into pieces
  • StartScripting
Enter scripting state. In this state, NPCs ignore a variety of stimulus that would make them break out of their scripts: They ignore danger sounds, ignore +USE, don't idle speak or respond to other NPC's idle speech, and so on.
  • StopScripting
Exit scripting state.
  • Assault <target_destination>
Start an assault. Parameter passed in should be the name of the rally point.
  • SetSquad <string>
Set the name of this NPC's squad. It will be removed from any existing squad automatically. Leaving the parameter blank will remove the NPC from any existing squad.
  • Wake
Wakes up the NPC if it is sleeping.
  • ForgetEntity <target_destination>
Clears out the NPC's knowledge of a named entity.
  • GagEnable
Turn on the NPC Gag flag. NPC won't speak outside of choreographed scenes.
  • GagDisable
Turn off the NPC Gag flag.
  • IgnoreDangerSounds <float>
Ignore danger sounds for the specified number of seconds.
  • SetReadinessLow
Set readiness to calmest state (Bored)
  • SetReadinessMedium
Set readiness to moderate (Alert)
  • SetReadinessHigh
Set readiness to highest. (Combat imminent)
  • LockReadiness <float>
Lock readiness at current setting for x seconds -1 = forever, 0 = unlock now
  • SetExpressionOverride <string>
Set facial expression override

Outputs

  • OnDamaged
Fired when this NPC takes damage. !activator = damage inflictor
  • OnDeath
Fired when this NPC is killed. !activator = killer
  • OnHalfHealth
Fired when this NPC reaches half of its maximum health.
  • OnHearWorld
Fired when this NPC hears a sound (other than combat or the player).
  • OnHearPlayer
Fired when this NPC hears the player.
  • OnHearCombat
Fired when this NPC hears combat sounds.
Fired when this NPC establishes line of sight to its enemy (outputs entity).
  • OnLostEnemyLOS
Fired when this NPC loses line of sight to its enemy.
  • OnLostEnemy
Fired when this NPC loses its enemy. Usually due to the enemy being killed/removed, or because this NPC has selected a newer, more dangerous enemy.
Fired when this NPC establishes line of sight to its enemy, and that enemy is a player (outputs player entity).
  • OnLostPlayerLOS
Fired when this NPC loses line of sight to its enemy, and that enemy is a player.
  • OnLostPlayer
Fired when this NPC loses its enemy, and that enemy was a player. Usually due to the enemy being killed/removed, or because this NPC has selected a newer, more dangerous enemy.
  • OnDamagedByPlayer
Fired when this NPC is hurt by a player. !activator = attacker or vehicle driver (if friendly fire)
  • OnDamagedByPlayerSquad
Fired when this NPC is hurt by a player OR by one of the player's squadmates. !activator = attacker or vehicle driver (if friendly fire)
  • OnDenyCommanderUse
Fired when this NPC has refused to join the player's squad.
  • OnWake
Fired when this NPC comes out of a sleep state.