Npc manhack: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
 Note:Some keyvalues, spawnflags, effect flags, inputs, or outputs might not affect an NPC, based on the functionality and coding of the NPC.
Note:Some keyvalues, spawnflags, effect flags, inputs, or outputs might not affect an NPC, based on the functionality and coding of the NPC.
 Bug:There is a currently a bug where Manhacks will not report their deaths back to the npc_template_maker that spawned them.  Consider using the
Bug:There is a currently a bug where Manhacks will not report their deaths back to the npc_template_maker that spawned them.  Consider using the 
 Note:This npc uses the squad ai to decide when to attack or when to swarm. This can cause unwanted behavior when in a squad with other squad based npcs.
Note:This npc uses the squad ai to decide when to attack or when to swarm. This can cause unwanted behavior when in a squad with other squad based npcs.
		
	
| Gameplayer (talk | contribs) No edit summary |  (-added class hierarchy) | ||
| (6 intermediate revisions by 4 users not shown) | |||
| Line 2: | Line 2: | ||
| {{hl2 topicon}} | {{hl2 topicon}} | ||
| [[File:Manhack.png|thumb|250px|right|link=|Manhack]] | [[File:Manhack.png|thumb|250px|right|link=|Manhack]] | ||
| {{this is a| | {{CD|CNPC_Manhack|base=CNPCBaseInteractive(CAI_BasePhysicsFlyingBot)|file1=1}} | ||
| {{this is a|model entity|game=Half-Life 2 series|name=npc_manhack}}   | |||
| <!-- Add the categories to the main page, not here --> | <!-- Add the categories to the main page, not here --> | ||
| This is the entity that represents [[manhacks]] ingame. Can be carried and thrown by [[npc_metropolice|Metrocops]]. | This is the entity that represents [[manhacks]] ingame. Can be carried and thrown by [[npc_metropolice|Metrocops]]. | ||
| Line 11: | Line 12: | ||
| {{note|This npc uses the squad ai to decide when to attack or when to swarm. This can cause unwanted behavior when in a squad with other squad based npcs.}} | {{note|This npc uses the squad ai to decide when to attack or when to swarm. This can cause unwanted behavior when in a squad with other squad based npcs.}} | ||
| ==Keyvalues== | ==Keyvalues== | ||
| {{KV Targetname}} | |||
| {{KV|Ignore clip brushes|intn=ignoreclipbrushes|bool}} | {{KV|Ignore clip brushes|intn=ignoreclipbrushes|bool}} | ||
| {{KV BaseNPC}} | {{KV BaseNPC}} | ||
| ==Flags== | ==Flags== | ||
| {{Fl|65536|Start packed up (folded and engine off)}} | {{Fl|65536|Start packed up (folded and engine off)}} | ||
| {{Fl|131072|Don't use any damage effects}} | {{Fl|131072|Don't use any damage effects}} | ||
| {{Fl|262144|Use Air Nodes}} | {{Fl|262144|Use Air Nodes}} | ||
| {{Fl|524288|Carried (Disabled movement, solidity, and engine sound)|nofgd=1)}} | |||
| {{Fl|1048576|No Danger Sounds}} | {{Fl|1048576|No Danger Sounds}} | ||
| {{Fl BaseNPC}} | |||
| ==Inputs== | ==Inputs== | ||
| {{ | {{I|DisableSwarm|Disable the manhack swarm behavior.}} | ||
| {{ | {{I|Unpack|Causes the manhack to stop being packed up.}} | ||
| {{I AlyxInteractable}} | {{I AlyxInteractable}} | ||
| {{I BaseNPC}} | {{I BaseNPC}} | ||
| Line 39: | Line 36: | ||
| {{O BaseNPC}} | {{O BaseNPC}} | ||
| [[ | == Dedicated Console Variables == | ||
| [[Category:Half-Life 2 NPCs]] | ;sk_manhack_health <[[int]]>  | ||
| :  A manhack's spawn health (Default: 25). | |||
| ;sk_manhack_melee_dmg >[[int]]>  | |||
| : Melee damage (Default: 20). | |||
| [[Category:Half-Life 2 NPCs|m]] | |||
Latest revision as of 17:24, 5 June 2025
|  Class hierarchy | 
|---|
| CNPC_Manhack | 
|  npc_manhack.cpp | 
npc_manhack  is a   model entity  available in  Half-Life 2 series. 
This is the entity that represents manhacks ingame. Can be carried and thrown by Metrocops.
 Half-Life 2 series. 
This is the entity that represents manhacks ingame. Can be carried and thrown by Metrocops.
- This is a flying NPC that uses info_node_air, info_node_air_hint or path_tracks for AI navigation.
 Note:Some keyvalues, spawnflags, effect flags, inputs, or outputs might not affect an NPC, based on the functionality and coding of the NPC.
Note:Some keyvalues, spawnflags, effect flags, inputs, or outputs might not affect an NPC, based on the functionality and coding of the NPC. Bug:There is a currently a bug where Manhacks will not report their deaths back to the npc_template_maker that spawned them.  Consider using the
Bug:There is a currently a bug where Manhacks will not report their deaths back to the npc_template_maker that spawned them.  Consider using the OnDeath output to increment a math_counter if you want to keep track of them.  [todo tested in ?] Note:This npc uses the squad ai to decide when to attack or when to swarm. This can cause unwanted behavior when in a squad with other squad based npcs.
Note:This npc uses the squad ai to decide when to attack or when to swarm. This can cause unwanted behavior when in a squad with other squad based npcs.Keyvalues
- Name (targetname) <string>[ Edit ]
- The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentnameortarget).
 Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
- Ignore clip brushes (ignoreclipbrushes) <boolean>
| CBaseCombatCharacter: 
 
 CAI_BaseNPC: 
 
 
 
 
 
 
 
 
 DamageFilter: 
 | 
Flags
- Start packed up (folded and engine off) : [65536]
- Don't use any damage effects : [131072]
- Use Air Nodes : [262144]
- Carried (Disabled movement, solidity, and engine sound) : [524288] !FGD
- No Danger Sounds : [1048576]
BaseNPC flags 
- Wait Till Seen : [1]
- Prevents this NPC from seeing (or being seen) until it enters a player's viewcone.
- Gag : [2]
- Won't make IDLE sounds until it's angry.
- Fall to ground (unchecked means teleport to ground) : [4]
- Drop Healthkit : [8]
- Causes this NPC to drop an item_healthvial upon dying.
- Efficient : [16]
- Don't acquire enemies or avoid obstacles
- Wait For Script : [128]
- Forces this NPC to "wait" in an idle state until it finishes playing a scripted_sequence.
- Long Visibility/Shoot : [256]
- By default, increases a NPC's sight range to 6,000units and allows it to attack from anywhere within that distance.
- Fade Corpse : [512]
- Think outside PVS : [1024]
- Allows this NPC to run its regular AI outside of any player's PVS.
- Template NPC : [2048]
- Marks this NPC as a template for entities like npc_template_maker. The NPC will not spawn on its own. This is not needed for point_template.
- Do Alternate collision for this NPC (player avoidance) : [4096]
- Don't drop weapons : [8192]
- Ignore player push : [16384] (in all games since  ) )
- Entity won't give way to player.
Inputs
- DisableSwarm
- Disable the manhack swarm behavior.
- Unpack
- Causes the manhack to stop being packed up.
AlyxInteractable:
- InteractivePowerDown   (in all games since  ) )
- Shutdown this target.
BaseNPC inputs 
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 dispositionare:- D_HT: Hate
- D_FR: Fear
- D_LI: Like
- D_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
- OnAlyxStartedInteraction
- Fired when Alyx begins to interact with this entity.
- OnAlyxFinishedInteraction
- Fired when Alyx has finished interacting with this entity.
| 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 



























