Difference between revisions of "Npc merchant"

From Obsidian Conflict Wiki
Jump to: navigation, search
m (Reverted edits by ZelraCcacn (Talk) to last version by Neico)
(Outputs)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{oc ent}}
 
{{oc ent}}
{{stub}}
+
 
 +
 
 +
 
 +
== Entity description ==
 +
 
 +
This entity spawns a merchant. By default, it uses the Barney model, but it can be changed. The merchant npc is similar to the npc_civilian, however it does not move on it's own. It accepts a merchant script which you can find examples of in the scripts/merchants directory. The merchant cannot be harmed by the player and will be attacked by enemy npcs, however will not be harmed.
 +
 
 +
There is a tutorial about merchants in the [http://obsidianconflict.net/forums/viewtopic.php?f=6&t=3409&start=0 forum] made by Tysn.
 +
 
 +
== Key values ==
 +
 
 +
*'''Name''' ''targetname'' <target_source> The name that other entities refer to this entity by.
 +
 
 +
*'''Pitch Yaw Roll (Y Z X)''' ''angles'' <angle> This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.
 +
 
 +
*'''Render FX''' ''renderfx'' <choices> Gives objects special render effects. Think of it as modifying whatever the Render Mode puts out. The options are as follows:
 +
        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 and Fade)
 +
 
 +
*'''Render Distance''' ''renderdist'' <integer> currently only useable in combination with Hologram RenderFX
 +
 
 +
*'''Render Mode''' ''rendermode'' <choices> Used to set a non-standard rendering mode on this entity. See also 'FX Amount' and 'FX Color'. Controls the type of rendering that is used for an object. Options are:
 +
        0 = Normal
 +
        1 = Color
 +
        2 = Texture
 +
        3 = Glow
 +
        4 = Solid
 +
        5 = Additive
 +
 
 +
*'''FX Amount (0 - 255)''' ''renderamt'' <integer> The FX amount is used by the selected Render Mode.
 +
 
 +
*'''FX Color (R G B)''' ''rendercolor'' <color255> The FX color is used by the selected Render Mode.
 +
 
 +
*'''Disable Receiving Shadows''' ''disablereceiveshadows'' <choices>
 +
 
 +
*'''Damage Filter''' ''damagefilter'' <target_destination> Name of the filter entity that controls which entities can damage us.
 +
 
 +
*'''Response Contexts''' ''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 & values will be passed to the response rules system.
 +
 
 +
*'''Disable shadows''' ''disableshadows'' <choices>
 +
 
 +
*'''Target Path Corner''' ''target'' <target_destination> If set, the name of a path corner entity that this NPC will walk to, after spawning.
 +
 
 +
*'''Squad Name''' ''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.
 +
 
 +
*'''Hint Group''' ''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.
 +
 
 +
*'''Hint Limit Nav''' ''hintlimiting'' <choices> Limits NPC to using specified hint group for navigation requests, but does not limit local navigation.
 +
 
 +
*'''spawnflags''' ''spawnflags'' <flags>
 +
 
 +
*'''Sleep State''' ''sleepstate'' <choices> Holds the NPC in stasis until specified condition. See also 'Wake Radius' and 'Wake Squad'.
 +
 
 +
*'''Wake Radius''' ''wakeradius'' <float> Auto-wake if player within this distance
 +
 
 +
*'''Wake Squad''' ''wakesquad'' <choices> Wake all of the NPCs squadmates if the NPC is woken
 +
 
 +
*'''Enemy Filter''' ''enemyfilter'' <target_destination> Filter by which to filter potential enemies
 +
 
 +
*'''Ignore unseen enemies''' ''ignoreunseenenemies'' <choices> Prefer visible enemies, regardless of distance or relationship priority
 +
 
 +
*'''Physics Impact Damage Scale''' ''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.
 +
 
 +
*'''Health''' ''npchealth'' <integer> Number of points of damage to take before dying. 0 means use default health.
 +
 
 +
*'''Custom Name''' ''npcname'' <string> Name that will appear when your crosshair is on this npc. If left blank, it will display the classname of this npc.
 +
 
 +
*'''Custom Model''' ''model'' <studio>
 +
 
 +
*'''NPC Owner''' ''npcownerent'' <target_destination> Changes interactions between this ent and the chosen ent.
 +
 
 +
*'''Team''' ''teamnumber'' <choices> Sets this NPC's team.  NPCs are agressive to everything not on their team.  Only has an effect if teamplay is enabled in your map.
 +
 
 +
