Stub
This article or section is a stub. You can help by adding to it.
This entity is
not in the
FGD by default .
See below for instructions on making it available.
eyeball_boss
is a point entity available in
Team Fortress 2.
Entity descriprion
This entity is MONOCULUS!, a boss NextBot, added during the Halloween Holiday Event in 2011. Being a flying NextBot, it is capable of moving around a map without a .nav; however, without the .nav file, MONOCULUS! will not teleport around. In addition, you will need info_targets named:
- spawn_boss_alt - places where MONOCULUS! can teleport.
- spawn_purgatory - where you teleport after leaping into his portal.
- spawn_loot - where you teleport after MONOCULUS! dies.
MONOCULUS! won't respawn after death.
Keyvalues
- Name
(targetname)
<string>
- The targetname that other entities refer to this entity by.
Parentname:
- Parent
(parentname)
<targetname>
- Specifies a movement parent. An entity will maintain its initial offset from its parent. An attachment point can be added to the end of the name, separated by a comma.
BaseNPC keyvalues
- Relationship
(???) <string> !FGD
- Changes whether this NPC likes or dislikes certain others. Used like the
ai_relationship entity, with this NPC as the subject. Format: <string|targetname or classname> <string|disposition> <int|rank> .
- Values for
disposition are:
D_HT : Hate
D_FR : Fear
D_LI : Like
D_NU : Neutral
- Target Path Corner
(target) <targetname>
- The
path_corner that this NPC will move 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) <boolean>
- Limits NPC to using specified hint group for navigation requests. Does not limit local navigation.
- Sleep State
(sleepstate) <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
(wakeradius) <float>
- Auto-wake if player comes within this distance.
- Wake Squad
(wakesquad) <boolean>
- Wake all of the NPCs squadmates if the NPC is woken.
- Enemy Filter
(enemyfilter) <targetname>
- Filter entity to test targets against.
- Ignore unseen enemies
(ignoreunseenenemies) <boolean>
- Prefers 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.
DamageFilter:
- Damage Filter
(damagefilter) <targetname>
- Name of the
filter_damage_type entity that controls which entities can damage us.
|
Flags
BaseNPC flags
- [
1 ] : Wait Till Seen Prevents this NPC from seeing (or being seen) until it enters a player's viewcone.
- [
2 ] : Gag Won't make IDLE sounds until it's angry.
- [
4 ] : Fall to ground (unchecked means teleport to ground)
- [
8 ] : Drop Healthkit Causes this NPC to drop an item_healthvial upon dying.
- [
16 ] : Efficient Don't acquire enemies or avoid obstacles
- [
128 ] : Wait For Script Forces this NPC to "wait" in an idle state until it finishes playing a scripted_sequence .
- [
256 ] : Long Visibility/Shoot By default, increases a NPC's sight range to 6,000 units and allows it to attack from anywhere within that distance.
- [
1024 ] : Think outside PVS Allows this NPC to run its regular AI outside of any player's PVS.
- [
2048 ] : Template NPC 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 .
- [
4096 ] : Do Alternate collision for this NPC (player avoidance) Note:This flag is disabled in episodic for player companions, because the StartScripting input does this.
- [
8192 ] : Don't drop weapons
- [
16384 ] : Ignore player push (in all games since ) Entity won't give way to player.
|
Inputs
Base:
AddContext
<string>
- Adds to the entity's list of response contexts. See Context.
AddOutput
<string>
- Assigns a new keyvalue/output on this entity. For keyvalues, some rely on extra necessary code to be ran and won't work if its simply just changed through this input. There is a strict format that must be followed:
// Format of changing KeyValues: "AddOutput [key] [value]"
//// Raw text:
"OnUser1" "!self,AddOutput,targetname new_name"
// Format of adding an Output: "AddOutput {targetname}:{inputname}:{parameter}:{delay}:{max times to fire, -1 means infinite}"
//// Raw text:
"OnUser1" "!self,AddOutput,OnUser1:SetParent:!activator:0.0:-1"
// Arguments can be left blank, but the empty blank should still be contained.
//// Raw text:
"OnUser1" "!self,AddOutput,OnUser1:ClearParent::0.0:-1"
|
ClearContext
- Removes all contexts from this entity's list.
ClearParent
- Removes this entity from the the movement hierarchy, leaving it free to move independently.
FireUser1
to FireUser4
- Fires the respective
OnUser
outputs; see User Inputs and Outputs.
Kill
- Removes this entity and any entities parented to it from the world.
KillHierarchy
- Functions the same as
Kill
, although this entity and any entities parented to it are killed on the same frame, being marginally faster thanKill
input.
RemoveContext
<string>
- Remove a context from this entity's list. The name should match the key of an existing context.
SetParent
<string>
- Move with this entity. See Entity Hierarchy (parenting).
SetParentAttachment
<string>
- Change this entity to attach to a specific attachment point on its parent. The entity will teleport so that the position of its root bone matches that of the attachment. Entities must be parented before being sent this input.
SetParentAttachmentMaintainOffset
<string>
- As above, but without teleporting. The entity retains its position relative to the attachment at the time of the input being received.
Use
!FGD
- Same as a player invoking +use; no effect in most cases.
SetTeam
<integer> !FGD
- Changes this entity's team.
TeamNum
<integer> !FGD
- This input changes value for
TeamNum
property.
DispatchResponse
<string> !FGD
- Dispatches a response to the entity. See Response and Concept.
DispatchEffect
<string> (removed since
) !FGD
- Dispatches a special effect from the entity's origin; See also List of Client Effects. Replaced by the particle system since
.
RunScriptFile
<script> (in all games since
) (also in
)
- Execute a VScript file from disk, without file extension. The script contents are merged with the script scope of the receiving entity.
RunScriptCode
<string> (in all games since
) (also in
)
- Execute a string of VScript source code in the scope of the entity receiving the input. String quotation may be needed when fired via console.
Bug:In Hammer, using string arguments will corrupt the VMF file's structure, making the file unviewable for the next Hammer session.
Fix:Remove the string argument manually with a text editor.
Note:
Backtick characters ` are replaced with quotation marks at runtime, allowing quotation marks to be used when normally not possible.
CallScriptFunction
<string> (in all games since
) (also in
) !FGD
- Calls a VScript function defined in the scope of the receiving entity.
TerminateScriptScope
(only in
) !FGD
- Destroys the script scope of the receving entity.
SetLocalOrigin
<coordinates> (in all games since
) !FGD
- Send this entity to a spot in the map. If the entity is parented to something, it will be offset from the parent by this amount.
SetLocalAngles
<angles> (in all games since
) !FGD
- Set this entity's angles.
Parentname:
SetParent
<string>
- Move with this entity. See Entity Hierarchy (parenting).
SetParentAttachment
<string>
- Change this entity to attach to a specific attachment point on its parent. The entity will teleport so that the position of its root bone matches that of the attachment. Entities must be parented before being sent this input.
SetParentAttachmentMaintainOffset
<string>
- As above, but without teleporting. The entity retains its position relative to the attachment at the time of the input being received.
ClearParent
- Removes this entity from the the movement hierarchy, leaving it free to move independently.
BaseNPC inputs
AddHealth <integer> (in all games since )
RemoveHealth <integer> (in all games since )
- Add to or remove from the NPC's health.
SetHealth <integer>
- Set the NPC's health.
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.
physdamagescale <float>
- Scales the damage taken when this character is hit by a physics object. 0 means this feature is disabled for backwards compatibility.
SetBodyGroup <integer>
- HACK: Sets this NPC's body group (from 0–n).
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 : 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.
DamageFilter:
SetDamageFilter <string>
- Sets the entity to use as damage filter. Pass in an empty string (no parameter) to clear the damage filter.
|
Outputs
Targetname:
OnUser1
to OnUser4
- These outputs each fire in response to the firing of the like-numbered
FireUser1
to FireUser4
Input; see User Inputs and Outputs.
OnKilled
(only in
)
- This output fires when the entity is killed and removed from the game.