Skip to content

7.2 Localization

BDC_Patrick edited this page Dec 10, 2025 · 3 revisions

Localization Tools

The Dialog Backend Editor includes built-in tools to automate the workflow between the Data Table and Unreal Engine's String Table system. These tools can be accessed via the Toolbar at the top of the Dialog Graph Editor.

Export to Localization

Icon Description
Export to Localization Converts raw text into String Table Keys and creates/updates String Table assets.
Logic Flow

When clicked, the editor performs the following operations:

  1. Asset Creation: It looks for (or creates if missing) two specific String Tables in the same folder as the Dialog Tree asset:
    • ST_Loc_Dialog_Speakers: A shared table for Speaker names.
    • ST_Loc_Dialog_[AssetName]_Messages: A dedicated table for dialogue content specific to this tree.
  2. Speaker Processing: Iterates through all nodes.
    • Speaker names are de-duplicated Project-Wide.
    • It checks if the Speaker name already exists in the Speakers String Table.
    • If it exists, the node is linked to the existing Key.
    • If it is new, a key is generated (Loc_Speaker_[RandomID]) and added to the table.
  3. Message Processing: Iterates through all Message and Option nodes.
    • Message content keys are generated based on the Node ID: Loc_Message_[NodeID].
    • The text is added to the asset-specific Messages String Table.
    • The Dialog Node in the Data Table is updated to reference this String Table Key instead of holding raw text.
  4. Cleanup: Any keys in the Messages String Table that are no longer referenced by the current Dialog Tree (orphaned keys) are automatically removed.

Unlink from Localization

Icon Description
Unlink from Localization Reverts String Table references back to raw editable text strings.
Logic Flow

When clicked, the editor performs the following operations:

  1. Iteration: Loops through all Message and Option nodes in the current Dialog Tree.
  2. Lookup: Checks if the SpeakerName or Message/OptionMessage is currently linked to a String Table.
  3. Extraction: If linked, it retrieves the actual source string (Display String) from the String Table registry.
  4. Replacement: Overwrites the Data Table entry with the raw string literal.
  5. Result: The connection to the String Table is broken, allowing you to freely edit the text directly in the graph node again. This does not delete the String Table assets.

Documentation Index

I. What is the Dialog Backend?
II. Setting up
III. Binding UI
IV. The Subsystem
V. The Components
VI. Dispatchers
VII. Others

Demo available: Demo Page

Clone this wiki locally