*'''Bounding Box Min''' ''CustomBounding1'' <string> Bounding Box Min Vector(three spaced numbers, no commas), the bottom most point of this NPCs bounding box. ( Do not use negative values! ) Custom Boundingbox which should encompass all hitboxes. Hitboxes not encompased will not be used.
 +
 
 +
*'''Bounding Box Max''' ''CustomBounding2'' <string> Bounding Box Max Vector(three spaced numbers, no commas), the top most point of this NPCs bounding box. ( Do not use negative values! ) Custom Boundingbox which should encompass all hitboxes. Hitboxes not encompased will not be used.
 +
 
 +
*'''Use Sentence''' ''UseSentence'' <string>
 +
 
 +
*'''Un-Use Sentence''' ''UnUseSentence'' <string>
 +
 
 +
*'''Don't Use Speech Semaphore''' ''DontUseSpeechSemaphore'' <choices> Friendly NPCs are not allowed to speak if another friendly NPC is speaking. In some cases we don't want speaking NPCs to prevent other NPCs from speaking (for instance, if there is a friendly NPC speaking for a long time on a monitor). To make this NPC not prevent other NPCs from talking, make it not grab the semaphore when it speaks.
 +
 
 +
*'''Always transition''' ''AlwaysTransition'' <choices> If yes, this NPC will always teleport to a Player Squad Transition Point if they're not within the trigger_transition volume.
 +
 
 +
*'''Prevent picking up weapons?''' ''DontPickupWeapons'' <choices> If yes, this NPC will NOT be allowed to pick up weapons they find on the ground.
 +
 
 +
*'''Is this a vital ally?''' ''GameEndAlly'' <choices> If yes, this NPC will cause the game to end if killed.
 +
 
 +
*'''Weapons''' ''additionalequipment'' <choices>
 +
 
 +
*'''Facial expression override''' ''ExpressionOverride'' <string>
 +
 
 +
*'''Merchant Script name''' ''MerchantScript'' <string>
 +
 
 +
*'''Merchant Icon Material''' ''MerchantIconMaterial'' <string>
 +
 
 +
*'''Show Merchant Icon?''' ''ShowIcon'' <choices>
 +
 
 +
*'''Icon Height''' ''IconHeight'' <integer> Height Above Merchant
 +
 
 +
 
 +
== 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. Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>. Very dangerous, use with care.
 +
 
 +
*'''FireUser1''' Causes this entity's OnUser1 output to be fired.
 +
 
 +
*'''FireUser2''' Causes this entity's OnUser2 output to be fired.
 +
 
 +
*'''FireUser3''' Causes this entity's OnUser3 output to be fired.
 +
 
 +
*'''FireUser4''' Causes this entity's OnUser4 output to be fired.
 +
 
 +
*'''Alpha''' <integer> Set the sprite's alpha (0 - 255).
 +
 
 +
*'''Color''' <color255> Set the sprite's color (R G B).
 +
 
 +
*'''SetDamageFilter''' <string> 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 with another entity or class. Format: <entityname/classname> <D_HT/D_FR/D_LI/D_NU> <priority>
 +
 
 +
*'''SetEnemyFilter''' <string> Changes this NPC's enemy filter to the named filter.
 +
 
 +
*'''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. NOTE: 0 means this feature is disabled for backwards compatibility.
 +
 
 +
*'''Ignite''' Ignite, burst into flames
 +
 
 +
*'''IgniteLifetime''' <float> Ignite, with a parameter lifetime.
 +
 
 +
*'''IgniteNumHitboxFires''' <integer> Ignite, with a parameter number of hitbox fires.
 +
 
 +
*'''IgniteHitboxFireScale''' <float> Ignite, with a parameter hitbox fire scale.
 +
 
 +
*'''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.
 +
 
 +
*'''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''' <string> 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.
 +
 
 +
*'''HolsterWeapon''' Force the NPC to holster their weapon. Ignored if the NPC is scripting, if the NPC's weapon is already holstered, or if the NPC doesn't use weapons.
 +
 
 +
*'''HolsterAndDestroyWeapon''' Identical to HolsterWeapon, except the weapon is destroyed once it has been holstered and concealed.
 +
 
 +
*'''UnholsterWeapon''' Force the NPC to draw their weapon. Ignored if the NPC is scripting, if the NPC's weapon is already drawn, or if the NPC doesn't use weapons.
 +
 
 +
*'''ForceInteractionWithNPC''' <string> Force the NPC to use a dynamic interaction with another NPC. Parameter format: <target NPC name> <dynamic interaction name>
 +
 
 +
*'''UpdateEnemyMemory''' <string> Update (or Create) this NPC's memory of an enemy and its location
 +
 
 +
