Dialogue
High-Level Overview: A classic, snappy text-box system paired with illustrated 2D character portraits. Portraits swap images to match the emotional context of the text, giving the cast plenty of personality without needing full 3D facial animation.
Implementation Breakdown
1. The Text Box
Position: Bottom center of the screen during single-player and cutscenes. In split-screen gameplay, dialogue boxes anchor to the bottom of each player's screen half.
Behavior: Text scrolls in with a typewriter effect, letter by letter.
Controls: Pressing the interact button instantly completes the current sentence. Pressing it again advances to the next box.
2. The Portrait Frame
Position: Mounted to the left or right side of the text box, alternating depending on who is speaking. Playable characters always appear on the left hand side when speaking to NPCs, and on opposite sides when speaking to each other.
Visual Style: Clean 2D hand-drawn character art. When a character speaks, their portrait subtly hops or pulses in scale to show active talking.
3. Expression State Matrix
To make scripting easy, script lines carry emotion tags (e.g. [Koopa: Worried]). The engine swaps to the corresponding 2D asset automatically.