Set Multi Character Step
Introduction
Displays a split-screen conversation with characters arranged in two opposing groups — a left group facing right and a right group facing left. Each group shows one character at a time: the most recent speaker from that group, or the first member listed until one speaks.
This enables conversations with three or more participants without alternating between individual characters.
Interface
interface SetMultiCharacterStep {
kind: 'setMultiCharacter';
/** Character keys in the left-hand group (face right). */
left: string[];
/** Character keys in the right-hand group (face left). */
right: string[];
condition?: string;
}
Properties
kind- Always'setMultiCharacter'left- Array of character keys for the left group. The most recent speaker from this group is displayed, or the first listed until one speaks.right- Array of character keys for the right group. The most recent speaker from this group is displayed, or the first listed until one speaks.condition(optional) - Conditional execution
Behavior
- When a
speechstep fires for a character in theleftgroup, that character is highlighted on the left side and the other side is dimmed. - When a
speechstep fires for a character in therightgroup, that character is highlighted on the right side and the other side is dimmed. - A
textstep or a speech from a character in neither group dims both sides. - A
clearCharacterstep exits multi-character mode and returns to single-character mode.
Examples
// A three-way dispute between the player and two factions
{
kind: 'setMultiCharacter',
left: ['Aeima'],
right: ['ShenHenda', 'JiuhuaLin']
}
// A council scene with multiple advisors on each side
{
kind: 'setMultiCharacter',
left: ['Elder1', 'Elder2', 'Elder3'],
right: ['Disciple1', 'Disciple2']
}