npc_ichthyosaur
From Valve Developer Community
The Ichthyosaur is a large man-eating "fish" of probable Xen origin.
First seen in Half-Life. This Source rendition appeared once, during Half-Life 2's opening, and can only be implemented with scripts.
- This is a Flying NPC, that uses info_node_air and info_node_air_hint for AI navigation.
Contents |
Cvars
-
sk_ichthyosaur_health <int> - Default 200
-
sk_ichthyosaur_melee_dmg <int> - Default 8
Keyvalues
BaseNPC:
- Target Path Corner
<targetname> - The path_corner that this NPC will move to after spawning.
- Squad Name
<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
<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
<bool> - Limits NPC to using specified hint group for navigation requests, but does not limit local navigation.
- Sleep State
<choices> - Holds the NPC in stasis until specified condition. See also 'Wake Radius' and 'Wake Squad'.
- 0: None
- 1: Waiting for threat
- 2: Waiting for PVS
- 3: Waiting for input, ignore PVS
- 4: Auto PVS
- 5: Auto PVS after PVS
- Wake Radius
<float> - Auto-wake if player within this distance
- Wake Squad
<bool> - Wake all of the NPCs squadmates if the NPC is woken
- Enemy Filter
<targetname> - Filter entity to test targets against
- Ignore unseen enemies
<bool> - Physics Impact Damage Scale
<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.
DamageFilter:
- Damage Filter
<targetname> - Name of the filter_damage_type that controls what damages this entity.
ResponseContext:
- Response Contexts <string>
- Pre-defined response system contexts for this entity. Format is
key:value,key:value,...
Shadow:
- Disable shadows
<bool> - Prevent the entity from creating cheap render-to-texture shadows. Does not affect shadow mapping.
RenderFields:
- Render Mode
<choices> - Set a non-standard rendering mode on this entity. See Render Modes for details.
- FX Amount (0 - 255)
<int> - Intensity of the selected render mode.
- FX Color (R G B)
<color255> - Color used by the selected render mode (if applicable).
- Disable Receiving Shadows
<bool> - Prevents the entity from receiving shadows.
To do: RTT and/or shadow map?
RenderFXChoices:
- Render FX
<choices> - Several GoldSrc-era visibility modes which change the way the entity is rendered, typically by fading it in and out.
Angles:
- Pitch Yaw Roll (Y Z X)
<angle> - This entity's angular orientation in the world.
Targetname:
- Name <string>
- The targetname other entities refer to this entity by.
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: This entity is a template for the npc_template_maker. It will not spawn automatically and cannot be used with point_template.
- 4096 : Do Alternate collision for this NPC (player avoidance)
- 8192 : Don't drop weapons
- 16384 : Ignore player push : Dont give way to player
Inputs
BaseNPC:
-
SetRelationship <string|targetname or classname> <string|disposition> <int|rank> - Changes whether this NPC likes or dislikes certain others. Used like the ai_relationship entity, with this NPC as the subject.
- Values for
dispositionare:-
D_HT: Hate -
D_FR: Fear -
D_LI: Like -
D_NU: Neutral
-
-
SetHealth <int> - Set the NPC's health.
-
AddHealth <int>(New with Orange Box) -
RemoveHealth <int>(New with Orange Box) - Add to or remove from the NPC's health.
-
SetBodyGroup <int> - HACK: Sets this NPC's body group (from 0 - n). You'd better know what you are doing!
-
physdamagescale <float> - Scales the damage taken when this character is hit by a physics object. 0 means this feature is disabled for backwards compatibility.
-
Ignite - Burst into flames.
-
IgniteLifetime <float> - Ignite for the given number of seconds.
-
IgniteNumHitboxFires <int> - Ignite with the given number of hitbox fires.
-
IgniteHitboxFireScale <float> - Ignite with the given hitbox fire scale.
-
Break - Smash into pieces. If this is not possible, disappear.
-
BecomeRagdoll(New with Orange Box) - Become a ragdoll without removing yourself?
-
StartScripting -
StopScripting - Enter/exit scripting state, where 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.
-
Assault <targetname> - Start an assault at the given rally point.
-
SetSquad <string> - Change the name of this NPC's squad. Leaving the parameter blank will remove the NPC from any existing squad.
-
Wake - Wakes up the NPC if it is sleeping.
-
ForgetEntity <targetname> - Clears out the NPC's knowledge of a named entity.
-
GagEnable -
GagDisable - Gagged NPCs won't speak (or moan, caw, etc.) unless made to be a choreographed scene.
-
IgnoreDangerSounds <float> - Ignore danger sounds for the specified number of seconds.
-
HolsterWeapon -
UnholsterWeapon - Force the NPC to holster or unholster their weapon. Ignored if the NPC is scripting or if the NPC doesn't use weapons.
-
HolsterAndDestroyWeapon - As
HolsterWeapon, except the weapon is destroyed once it has been concealed. -
ForceInteractionWithNPC <string> - Force the NPC to use a dynamic interaction with another NPC. Syntax is
<targetname> <dynamic interaction>. -
UpdateEnemyMemory <targetname> - Update (or create) this NPC's memory of of the given entity.
RenderFields:
DamageFilter:
-
SetDamageFilter <targetname> - Sets the entity to use as damage filter. Pass an empty string ("") to clear.
ResponseContext:
-
AddContext <string> - Adds to the entity's list of response contexts. Format is
<key>:<value>. -
RemoveContext <string> - Remove a context from this entity's list. The name should match the key of an existing context.
-
ClearContext - Removes all contexts from this entity's list.
Shadow:
- EnableShadow
- DisableShadow
- Control the entity's cheap render-to-texture shadow. Does not affect shadow mapping.
Targetname:
-
Kill - Removes this entity from the world.
-
KillHierarchy - Removes this entity and all its children from the world.
-
AddOutput <string> - Evaluates a keyvalue/output on this entity. It can be potentially very dangerous, use with care.
- Format:
<key> <value> - Format:
<output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite> -
FireUser1toFireUser4 - Fire the
OnUseroutputs; see User Inputs and Outputs.
Outputs
BaseNPC:
-
OnDamaged - Fired when this NPC takes damage (activator is the damage inflictor)
-
OnDeath - Fired when this NPC is killed (activator is the 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
-
OnFoundEnemy <targetname> - Fired when this NPC establishes line of sight to its enemy
-
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 <targetname> - Fired when this NPC establishes line of sight to its enemy, and that enemy is a player
-
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 is the 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 is the 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
Targetname:
-
OnUser1toOnUser4 - Fired in response to the
FireUserinputs; see User Inputs and Outputs. -
OnKilled(New with Left 4 Dead) - Fired when the entity is killed and removed from the game.