'''BecomeRagdoll''' This NPC will instantly become a ragdoll with ZERO force (just go limp). OnDeath, OnHalfHealth, etc. Outputs *will **NOT** BE FIRED.
 +
 
 +
*'''OutsideTransition''' Use this input to teleport the NPC to a hintnode with the Player Squad Transition Point hint type.
 +
 
 +
*'''EnableAlwaysTransition''' Enable the 'always transition' behavior
 +
 
 +
*'''DisableAlwaysTransition''' Disable the 'always transition' behavior
 +
 
 +
*'''EnableSpeakWhileScripting''' Allow this NPC to speak responses while in a scripted sequence or while StartScripting is active.
 +
 
 +
*'''DisableSpeakWhileScripting''' Cancels this NPC's ability to speak responses while in a scripted sequence or while StartScripting is active if it was previously enabled by EnableSpeakWhileScripting.
 +
 
 +
*'''MakeGameEndAlly''' Make this NPC a game end ally.
 +
 
 +
*'''MakeRegularAlly''' Make this NPC a regular ally.
 +
 
 +
*'''EnableWeaponPickup''' Enable Weapon Pickup.
 +
 
 +
*'''DisableWeaponPickup''' Disable Weapon Pickup.
 +
 
 +
*'''GiveWeapon''' <string> Gives the NPC a weapon of the specified entity name.
 +
 
 +
*'''SetReadinessPanic''' Set readiness to panic state (Special)
 +
 
 +
*'''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
 +
 
 +
*'''ClearAllOutputs''' Obliterate every output that this NPC has.
 +
 
 +
*'''SetExpressionOverride''' <string> Set facial expression override
 +
 
 +
 
 +
== Outputs ==
 +
 
 +
*'''OnUser1''' Fired in response to FireUser1 input.
 +
 
 +
*'''OnUser2''' Fired in response to FireUser2 input.
 +
 
 +
*'''OnUser3''' Fired in response to FireUser3 input.
 +
 
 +
*'''OnUser4''' Fired in response to FireUser4 input.
 +
 
 +
*'''OnDamaged''' Fired when this NPC takes damage.
 +
 
 +
*'''OnDeath''' Fired when this NPC is killed.
 +
 
 +
*'''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.
 +
 
 +
*'''OnFoundEnemy''' <string> 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.
 +
 
 +
*'''OnFoundPlayer''' <string> 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.
 +
 
 +
*'''OnDamagedByPlayerSquad''' Fired when this NPC is hurt by a player OR by one of the player's squadmates.
 +
 
 +
*'''OnDenyCommanderUse''' Fired when this NPC has refused to join the player's squad.
 +
 
 +
*'''OnSleep''' Fired when this NPC enters a sleep state.
 +
 
 +
*'''OnWake''' Fired when this NPC comes out of a sleep state.
 +
 
 +
*'''OnForcedInteractionStarted''' Fired when the NPC starts a forced interaction.
 +
 
 +
