Wonderful work! Thank you for taking the time to write this up.
Some fixes:
Script commands are documented in
script.html, not commands.html.
Face direction: Always takes exactly one turn, even if the character is invisible, or already facing the specified direction.
(This is a bug I'm fixing in 2.0.8 -- neither of these situations should halt the script, i.e. they should act as [Free].)
Appear/appear at/disappear: If the character is already visible or has no appearance type, the command has no effect and counts as a Free command.
(This isn't true for Appear/Appear at -- they both act as disappear, which [Restrict]s. However, this is a bug to be fixed in 2.0.8: they should act as [Restrict] when changing visibility, otherwise [Free].)
Speech: ...or estimated as 50 milliseconds per character...
(This should be 1s + 50ms/char. Additionally, here's a non-documented behavior: if subtitles are set to not be displayed when a sound clip is playing, and if a speech's delay is set to 1ms, the text is not shown even when w/o an attached sound clip. This is not a bug -- it's a special case used to split text onto two or more lines when it's too long to fit on one, but better to have a single sound clip for the entire bit, in which case, the text shouldn't show for the rogue lines.)
Set Music: (It's probably useful to mention that if, on room entrance, music is set to the type playing when the last room was exited, then that music will continue playing uninterrupted.)
I'd replace "
swordsman"
with "
player"
everywhere (for future maintenance).
"
but start its script with"
-->
"
might start its script with"
____________________________
Gandalf? Yes... That's what they used to call me.
Gandalf the Grey. That was my name.
I am Gandalf the White.
And I come back to you now at the turn of the tide.