Awesome, thank you for this amazing analysis
This is actually very similiar to what I've tried doing in my project (nutcracker) also.
(it's available here in case you would like to have a look:
https://github.com/BLooperZ/nutcracker#decompile-game-script)
which is currently able to parse v3-v8 (+ humongous entertainment games) (v3 and v4 currently not exposed in CLI)
my sources were the documents published by Aric Wilmunder and the windex-enabled demos (MI2 + Putt Putt)
I still working on figuring how to correctly transform the control flow to structured (specifically case..of and if..else)
also, I would like to add some more points I first learned from the short SCUMM code sample included in FT remastered (IIRC)
(you might already saw this, but they weren't written here yet)
- Indentation was done with TAB characters
- Comments are added with semicolon
Also, I haven't managed to figure out how the instructions for using colon, plus and comma in say-line until your example, so thanks again.