Candy Logo Copyright © 2025-2026 Candy Arts

Speaker Highlight
When an Actor with a bust on screen speaks, their bust can be highlighted while their Line is shown, so the player sees at a glance who is talking: a name tag, an outline, a slight zoom, an animation... The highlight is applied in every Dialogue Mode except Barks, and only while the Engine's vn_mode is on. Built-in Highlights The VN Scene's speaker_highlight setting turns each kind of highlight on or off. Several can be combined.
KeyHighlight
"NameTag"Displays a NameTag node inside the speaker's bust node (a Label or RichTextLabel), with the speaker's DisplayName, translated into the Engine's current language (see Translating Names). The Dialogue Box's name label is emptied meanwhile, so the name isn't displayed twice.
"Outline"Displays an Outline node inside the speaker's bust node, such as a colored outline image.
"OutlineHideReal"With "Outline", also renders the bust itself transparent, so the outline replaces it.
"Scale"Scales the speaker's bust node by "Scale_Size" (e.g. 1.1 for 10% larger).
"Animation_1"Plays the animation named in "AnimationName_1", on the VN Scene's highlight_player_1 AnimationPlayer, applied to the speaker's bust node.
"Billboard"Sprite3D and AnimatedSprite3D busts only: turns billboarding on while the Actor speaks, using the VN Scene's billboard_on and billboard_off modes.
Every highlight is undone when the Line ends. Setting up
  • "NameTag" and "Outline" require a node of that exact name in each bust node. Hide them in the scene: the highlight displays them.
  • "Animation_1" requires an AnimationPlayer assigned to highlight_player_1, with the animation. Its tracks are relative to the speaker's bust node, which becomes the AnimationPlayer's root_node for each Line. When the Line ends, a RESET animation plays, if there is one: the one in the highlight animation's library, else the AnimationPlayer's own.
Your Own Highlights Two functions in VN_UI.gd apply the highlight, and are meant to be modified:
FunctionCalled
highlight_speaker(speaker_ref, dialogue_mode, custom_data)When the Line starts.
end_highlight_speaker(speaker_ref, dialogue_mode, custom_data)When the Line ends. It must undo everything highlight_speaker() did.
  • speaker_ref: the speaking Actor.
  • dialogue_mode: the Line's Dialogue Mode ("Box", "VN_Bubbles"...). Both functions match on it, so each mode can be highlighted differently: for example, a name tag in Box mode, but none in VN Bubbles mode, where the bubble already shows who speaks.
  • custom_data: the Spoken Line's Custom Data, [[line values], [Variation values]] (see UI Elements).
Add keys of your own to speaker_highlight (such as "Animation_2") to turn your own highlights on and off from the Inspector. For several highlight animations at once, add more AnimationPlayers like highlight_player_1. VN_UI.gd is an 'unsafe' file: updates overwrite your modifications to it. Modify these functions in a copy of the script, under a new name, attached to your own VN Scene (see Customizing UI Elements, on the UI page).