*'''OnForcedInteractionAborted''' Fired when the NPC aborts a forced interaction for some reason (target NPC died, couldn't be pathed to, etc)
 +
 
 +
*'''OnForcedInteractionFinished''' NPCs in actbusies can no longer perform dynamic interactions.
 +
 
 +
*'''OnWeaponPickup''' Fires when this NPC picks a weapon off the ground or a gun rack.
 +
 
 +
*'''OnPlayerUse''' Fires when a player +USEs
 +
 
 +
== Flags ==
 +
 
 +
*Wait Till Seen 
 +
*Gag (No IDLE sounds until angry)
 +
*Fall to ground (unchecked means "teleport" to ground)
 +
*Drop Healthkit
 +
*Efficient - Don´t acquire enemies or avoid obstacles
 +
*Wait for script
 +
*Long visibility/shoot
 +
*Think outside PVS
 +
*Template NPC (used by npc_maker, will not spawn)
 +
*Do Alternate collision for this npc (player avoidance)
 +
*Don´t drop weapons
 +
*Ignore player push (dont give away to player)
 +
*Do NOT fade corpse

Latest revision as of 21:23, 30 January 2012

Entity.png This Page contains informations about an Obsidian Conflict Entity, which means it is only availible for Obsidian Conflict or rather in that form it is explained.


Entity description

This entity spawns a merchant. By default, it uses the Barney model, but it can be changed. The merchant npc is similar to the npc_civilian, however it does not move on it's own. It accepts a merchant script which you can find examples of in the scripts/merchants directory. The merchant cannot be harmed by the player and will be attacked by enemy npcs, however will not be harmed.

There is a tutorial about merchants in the forum made by Tysn.

Key values

  • Name targetname <target_source> The name that other entities refer to this entity by.
  • Pitch Yaw Roll (Y Z X) angles <angle> This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.
  • Render FX renderfx <choices> Gives objects special render effects. Think of it as modifying whatever the Render Mode puts out. The options are as follows:
       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 and Fade)
  • Render Distance renderdist <integer> currently only useable in combination with Hologram RenderFX
  • Render Mode rendermode <choices> Used to set a non-standard rendering mode on this entity. See also 'FX Amount' and 'FX Color'. Controls the type of rendering that is used for an object. Options are:
       0 = Normal
       1 = Color
       2 = Texture
       3 = Glow
       4 = Solid
       5 = Additive
  • FX Amount (0 - 255) renderamt <integer> The FX amount is used by the selected Render Mode.
  • FX Color (R G B) rendercolor <color255> The FX color is used by the selected Render Mode.
  • Disable Receiving Shadows disablereceiveshadows <choices>
  • Damage Filter damagefilter <target_destination> Name of the filter entity that controls which entities can damage us.
  • Response Contexts 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 & values will be passed to the response rules system.
  • Disable shadows disableshadows <choices>
  • Target Path Corner target <target_destination> If set, the name of a path corner entity that this NPC will walk to, after spawning.
  • Squad Name 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.
  • Hint Group 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.
  • Hint Limit Nav hintlimiting <choices> Limits NPC to using specified hint group for navigation requests, but does not limit local navigation.
  • spawnflags spawnflags <flags>
  • Sleep State sleepstate <choices> Holds the NPC in stasis until specified condition. See also 'Wake Radius' and 'Wake Squad'.
  • Wake Radius wakeradius <float> Auto-wake if player within this distance
  • Wake Squad wakesquad <choices> Wake all of the NPCs squadmates if the NPC is woken
  • Enemy Filter enemyfilter <target_destination> Filter by which to filter potential enemies
  • Ignore unseen enemies ignoreunseenenemies <choices> Prefer visible enemies, regardless of distance or relationship priority
  • Physics Impact Damage Scale 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.
  • Health npchealth <integer> Number of points of damage to take before dying. 0 means use default health.
  • Custom Name npcname <string> Name that will appear when your crosshair is on this npc. If left blank, it will display the classname of this npc.
  • Custom Model model <studio>
  • NPC Owner npcownerent <target_destination> Changes interactions between this ent and the chosen ent.
  • Team teamnumber <choices> Sets this NPC's team. NPCs are agressive to everything not on their team. Only has an effect if teamplay is enabled in your map.
  • Bounding Box Min CustomBounding1 <string> Bounding Box Min Vector(three spaced numbers, no commas), the bottom most point of this NPCs bounding box. ( Do not use negative values! ) Custom Boundingbox which should encompass all hitboxes. Hitboxes not encompased will not be used.
  • Bounding Box Max CustomBounding2 <string> Bounding Box Max Vector(three spaced numbers, no commas), the top most point of this NPCs bounding box. ( Do not use negative values! ) Custom Boundingbox which should encompass all hitboxes. Hitboxes not encompased will not be used.
  • Use Sentence UseSentence <string>
  • Un-Use Sentence UnUseSentence <string>
  • Don't Use Speech Semaphore DontUseSpeechSemaphore <choices> Friendly NPCs are not allowed to speak if another friendly NPC is speaking. In some cases we don't want speaking NPCs to prevent other NPCs from speaking (for instance, if there is a friendly NPC speaking for a long time on a monitor). To make this NPC not prevent other NPCs from talking, make it not grab the semaphore when it speaks.
  • Always transition AlwaysTransition <choices> If yes, this NPC will always teleport to a Player Squad Transition Point if they're not within the trigger_transition volume.
  • Prevent picking up weapons? DontPickupWeapons <choices> If yes, this NPC will NOT be allowed to pick up weapons they find on the ground.
  • Is this a vital ally? GameEndAlly <choices> If yes, this NPC will cause the game to end if killed.
  • Weapons additionalequipment <choices>
  • Facial expression override ExpressionOverride <string>
  • Merchant Script name MerchantScript <string>
  • Merchant Icon Material MerchantIconMaterial <string>
  • Show Merchant Icon? ShowIcon <choices>
  • Icon Height IconHeight <integer> Height Above Merchant


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. Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>. Very dangerous, use with care.
  • FireUser1 Causes this entity's OnUser1 output to be fired.
  • FireUser2 Causes this entity's OnUser2 output to be fired.
  • FireUser3 Causes this entity's OnUser3 output to be fired.
  • FireUser4 Causes this entity's OnUser4 output to be fired.
  • Alpha <integer> Set the sprite's alpha (0 - 255).
  • Color <color255> Set the sprite's color (R G B).
  • SetDamageFilter <string> 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 with another entity or class. Format: <entityname/classname> <D_HT/D_FR/D_LI/D_NU> <priority>
  • SetEnemyFilter <string> Changes this NPC's enemy filter to the named filter.
  • 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. NOTE: 0 means this feature is disabled for backwards compatibility.
  • Ignite Ignite, burst into flames
  • IgniteLifetime <float> Ignite, with a parameter lifetime.
  • IgniteNumHitboxFires <integer> Ignite, with a parameter number of hitbox fires.
  • IgniteHitboxFireScale <float> Ignite, with a parameter hitbox fire scale.
  • 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.
  • 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 <string> 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.
  • HolsterWeapon Force the NPC to holster their weapon. Ignored if the NPC is scripting, if the NPC's weapon is already holstered, or if the NPC doesn't use weapons.
  • HolsterAndDestroyWeapon Identical to HolsterWeapon, except the weapon is destroyed once it has been holstered and concealed.
  • UnholsterWeapon Force the NPC to draw their weapon. Ignored if the NPC is scripting, if the NPC's weapon is already drawn, or if the NPC doesn't use weapons.
  • ForceInteractionWithNPC <string> Force the NPC to use a dynamic interaction with another NPC. Parameter format: <target NPC name> <dynamic interaction name>
  • UpdateEnemyMemory <string> Update (or Create) this NPC's memory of an enemy and its location

