EDIT: Progress, progress. Again! I'm on a roll.
Got the box to float above a character's head and contain the text properly, but there are still three core things that bug me. First, when at the full left or right of a screen the text will remain fully on the screen; the window won't.
Second, I still didn't find a way to determine which character is speaking from within the custom method script; I'm temporarily building separate talk method scripts for each character, because it tracks their position through Benny.X and such rather than using a variable to determine who should be speaking.
The third is that the box still doesn't fit to the size of the text.
ethod Talk(Text, SoundFilename, Duration, TalkStances, TextAlignment)
{
Game.Interactive = false;
global WinWindow;
global WinSubtitles;
var Static;
WinWindow = Game.LoadWindow("interface\BUBBLE\BUBBLE.window");
WinSubtitles = Game.CreateWindow("subtitles_window"); // position the subtitles window
WinWindow.X = actor.X - 200;
WinWindow.Y = actor.Y - 400;
WinWindow.Width = 400;
//~ WinSubtitles.Height = 300;
WinSubtitles.Visible = true;
// position of actors' speech subtitles
this.SubtitlesPosX = actor.X;
this.SubtitlesPosY = actor.Y - 400;
this.SubtitlesPosRelative = false;
this.SubtitlesWidth = 380;
Yeh. So. I'll update if I get further tonight.