Env instructor hint: Difference between revisions
Jump to navigation
Jump to search

Note:This entity is not limited to the icons listed above, refer to scripts/mod_textures.txt (
,
,
, etc.) or scripts/instructor_textures.txt (
) located in the main
Note:If an info_target entity is used, the spawnflag to always transmit to the client must be checked.
(New keyvalue) |
(→Keyvalues: Add The Stanley Parable keyvalue hint_nofadeout) |
||
(42 intermediate revisions by 19 users not shown) | |||
Line 1: | Line 1: | ||
{{LanguageBar}} | |||
{{this is a|point entity|name=env_instructor_hint|since=Left 4 Dead 2|sprite=env_instructor_hint.gif}} {{also|{{mapbase}}}} | |||
{{CD|CEnvInstructorHint|file1=env_instructor_hint.cpp}} | |||
It is used to instruct the player to do some things, such as not shoot teammates. | |||
[[File:Instructorhint.png|right|thumb|Example from Portal 2.]] | |||
[[File:Hint_017_show_key_bindings.jpg|thumb|right|This example sets '''Bound Command''' to "jump" (without quotations) with '''Caption''' set to "Bet you can't jump over me!" (without quotations).]] | |||
__TOC__ | |||
==Icons== | |||
{| class="standard-table" | |||
== Icons == | |||
{| class="standard-table | |||
|- | |- | ||
!Icon Name | !Icon Name | ||
!Icon | !Icon | ||
!Icon Name | !Icon Name | ||
!Icon | !Icon | ||
|- | |- | ||
| | |{{code|icon_tip}} | ||
| [[ | |[[File:Env_instructor_hint_-_icon_tip.png|64px|Icon of {{code|icon_tip}}, located in {{path|materials\vgui\hud\iconsheet|vtf}} on {{l4d2|4}}.]] | ||
| | |{{code|icon_interact}} | ||
| | |[[File:Env_instructor_hint_-_icon_interact.png|64px|Icon of {{code|icon_interact}}, located in {{path|materials\vgui\hud\gameinstructor_iconsheet1|vtf}} on {{csgo|4|nt=csgocol}}.]] | ||
| [[ | |||
|- | |- | ||
| | |{{code|icon_info}} {{not|{{csgo}}}} | ||
| [[ | |[[File:Env_instructor_hint_-_icon_info.png|64px|Icon of {{code|icon_info}}, located in {{path|materials\vgui\hud\iconsheet|vtf}} on {{l4d2|4}}.]] | ||
|{{code|icon_button}}</br>(blank in {{csgo}}) | |||
|[[File:Env_instructor_hint_-_icon_button.png|64px|Icon of {{code|icon_button}}, located in {{path|materials\vgui\hud\iconsheet|vtf}} on {{l4d2|4}}.]] | |||
|- | |- | ||
| | |{{code|icon_shield}} {{not|{{csgo}}}} | ||
| [[ | |[[File:Env instructor hint - icon_shield.png|64px|Icon of {{code|icon_shield}}, located in {{path|materials\vgui\hud\iconsheet|vtf}} on {{l4d2|4}}.]] | ||
|{{code|icon_door}} | |||
|[[File:Env instructor hint - icon_door.png|64px|Icon of {{code|icon_door}}, located in {{path|materials\vgui\hud\gameinstructor_iconsheet1|vtf}} on {{csgo|4|nt=csgocol}}.]] | |||
|- | |- | ||
| | |{{code|icon_alert}} | ||
| [[ | |[[File:Env instructor hint - icon_alert.png|64px|Icon of {{code|icon_alert}}, located in {{path|materials\vgui\hud\gameinstructor_iconsheet1|vtf}} on {{csgo|4|nt=csgocol}}.]] | ||
|{{code|icon_arrow_plain}} {{not|{{csgo}}}} | |||
|[[File:Env instructor hint - icon_arrow_plain.png|64px|Icon of {{code|icon_arrow_plain}}, located in {{path|materials\vgui\hud\iconsheet|vtf}} on {{l4d2|4}}.]] | |||
|- | |- | ||
| | |{{code|icon_alert_red}}</br>{{code|icon_caution}} {{csgo}} (blank) | ||
| [[ | |[[File:Hint_005_icon_alert_red.jpg]] | ||
|{{code|icon_arrow_plain_white_dn}} | |||
|[[File:Hint_013_icon_arrow_plain_white_dn.jpg]] | |||
|- | |- | ||
| | |{{code|icon_tip}} (again)</br>{{code|icon_bulb}} {{csgo}} | ||
| [[ | |[[File:Hint_006_icon_tip_(again).jpg]] | ||
|{{code|icon_arrow_plain_white_up}} | |||
|[[File:Hint_014_icon_arrow_plain_white_up.jpg]] | |||
|- | |- | ||
| | |{{code|icon_skull}} | ||
| [[ | |[[File:Hint_007_icon_skull.jpg]] | ||
|{{code|icon_arrow_up}} | |||
|[[File:Hint_015_icon_arrow_up.jpg]] | |||
|- | |- | ||
|{{code|icon_no}} | |||
|[[File:Hint_008_icon_no.jpg]] | |||
|{{code|icon_arrow_right}} | |||
|[[File:Hint_016_icon_arrow_right.jpg]] | |||
|} | |} | ||
{{note|This entity is not limited to the icons listed above, refer to {{code|scripts/mod_textures.txt}} ({{l4dseries}}, {{as}}, {{p2}}, etc.) or {{code|scripts/instructor_textures.txt}} ({{csgo}}) located in the main {{path|pak01_dir.vpk}}, or on the "csgo" folder for more icon options. In CS:GO or some Source games, the icon may be blank. | |||
{{note| | }} | ||
==Keyvalues== | |||
{{KV Targetname}} | |||
{{KV|Target Entity|intn=hint_target|target_destination|The entity to show this hint on top of. The entity used must be one that is replicated on the client, or the hint will never show up. The {{ent|info_target_instructor_hint}} entity is designed for this purpose, allowing the hint to be placed in empty space or parented to a specific location on another entity. | |||
{{note|If an {{ent|info_target}} entity is used, the spawnflag to always transmit to the client must be checked.}}}} | |||
{{KV|Positioning|intn=hint_static|choices|Either show at the position of the '''Target Entity''', or show the hint directly on the [[HUD]] at a fixed position. | |||
:*0: Follow the '''Target Entity'''. | |||
:*1: Show on the HUD.}} | |||
{{KV|Allow invisible target|intn=hint_allow_nodraw_target|choices|Do we allow the hint to follow entities with nodraw set? {{confirm|{{ent|EF_NODRAW}}?}} | |||
:*0: End immediately on nodraw | |||
:*1: Yes}} | |||
{{KV|Caption|intn=hint_caption|string|The text of your hint. 100 character limit.}} | |||
{{KV|Caption Color|intn=hint_color|color255|The color of the caption text.}} | |||
{{KV|Activator Caption|intn=hint_activator_caption|color255|since=AS|The color of the caption text, as seen by the {{ent|!activator}}.}} | |||
{{KV|Force caption|intn=hint_forcecaption|choices|Do we show the caption text even if the hint is occluded by (hidden behind) a wall? | |||
:*0: No | |||
:*1: Show when occluded}} | |||
{{KV|Onscreen Icon|intn=hint_icon_onscreen|choices|The icon to use when the hint is within the player's view.}} | |||
{{KV|Offscreen Icon|intn=hint_icon_offscreen|choices|The icon to use when the hint is outside the player's view.}} | |||
{{KV|Show offscreen|intn=hint_nooffscreen|choices|When the hint is offscreen, do we show an icon and arrow? | |||
:*0: Show | |||
:*1: Don't show}} | |||
{{KV|Bound Command|intn=hint_binding|string|If using the '''use_binding''' setting for the '''Onscreen Icon''' or '''Offscreen Icon''', this field should be the command we want to show bindings for. Use {{ent|key_listboundkeys}} to see all bound keys.}} | |||
{{KV|Icon Height Offset|intn=hint_icon_offset|float|A height offset from the '''Target Entity''''s origin to display the hint.}} | |||
{{KV|Size Pulsing|intn=hint_pulseoption|choices|Speed for which the icon should grow and shrink, as a way to nag the player about the object. | |||
:*0: No Pulse | |||
:*1: Slow Pulse | |||
:*2: Fast Pulse | |||
:*3: Urgent Pulse}} | |||
{{KV|Alpha Pulsing|intn=hint_alphaoption|choices|Speed for which icon will become more or less transparent. | |||
:*0: No Pulse | |||
:*1: Slow Pulse | |||
:*2: Fast Pulse | |||
:*3: Urgent Pulse}} | |||
{{KV|Shaking|intn=hint_shakeoption|choices|The icon can shake. | |||
:*0: No Shaking | |||
:*1: Narrow Shake | |||
:*2: Wide Shake}} | |||
{{KV|Timeout|intn=hint_timeout|integer|The automatic timeout for the hint. 0 will persist until stopped with <code>EndHint</code>.}} | |||
{{KV|No Fade|intn=hint_nofadeout|boolean|only={{tsp}}|If true, this hint won't fade out when expired.}} | |||
{{KV|Display Range|intn=hint_range|float|The visible range of the hint. 0 will show it at any distance.}} | |||
{{KV|Show on First Sight|intn=hint_auto_start|boolean|When the player first has [[LOS]] to the target, it will automatically show for them. {{l4d2}} only.}} | |||
{{KV|Lesson Name|intn=hint_name|string|Hints with the same lesson name use a common base and are treated as instances the same lesson type. {{l4d2}} only.}} | |||
{{KV|Display Limit|intn=hint_display_limit|integer|The number of times a hint can be seen. 0 means unlimited. {{l4d2}} only.}} | |||
{{KV|Instance Type|intn=hint_instance_type|choices|How many instances of a single lesson type can be open or active at the same time. {{l4d2}} only. | |||
:*0: Multiple | |||
:*1: Single Open (Prevents new hints from opening.) | |||
:*2: Fixed Replace (Ends other hints when a new one is shown.) | |||
:*3: Single Active (Hides other hints when a new one is shown.)}} | |||
{{KV|Suppress rest before moving|intn=hint_suppress_rest|choices|Suppress the initial icon display in center of screen? {{l4d2}} only. | |||
:*0: No | |||
:*1: Yes}} | |||
{{KV|Only Local Player|intn=hint_local_player_only|boolean|since=AS|Shows the hint ''only'' to the first player to join/create the server. | |||
== | :{{note|This keyvalue appears to have not been coded into the [[FGD]] correctly. You must put 0 for "No" and 1 for "Yes".}}}} | ||
{{KV|Gamepad Bound Command|intn=hint_gamepad_binding|string|since=p2|If using the '''show key bindings''' setting for the '''Onscreen Icon''' or '''Offscreen Icon''', this field should be the command we want to show bindings for, when the user is using a console/non-keyboard controller of some kind (or PS3/X360).}} | |||
[[ | ==Inputs== | ||
{{I|ShowHint|param=targetname|Start showing this hint. If an entity [[targetname]] is passed as the parameter, the hint is shown only to that entity. | |||
In this | :{{warning|In {{l4d2}}, hints triggered by this input are only visible to the {{ent|!activator}}.}} | ||
:{{Workaround|A {{ent|point_template}} may be used to spawn in the desired env_instructor_hint entity; if '''Show On First Sight''' is enabled, this will cause the hint to immediately be shown to players who have line of sight to it.}} | |||
:{{note|In {{portal2}}, you cannot display more than one hint at the same time.}}}} | |||
{{I|EndHint|Stop showing the hint if it hasn't already timed out.}} | |||
== See also == | ==See also== | ||
* [[L4D2 Level Design/Instructor Hints]] | *[[L4D2 Level Design/Instructor Hints]] | ||
*{{ent|env_hudhint}} - Similar entity used in previous Source games. | |||
[[Category:GUI Entities]] | |||
[[Category:Mapbase entities]] |
Latest revision as of 22:35, 24 June 2025

env_instructor_hint
is a point entity available in all Source games since
Left 4 Dead 2. (also in
)
![]() |
---|
CEnvInstructorHint |
![]() |
It is used to instruct the player to do some things, such as not shoot teammates.
Icons







pak01_dir.vpk
, or on the "csgo" folder for more icon options. In CS:GO or some Source games, the icon may be blank.
Keyvalues
- Name (targetname) <string>[ Edit ]
- 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
- Target Entity (hint_target) <targetname>
- The entity to show this hint on top of. The entity used must be one that is replicated on the client, or the hint will never show up. The info_target_instructor_hint entity is designed for this purpose, allowing the hint to be placed in empty space or parented to a specific location on another entity.

- Positioning (hint_static) <choices>
- Either show at the position of the Target Entity, or show the hint directly on the HUD at a fixed position.
- 0: Follow the Target Entity.
- 1: Show on the HUD.
- Allow invisible target (hint_allow_nodraw_target) <choices>
- Do we allow the hint to follow entities with nodraw set?
Confirm:EF_NODRAW?
- 0: End immediately on nodraw
- 1: Yes
- Caption (hint_caption) <string>
- The text of your hint. 100 character limit.
- Caption Color (hint_color) <color255>
- The color of the caption text.
- Activator Caption (hint_activator_caption) <color255> (in all games since
)
- The color of the caption text, as seen by the !activator.
- Force caption (hint_forcecaption) <choices>
- Do we show the caption text even if the hint is occluded by (hidden behind) a wall?
- 0: No
- 1: Show when occluded
- Onscreen Icon (hint_icon_onscreen) <choices>
- The icon to use when the hint is within the player's view.
- Offscreen Icon (hint_icon_offscreen) <choices>
- The icon to use when the hint is outside the player's view.
- Show offscreen (hint_nooffscreen) <choices>
- When the hint is offscreen, do we show an icon and arrow?
- 0: Show
- 1: Don't show
- Bound Command (hint_binding) <string>
- If using the use_binding setting for the Onscreen Icon or Offscreen Icon, this field should be the command we want to show bindings for. Use key_listboundkeys to see all bound keys.
- Icon Height Offset (hint_icon_offset) <float>
- A height offset from the Target Entity's origin to display the hint.
- Size Pulsing (hint_pulseoption) <choices>
- Speed for which the icon should grow and shrink, as a way to nag the player about the object.
- 0: No Pulse
- 1: Slow Pulse
- 2: Fast Pulse
- 3: Urgent Pulse
- Alpha Pulsing (hint_alphaoption) <choices>
- Speed for which icon will become more or less transparent.
- 0: No Pulse
- 1: Slow Pulse
- 2: Fast Pulse
- 3: Urgent Pulse
- Shaking (hint_shakeoption) <choices>
- The icon can shake.
- 0: No Shaking
- 1: Narrow Shake
- 2: Wide Shake
- Timeout (hint_timeout) <integer>
- The automatic timeout for the hint. 0 will persist until stopped with
EndHint
.
- No Fade (hint_nofadeout) <boolean> (only in
)
- If true, this hint won't fade out when expired.
- Display Range (hint_range) <float>
- The visible range of the hint. 0 will show it at any distance.
- Show on First Sight (hint_auto_start) <boolean>
- When the player first has LOS to the target, it will automatically show for them.
only.
- Lesson Name (hint_name) <string>
- Hints with the same lesson name use a common base and are treated as instances the same lesson type.
only.
- Display Limit (hint_display_limit) <integer>
- The number of times a hint can be seen. 0 means unlimited.
only.
- Instance Type (hint_instance_type) <choices>
- How many instances of a single lesson type can be open or active at the same time.
only.
- 0: Multiple
- 1: Single Open (Prevents new hints from opening.)
- 2: Fixed Replace (Ends other hints when a new one is shown.)
- 3: Single Active (Hides other hints when a new one is shown.)
- Suppress rest before moving (hint_suppress_rest) <choices>
- Suppress the initial icon display in center of screen?
only.
- 0: No
- 1: Yes
- Only Local Player (hint_local_player_only) <boolean> (in all games since
)
- Shows the hint only to the first player to join/create the server.
Note:This keyvalue appears to have not been coded into the FGD correctly. You must put 0 for "No" and 1 for "Yes".
- Gamepad Bound Command (hint_gamepad_binding) <string> (in all games since
)
- If using the show key bindings setting for the Onscreen Icon or Offscreen Icon, this field should be the command we want to show bindings for, when the user is using a console/non-keyboard controller of some kind (or PS3/X360).
Inputs
- ShowHint <targetname >
- Start showing this hint. If an entity targetname is passed as the parameter, the hint is shown only to that entity.
Warning:In
, hints triggered by this input are only visible to the !activator.
Workaround:A point_template may be used to spawn in the desired env_instructor_hint entity; if Show On First Sight is enabled, this will cause the hint to immediately be shown to players who have line of sight to it.
- EndHint
- Stop showing the hint if it hasn't already timed out.
See also
- L4D2 Level Design/Instructor Hints
- env_hudhint - Similar entity used in previous Source games.