L4D2 Level Design/Instructor Hints

From Valve Developer Community
Jump to: navigation, search
English (en)Русский (ru)中文 (zh)
Edit

While you should strive to make player goals clear through the use of lighting and map design, you will often find that it is helpful to provide progression information on screen. This is particularly true if you require a custom activity or have an unexpected event that you'd like to inform your players about. The convention in Left 4 Dead is to use an instructor hint, and Left 4 Dead 2 allows you to create your own. There are two ways to add an instructor hint into your level, either using an info_game_event_proxy which you can use to insert existing hints, or by creating a custom hint using env_instructor_hint

Using a predefined hint

Image showing a fully set up game event proxy.

To use a hint already in L4D2, place an info_game_event_proxy into your level where you'd like the hint to appear. To choose the hint that you'd like to appear copy the hint name into the "Name of the event to generate" box, and change the "Range" to one that you'd like. If you want this to trigger upon the player seeing it you will need to go to the Flags tab and check "Fire Automatically When First Seen".

You can view all the available instructor hints here: List of L4D2 Instructor Messages


Example:
Name of the event to generate: L4D2_Instructor_explain_perimeter1
Range: 500

Note.pngNote:The upside of using predefined hints is that the hint will be translated to any language the game is running on.
The downside is that setting them up is tedious because nowhere in Hammer does it say what messages are available and what their texts would read. Meaning you'll have to check the List of L4D2 Instructor Messages page every time you use it.

Creating a custom hint

The two required entities.

First, place a new entity of class env_instructor_hint. This allows you to control and specify the hint parameters.

Additionally, the hint will also need a 3D location in your map to appear and to control visibility. We can do this by creating a client-side entity to point to. The easiest way to accomplish this is to place a named info_target entity and enabling the "transmit to client" (respect PVS) flag. This can be found under the Flags tab of the properties dialog when the info_target is selected. Once you assign the info_target as the Target Entity of the env_instructor_hint, you should see your hint in game.

The caption text that you specify should now appear to players in game.

Triggering Hint

If a hint should not be visible immediately upon being in its radius, you'll want to trigger them manually via the press of a button, a trigger, or a timed event.
env_instructor_hint has a ShowHint Input, but unfortunately that is bugged and will only show the hint to the !activator, which will be whoever pressed the button to show it.
Instead, you'll need to add a point_template to spawn the env_instructor_hint which has Show On First Sight set.

See also