BecomeRagdoll This NPC will instantly become a ragdoll with ZERO force (just go limp). OnDeath, OnHalfHealth, etc. Outputs *will **NOT** BE FIRED.

  • OutsideTransition Use this input to teleport the NPC to a hintnode with the Player Squad Transition Point hint type.
  • EnableAlwaysTransition Enable the 'always transition' behavior
  • DisableAlwaysTransition Disable the 'always transition' behavior
  • EnableSpeakWhileScripting Allow this NPC to speak responses while in a scripted sequence or while StartScripting is active.
  • DisableSpeakWhileScripting Cancels this NPC's ability to speak responses while in a scripted sequence or while StartScripting is active if it was previously enabled by EnableSpeakWhileScripting.
  • MakeGameEndAlly Make this NPC a game end ally.
  • MakeRegularAlly Make this NPC a regular ally.
  • EnableWeaponPickup Enable Weapon Pickup.
  • DisableWeaponPickup Disable Weapon Pickup.
  • GiveWeapon <string> Gives the NPC a weapon of the specified entity name.
  • SetReadinessPanic Set readiness to panic state (Special)
  • 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
  • ClearAllOutputs Obliterate every output that this NPC has.
  • SetExpressionOverride <string> Set facial expression override


Outputs

  • OnUser1 Fired in response to FireUser1 input.
  • OnUser2 Fired in response to FireUser2 input.
  • OnUser3 Fired in response to FireUser3 input.
  • OnUser4 Fired in response to FireUser4 input.
  • OnDamaged Fired when this NPC takes damage.
  • OnDeath Fired when this NPC is killed.
  • 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.
  • OnFoundEnemy <string> 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.
  • OnFoundPlayer <string> 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.
  • OnDamagedByPlayerSquad Fired when this NPC is hurt by a player OR by one of the player's squadmates.
  • OnDenyCommanderUse Fired when this NPC has refused to join the player's squad.
  • OnSleep Fired when this NPC enters a sleep state.
  • OnWake Fired when this NPC comes out of a sleep state.
  • OnForcedInteractionStarted Fired when the NPC starts a forced interaction.
  • OnForcedInteractionAborted Fired when the NPC aborts a forced interaction for some reason (target NPC died, couldn't be pathed to, etc)
  • OnForcedInteractionFinished NPCs in actbusies can no longer perform dynamic interactions.
  • OnWeaponPickup Fires when this NPC picks a weapon off the ground or a gun rack.
  • OnPlayerUse Fires when a player +USEs

Flags

  • Wait Till Seen
  • Gag (No IDLE sounds until angry)
  • Fall to ground (unchecked means "teleport" to ground)
  • Drop Healthkit
  • Efficient - Don´t acquire enemies or avoid obstacles
  • Wait for script
  • Long visibility/shoot
  • Think outside PVS
  • Template NPC (used by npc_maker, will not spawn)
  • Do Alternate collision for this npc (player avoidance)
  • Don´t drop weapons
  • Ignore player push (dont give away to player)
  • Do NOT fade corpse