What are the Overhead Icons?
These are bitmaps that float over the head of npcs. They give information about what the player can do when interacting with that character.
Meet the Icons
Shops

Armor Seller

Weapon Seller

Magic Seller

Pet Seller

Reagent Seller
Quest

Primary Quest Available

Secondary Quest Available

Party member Quest Available
The character has a secondary quest that requires the player to have a certain party member with them.

Task Active
This character has given the player a task, but the player doesn't meet the requirement to complete it.
Speaking to the character will give a quest prompt.

Primary Task Complete
Speaking to this character will complete a primary quest task.

Secondary Task Complete
Speaking to this character will complete a secondary quest task.
Misc

Lesson Giver
This character has tutorial-style information for the player. Likely results in a handbook entry.

Hireable Charcter
This character will offer to join the party.

Enchanter
This character will offer to enchant items.

Innkeeper
This character can increase a player's party size. Also, you can re-acquire disbanded party members here.

Mug
Old Icon for the Inn, not used in DS2.
Combo

Combo Icons
These are used when a character has both a Quest and another function.
How Do I Add One?
You can add one by putting an
[indicate_emitter] block in an actor's template, or by placing an
emitter_indicate via the editor. It's preferable to put it in an actor's template. The gizmo should be used with actors that can't use scidbits (hireables, spawned) or in special case situations.
Both methods use
indicate_emitter.skrit, found here
..world\contentdb\components\emitters\indicate_emitter.skrit
This component handles all the streaming and saveload issues for the icon.
There are several modifiable properties in this skrit, These are the relevant ones:
// Indicator textures
indicator_texture_1$ = "b_gui_el_talk2me" // primary quest !
indicator_texture_2$ = "b_gui_el_question-mark" //primary quest ?
indicator_texture_3$ = "b_gui_el_question-mark_grey" //grey ?
indicator_texture_4$ = "b_gui_el_info" // info icon
indicator_texture_5$ = "b_gui_el_join" //hirable icon
// Parameters used to customize the look of many of the effects
scale$ = 1.0 //generally not changed
height$ = 0 //left to 0, it defaults to the actors bounding sphere radius * 1.5 when placed on an actor
ignore_actor_height$ = false //set to true if you want to explicitly set the height
//initial state
initially_active$ = true //Whether this effect is initially active when it is first loaded.
initial_texture$ = 1 // Which of the above indicator_textures to use
Examples
By modifying these setting you can show any of the icons. These values can be modified in the tempates (preferred), or in the instance.
indicator block for a pet seller
[indicate_emitter]
{
indicator_texture_1 = b_gui_el_pack-mule-exclamation;
}
indicator block for a hireable
note: change the inital texture when using icons that are defined as defaults. In this case b_gui_el_join
[indicate_emitter]
{
initial_texture = 5;
}
indicator block for a Quest Giver, Quest not yet active
note: no icon is present over this character until it recieves a message telling it to display.
[indicate_emitter]
{
initially_active = false;
}
indicator block for a combination Quest Giver / enchanter
note: this character starts with a combo questgiver/enchater icon. And later switches after being messages (more below)
[indicate_emitter]
{
indicator_texture_1 = b_gui_el_hand-exclamation;
indicator_texture_2 = b_gui_el_hand-q-mark-o;
indicator_texture_3 = b_gui_el_hand-q-mark-g;
indicator_texture_5 = b_gui_el_hand;
}
Changing the Icons in Game
You can activate, deactive, and switch the icons in game. The
indicate_emitter.skrit will look for and act on several messages to manage its state. The skrit also talks care of all streaming/saveload issues. Lastly, these emitters are client/server objects. That means that
messages must be broadcast to them , not just sent. Failure to broadcast the message results in the change only taking place on the host's machine.
| WE_USER_INDICATE_EMITTER_ON | turns on the icon |
| WE_USER_INDICATE_EMITTER_OFF | turns off the icon |
| WE_USER_INDICATE_EMITTER_SWITCH | requires data1 to be set to a value between 1 and 5. The active texture is set to the matching indicator_texture. This will also turn on an icon if its currently off. |
| WE_USER_INDICATE_EMITTER_INFO | set the active texture to indicator_texture_4. By default, this is set to the info icon. |
| WE_USER_INDICATE_EMITTER_TASK_ACTIVE | set the active texture to indicator_texture_2. By default, this is set to the active task icon. |
Messaging Via Flick
This is the preferred method of messaging
indicate_emitter, as most of the time they're updated from talk flicks. Use the flick
BroadcastMessage command.
BroadcastMessage (role_name, Message);
Messaging Via Triggers
You can also message the
indicate_emitter directly from a trigger. Set up your trigger action like this:
Bitmaps
Here is a list of the available icon images from DS II. They can be found in
..art\Bitmaps\GUI\Elements
| b_gui_el_talk2me | Primary Quest |
| b_gui_el_exclamation-orange | Secondary Quest |
| b_gui_el_exclamation-green | Party Member Quest |
| b_gui_el_exclamation-grey | Quest, not yet available |
| b_gui_el_question-mark_gold | Primary Task |
| b_gui_el_question-mark_orange | Secondary Task |
| b_gui_el_question-mark_grey | Task Prompt |
| b_gui_el_amulet | Reagent Seller |
| b_gui_el_shield | Armor Seller |
| b_gui_el_sword | Weapon Seller |
| b_gui_el_pack-mule | Pet Seller |
| b_gui_el_inn | Innkeeper |
| b_gui_el_hand | Enchanter |
| b_gui_el_info | Lesson Giver |
| b_gui_el_join | Hireable |
| b_gui_el_tombstone | Corpse Summoner |
| b_gui_el_amulet-exclamation | Reagent / give quest |
| b_gui_el_amulet-q-mark-g | Reagent / Task prompt |
| b_gui_el_amulet-q-mark-o | Reagent / Task complete |
| b_gui_el_potion-exclamation | Magic Seller / give quest |
| b_gui_el_potion-q-mark-g | Magic Seller / Task prompt |
| b_gui_el_potion-q-mark-o | Magic Seller / Task complete |
| b_gui_el_pack-mule-q-mark-o | Pet Seller / Task Complete |
| b_gui_el_pack-mule-q-mark-g | Pet Seller / Task Prompt |
| b_gui_el_pack-mule-exclamation | Pet Seller / Quest Available |
| b_gui_el_hand-exclamation | Enchanter / Quest Available |
| b_gui_el_hand-q-mark-g | Enchanter / Task Prompt |
| b_gui_el_hand-q-mark-o | Enchanter / Task Complete |
| b_gui_el_mug | Mug |
203: Journal
Supreme Commander