npc_helicopter
![]() |
---|
CNPC_AttackHelicopter |
![]() |
npc_helicopter
is a point entity available in Half-Life 2 series,
Portal, and
Alien Swarm.
It is a Combine helicopter (also called a Hunter-Chopper), armed with a machine gun and capable of dropping mines. The mines are buoyant, and their timer only activates when they collide with the environment. Upon touching an NPC they detonate instantly. They can be dropped one at a time, or when triggered the helicopter can rush a target dropping a massive amount of mines.
This NPC only uses path_track for navigation: When the helicopter finds an enemy, it moves along a chain of path_tracks to the closest one to its target.
Related Entities:
- npc_heli_avoidbox is a brush entity that the helicopter will avoid.
- npc_heli_avoidsphere is an entity that keeps helicopters out of a spherical area.
- npc_heli_nobomb is an entity that suppresses helicopter bombing
- helicopter_bomb is a bomb that the helicopter can drop
- helicopter_chunk is helicopter debris created when helicopter is destroyed
- env_rotorwash_emitter is helicopter's rotor wash.
- env_rotorshooter
- npc_helicoptersensor





Destruction
When a helicopter is destroyed, three helicopter_chunks are created at its crash location along with a random number of smaller gibs.
Keyvalues
- Name (targetname) <string>
- The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
- Initial Speed (InitialSpeed) <float>
- Grace Period (GracePeriod) <float>
- Time in seconds the helicopter has to see the player before it starts shooting.
- Patrol Speed (PatrolSpeed) <float>
- Speed at which the helicopter moves if it has no enemy.
BaseHelicopter:
- Initial Speed (InitialSpeed) <string>
- The speed that the entity should try to reach as soon as it spawns
- Target path_track (target) <targetname>
- The name of a path_track that this NPC will fly to after spawning.
CBaseCombatCharacter:
CAI_BaseNPC:
DamageFilter:
|
Flags
- Wait Till Seen : [1]
- Gag (No IDLE sounds until angry) : [2]
- Fall to ground (unchecked means *teleport* to ground) : [4]
- Drop Healthkit : [8]
- Efficient - Don't acquire enemies or avoid obstacles : [16]
- No Rotorwash : [32]
- Await Input : [64]
- Wait For Script : [128]
- Long Visibility/Shoot : [256]
- Fade Corpse : [512]
- Think outside PVS : [1024]
- Template NPC (used by npc_maker, will not spawn) : [2048]
- Do Alternate collision for this NPC (player avoidance) : [4096]
- Don't drop weapons : [8192]
- Loud rotor wash sound : [65536]
- Electrical drone : [131072]
- Helicopter lights : [262144]
- Ignore avoid spheres+boxes : [524288]
- More aggressive attacks : [1048576]
Inputs
- StartBombingVehicle
- Starts the chopper leading enemy vehicles and dropping bombs on them.
- StartTrailingVehicle
- Starts the chopper trailing enemy vehicles and shooting at them.
- StartDefaultBehavior
- Starts the chopper in the mode where he always stops at nav points instead of stopping anywhere in between nav points.
- StartAlwaysLeadingVehicle
- Starts the chopper *always* leading enemy vehicles (regardless of how they are moving w/respect to the path) and dropping bombs on them. This mode is different from StartBombingVehicle in that it never uses the machine gun.
- StartSprinkleBehavior
- Starts the chopper dropping bombs randomly + shooting at the player.
- StartBullrushBehavior
- Starts the chopper bullrushing the player.
- SetHealthFraction <float>
- Sets the chopper health as a percentage of max health.
- EnableDeadlyShooting
- Starts the chopper being deadly to on-foot players.
- DisableDeadlyShooting
- Stops the chopper being deadly to on-foot players.
- StartNormalShooting
- The chopper will fire in short bursts. Good for on-foot experiences.
- StartLongCycleShooting
- The chopper fires in long bursts.
- StartContinuousShooting
- The chopper fires continuously.
- ResetIdleTime
- Allows the helicopter to fire immediately if he's not in the middle of charging or firing.
- SetAngles <angles>
- Instantly snaps the orientation of the helicopter.
- DropBomb
- Immediately drops a bomb based on normal bomb dropping rules.
- DropBombStraightDown
- Immediately drops a bomb directly downwards.
- DropBombAtTarget <targetname>
- Immediately drops a bomb directly at the target destination, but only if the player isn't right there.
- DropBombAtTargetAlways <targetname>
- Immediately drops a bomb directly at the target destination, no matter whether it's fair or not.
- DropBombDelay <float>
- Add a delay before the next bomb is dropped.
- BecomeIndestructible
- Makes the helicopter take no more damage.
- DisablePathVisibilityTests
- When the helicopter moves, he will not check for visibility from the path_track to the enemy to cull out path_tracks.
- EnablePathVisibilityTests
- When the helicopter moves, he will only move to path_tracks that have line-of-sight to the enemy.
|
CAI_BaseNPC:
- ActivateSpeedModifier !FGD
- DisableSpeedModifier !FGD
- Break
- Smash into pieces. If this is not possible, disappear.
- BecomeRagdoll (in all games since
)
- Remove itself and instantly become a ragdoll with zero force (just go limp). OnDeath, etc. outputs will NOT be fired.
- ForceInteractionWithNPC <string> <string> (in all games since
)
- Force the NPC to use a dynamic interaction with another NPC. Syntax is <targetname> <dynamic interaction>.
- ForgetEntity <targetname>
- Clears out the NPC's knowledge of a named entity.
- UpdateEnemyMemory (in all games since
)
- Update (or create) this NPC's memory of of the given entity.
- GagEnable
- GagDisable
- Gagged NPCs won't speak (or moan, caw, etc.) unless made to be a choreographed scene.
- HolsterWeapon (in all games since
)
- UnholsterWeapon (in all games since
)
- Force the NPC to holster or unholster their weapon. Ignored if the NPC is scripting or if the NPC doesn't use weapons.
- HolsterAndDestroyWeapon (in all games since
)
- Same as
HolsterWeapon
, except the weapon is destroyed once it has been concealed.
- IgnoreDangerSounds <float>
- Ignore danger sounds for the specified number of seconds.
- InsideTransition !FGD
- OutsideTransition !FGD
- SetBodyGroup <integer>
- HACK: Sets this NPC's body group (from 0–n).
- SetEnemyFilter <string>
- SetHealth <integer>
- Set the NPC's health.
- SetMaxLookDistance <float> (only in
)
- Sets the maximum look distance for the NPC. Defaults are 2048 and 6000 for long range NPCs.
- 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
disposition
are:D_HT
: HateD_FR
: FearD_LI
: LikeD_NU
: Neutral
- SetSquad <string>
- Change the name of this NPC's squad. Leaving the parameter blank will remove the NPC from any existing squad.
- 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 NPCs' idle speech, and so on.
- Wake
- Wakes up the NPC if it is sleeping.
CBaseCombatCharacter:
- KilledNPC !FGD
- Tells the entity it killed something. Despite the name, this can include a player. This input will be automatically sent by the victim when they die.
- 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.
DamageFilter:
Outputs
- OnHealthChanged <integer>
- Fires when the helicopter health changes. The integer is the percentage of health the chopper has from 0-100.
- OnShotDown
- Fires when the helicopter is killed. When an info_target_helicopter_crash entity is present, this output should be used instead of
OnDeath
.
|
Dedicated Console Variables
Cvar/Command | Parameters or default value | Descriptor | Effect |
---|---|---|---|
sk_helicopter_health | 5600 | int | Helicopter Spawn Health. |
sk_helicopter_firingcone | float | The angle in degrees of the cone in which the shots will be fired. | |
sk_helicopter_burstcount | int | How many shot bursts to fire after charging up. Bigger number = longer firing. | |
sk_helicopter_roundsperburst | int | How many shots to fire in a single burst. | |
sk_helicopter_grenadedamage | float | The amount of damage the helicopter grenade deals. | |
sk_helicopter_grenaderadius | float | The damage radius of the helicopter grenade. | |
sk_helicopter_grenadeforce | float | The physics force that the helicopter grenade exerts. | |
sk_npc_dmg_helicopter_to_plr | float | Damage helicopter shots deal to the player. Used in ammotype "HelicopterGun". | |
sk_npc_dmg_helicopter | float | Damage helicopter shots deal to everything but the player.Used in ammotype "HelicopterGun". | |
sk_helicopter_drone_speed | float | How fast does the zapper drone move? | |
g_helicopter_chargetime | float | How much time we have to wait (on average) between the time we start hearing the charging sound + the chopper fires. | |
g_helicopter_bullrush_distance | float | Todo: Effect description. |
|
g_helicopter_bullrush_bomb_enemy_distance | float | Todo: Effect description. |
|
g_helicopter_bullrush_bomb_time | float | Todo: Effect description. |
|
g_helicopter_idletime | float | Todo: Effect description. |
|
g_helicopter_maxfiringdist | float | Todo: Effect description. |
|
g_helicopter_bullrush_bomb_speed | float | Todo: Effect description. |
|
g_helicopter_bullrush_shoot_height | float | Todo: Effect description. |
|
g_helicopter_bullrush_mega_bomb_health | float | Todo: Effect description. |
- Half-Life 2
- CBaseAnimating
- Non-internal Half-Life 2 series entities
- Half-Life 2 series entities
- Half-Life 2 series point entities
- Non-internal Portal entities
- Portal entities
- Portal point entities
- Non-internal Alien Swarm entities
- Alien Swarm entities
- Alien Swarm point entities
- NPC entities
- Pages with uncategorized bugs
- Half-Life 2 NPCs