This article's documentation is for anything that uses the Source engine. Click here for more information.

Player: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(More SetCustomModel inputs)
No edit summary
 
(89 intermediate revisions by 31 users not shown)
Line 1: Line 1:
{{Ent not in fgd}}
{{LanguageBar}}
{{TabsBar}}
{{Ent not in fgd|codeonly=1}}
{{Preserved entity}}
{{CD|player{{!}}... Game Specific ...|base=CBasePlayer|nolink=1|file1=[https://github.com/ValveSoftware/source-sdk-2013/blob/master/src/game/server/player.cpp CBasePlayer definition]}}
{{this is a|entity|name=player}} The player itself or a [[bot]]. [[NPC]]s are not players. This entity still exists even if the player is dead.


{{base point|player}} The player itself. This entity still exists even if the player is dead. A pointer to the player can be acquired by using <code>UTIL_GetLocalPlayer()</code>.
{{note|Keyvalues, inputs, outputs and [[Dimensions]] vary depending on game and engine version.}}
{{tip|In singleplayer, a pointer to the player can be acquired by using <code>UTIL_GetLocalPlayer()</code>.}}
{{warning|Removing a player entity that a human player is in control of will cause them to either be kicked from the game or prevented them from doing anything.}}


{{Note|This entity is not listed in the FGD, and is not intended to be placed in a map with hammer.}}
{{Important|This entity is not intended to be placed in a map manually. Doing so will result in an instant fatal error on map load!}}
{{Note|Key/values, inputs and outputs vary depending on game and engine version. (needs more research- this stuff is from EP2)}}


== Keyvalues ==
[[File:entcreateplayer.jpg|thumb|580px|The consequences of player entity generation.]]
{{KV|health|integer|The player's health.}}
==Keyvalues==
{{KV|max_health|integer|The value of "health" cannot exceed this.}}
{{note|Keyvalues can be changed on a player with [[AddOutput]].}}
{{KV Targetname}}
{{KV|Health|intn=health|integer|The player's health. {{note|Use SetHealth input instead, as this may not update health properly, leaving player at 0 health while still alive.}}}}
{{KV Parentname}}
{{KV|Maximum Health|intn=max_health|integer|The value of "health" cannot exceed this.}}
{{KV Studiomodel}}
{{KV|Base Velocity|intn=BaseVelocity|Vector|Adds to the velocity of the player. <br>Format:<code> <x> <y> <z> </code>}}
{{KV Global}}


== Inputs ==
==Inputs==
{{IO|SetHealth|param=integer|Sets the player's health. Values clamped between 0 and max_health.}}
{{I|SetHealth|param=integer|Sets the player's health. Values clamped between 0 and <code>max_health</code>.}}
{{IO|SetHUDVisibility|param=boolean|Hides or displays the HUD.}}
{{I|HandleMapEvent|param=string|Tells the game to perform a function, such as unlock an achievement. Hardcoded for specific map names.}}
{{IO|SetFogController|param=string|Set the fog controller data per player.}}
{{I|SetHUDVisibility|param=boolean|Hides or displays the HUD.}}
{{IO|IgnoreFallDamage|param=float|Prevent the player from taking fall damage for [n] seconds, but reset back to taking fall damage after the first impact (so players will be hurt if they bounce off what they hit).}}
:{{note|The menu can still be accessed, and some HUD elements such as kill-icons may still be visible.}}
{{IO|IgnoreFallDamageWithoutReset|param=float|Absolutely prevent the player from taking fall damage for [n] seconds.}}
:{{warning|Hiding the HUD will disable any weapon-switching of the target. Still available with {{cmd|use}} console command. {{todotest|{{tf2}}{{csgo}}{{l4d2}}{{css}}{{hl2}}{{bms}}}}}}
{{IO|OnSquadMemberKilled|Notification of a player's npc ally in the players squad being killed.}}
{{I|SetFogController|param=string|special targets = [[Targetname#Keywords|special targetname]]s are unsupported|Sets the {{ent|env_fog_controller}} to use.}}
{{IO|DisableFlashlight|Disables the player's flashlight.}}
{{I|PerformForcedWeaponDeploy|param=string|only={{bms}}|Forces the player to use specified weapon with pickup animation.
{{IO|EnableFlashlight|Enables the player's flashlight.}}
:{{note|Pickup animation doesn't always work, this somehow depends on player's ammo and other weapons.}}
{{IO|ForceDropPhysObjects|Force the player to drop any physics objects he's carrying.}}
}}
{{IO|SpeakResponseConcept|param=string|Speak the specified [[Response System|response concept]] immediately.}}
{{IO|DisableLedgeHang|{{l4d2}} Disable ledge hanging by player.}}
{{IO|EnableLedgeHang|{{l4d2}} Enable ledge hanging by player.}}
{{IO|SetCustomModel|param=string|{{tf2}} Set a custom player model}}
{{IO|SetCustomModelOffset|param=vector|{{tf2}} Set a custom player model's position on the player}}
{{IO|SetCustomModelRotation|param=vector|{{tf2}} Set a custom player model's rotation on the player}}
{{IO|SetCustomModelRotates|param=boolean|{{tf2}} Set if a custom model rotates or not}}
{{IO|SetCustomModelVisibleToSelf|param=boolean|{{tf2}} Set if a custom model is visible to the player}}
{{I Targetname}}
{{I Parentname}}
{{I Studiomodel}}
 
== Outputs ==
{{O Targetname}}
{{O Studiomodel}}

Latest revision as of 07:46, 29 May 2025

English (en)中文 (zh)Translate (Translate)
edit
Icon-NotInFGD.png
This entity is not in the FGD by default.
It should not be put directly in a map because it can only be configured through code.
Recycle-warning.png
This is a preserved entity in Counter-Strike: SourceHalf-Life 2: DeathmatchDay of Defeat: SourceTeam Fortress 2Left 4 DeadLeft 4 Dead 2Alien SwarmAlien Swarm: Reactive DropPortal 2Counter-Strike: Global Offensive
If the game has round restart mechanics this entity may not behave as expected.
C++ Class hierarchy
... Game Specific ...
CBasePlayer
CBaseCombatCharacter
CBaseFlex
CBaseAnimatingOverlay
CBaseAnimating
CBaseEntity
C++ CBasePlayer definition

player is an entity available in all Source Source games. The player itself or a bot. NPCs are not players. This entity still exists even if the player is dead.

Note.pngNote:Keyvalues, inputs, outputs and Dimensions vary depending on game and engine version.
Tip.pngTip:In singleplayer, a pointer to the player can be acquired by using UTIL_GetLocalPlayer().
Warning.pngWarning:Removing a player entity that a human player is in control of will cause them to either be kicked from the game or prevented them from doing anything.
Icon-Important.pngImportant:This entity is not intended to be placed in a map manually. Doing so will result in an instant fatal error on map load!
The consequences of player entity generation.

Keyvalues

Note.pngNote:Keyvalues can be changed on a player with AddOutput.
Health (health) <integer>
The player's health.
Note.pngNote:Use SetHealth input instead, as this may not update health properly, leaving player at 0 health while still alive.
Maximum Health (max_health) <integer>
The value of "health" cannot exceed this.
Base Velocity (BaseVelocity) <vector>
Adds to the velocity of the player.
Format: <x> <y> <z>

Inputs

SetHealth <integerRedirectInput/integer>
Sets the player's health. Values clamped between 0 and max_health.
HandleMapEvent <stringRedirectInput/string>
Tells the game to perform a function, such as unlock an achievement. Hardcoded for specific map names.
SetHUDVisibility <booleanRedirectInput/boolean>
Hides or displays the HUD.
Note.pngNote:The menu can still be accessed, and some HUD elements such as kill-icons may still be visible.
Warning.pngWarning:Hiding the HUD will disable any weapon-switching of the target. Still available with use console command.  (tested in: Team Fortress 2Counter-Strike: Global OffensiveLeft 4 Dead 2Counter-Strike: SourceHalf-Life 2Black Mesa)
SetFogController <stringRedirectInput/string>
special targetnames are unsupported
Sets the env_fog_controller to use.
PerformForcedWeaponDeploy <stringRedirectInput/string> (only in Black Mesa)
Forces the player to use specified weapon with pickup animation.
Note.pngNote:Pickup animation doesn't always work, this somehow depends on player's ammo and other weapons.