Skip to content

Add VN variable interpolation in dialogue and HUD text #3

@S1mplector

Description

@S1mplector

Why

We already expose VN variables via [set/inc/dec/flag/unflag] and JES return props but authors cannot surface those values in dialogue or HUD without custom Java/interop. Dynamic text (e.g. showing player name, score, timers) is a common VN need and as currently authors must hardcode text or hack HUD calls per value

What to do

1.Add a lightweight placeholder format (e.g. ${var} or {var}) that resolves against VnState.getVariables()
2.Apply substitution when rendering/storing dialogue (before history entry) and when showing HUD messages, missing variables resolve to empty string
3. Keep compatibility so plain text unchanged, no recursion, simple string replacement is fine
4. Update docs/VNS Scripting/VNS Scripting.md with syntax and examples: Alice: Welcome back, ${playerName}!, [hud Score: ${score}]

Criteria

-Dialogue lines and [hud ...] may include placeholders; they render with current VN variable values
-Missing vars -> blank
-History stores the resolved text

Metadata

Metadata

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions