I know this post is a month old, but I figured I'd share my setup that is related to topic above. This is not perfect, and I'm still making changes, but does not fail for me thus far.
Please note: You will need to change where it points to for starting Steam, Steam VR, and Elite Dangerous.
Display window 'Elite - Dangerous (CLIENT)' as [Normal]
Begin Text Compare : [{ACTIVEWINDOWPROCESSNAME}] Equals 'Elite - Dangerous (CLIENT)'
Say, 'Elite Dangerous Client is currently running at this time.' (and wait until it completes)
Write '[Blue] Elite Dangerous Is Detected.' to log
End Condition - Exit when condition met
Display window 'Elite Dangerous Launcher' as [Normal]
Begin Text Compare : [{ACTIVEWINDOWPROCESSNAME}] Equals 'Elite Dangerous Launcher'
Write '[Blue] Elite Dangerous Launcher Is Detected.' to log
Say, 'Only the Elite Dangerous Launcher is running. Launching Elite Dangerous from launcher.' (and wait until it completes)
Press Enter key and hold for 0.1 seconds and release
Say, 'Virtualizing into Elite Dangerous. Fly safe Commander.' (and wait until it completes)
End Condition - Exit when condition met
Display window 'Steam' as [Normal]
Pause 1 second
Begin Text Compare : [{ACTIVEWINDOWPROCESSNAME}] Equals 'Steam'
Write '[Blue] Steam Is Detected.' to log
Execute command, '[Open;start;Launch] [Steam VR;Steam V R;V R]' (and wait until it completes)
Say, 'Virtualizing into Elite Dangerous.' (and wait until it completes)
Run application 'E:\Program Files (x86)\Steam\Steam.exe' -with parameters '-applaunch 359320 /EDH /steamid 441340 /VR'
Pause 2 seconds
Press Enter key and hold for 0.1 seconds and release
Say, 'Fly safe Commander.' (and wait until it completes)
Pause 35 seconds
Begin Text Compare : [{ACTIVEWINDOWPROCESSNAME}] Does Not Equal 'Elite Dangerous Launcher'
Write '[Orange] Elite Dangerous Client is not focused. Fixing...' to log
Display window 'Elite - Dangerous (CLIENT)' as [Normal]
Else
Write '[Blue] Elite Dangerous Client is Focused.' to log
End Condition
Else
Write '[Red] Steam Is NOT Detected.' to log
Execute command, '[Open;start;Launch] steam' (and wait until it completes)
Display window 'Steam' as [Normal]
Begin Text Compare : [{ACTIVEWINDOWPROCESSNAME}] Equals 'Steam'
Write '[Blue] Steam2 Is Detected.' to log
Execute command, '[Quit;Stop;Exit;close] Steam [VR; V R;Virtual Reality]' (and wait until it completes)
Say, 'Virtualizing into Elite Dangerous.' (and wait until it completes)
Run application 'E:\Program Files (x86)\Steam\Steam.exe' -with parameters '-applaunch 359320 /EDH /steamid 441340 /VR'
Pause 2 seconds
Press Enter key and hold for 0.1 seconds and release
Say, 'Fly safe Commander.' (and wait until it completes)
Pause 35 seconds
Begin Text Compare : [{ACTIVEWINDOWPROCESSNAME}] Does Not Equal 'Elite Dangerous Launcher'
Write '[Orange] Elite Dangerous Client is not focused. Fixing...' to log
Display window 'Elite - Dangerous (CLIENT)' as [Normal]
Else
Write '[Blue] Elite Dangerous Client is Focused.' to log
End Condition
End Condition - Exit when condition met
Write '[Red] Steam2 Is NOT Detected.' to log
Say, 'Steam not detected. Please diagnose.' (and wait until it completes)
End Condition - Exit when condition met
Say, 'I seem to have hit an error in the Starting Elite Dangerous at this point. Please take a look.' (and wait until it completes)
Yes, a fair bit of diagnosing error messages if something doesn't work, but when it doesn't work, it's nice to track and follow the route.
I have attached the above, and a few other related steam, VR, and Elite commands. None of which interact with the game, just starting, stopping, and focusing windows, along with detecting what is and isn't running/focused on.
Yes, I use text to speech. Once I'm done setting things up, I'll replace the text to speech lines with voice/recordings. For now, enjoy female Jarvis knockoff. xD