Thanks for looking into it. Upon second try I now see that "sleep" does work in Launchbox, but there's a different (but still related) issue what's causing my problem.
Launchbox runs the autohotkey script in parallel to starting a game/emulator, instead of waiting for the Autohotkey script to finish, thus any "sleep" in the autohotkey script has no effect on delaying the emulator start.
I'll explain a bit what I'm using it for, just that it (hopefully) also makes sense for you. For some of my emulators I'm switching "Primary display" in a multimonitor setup before launching a game/emulator. For this there needs to be a small delay after initiating the screenswitch before launchbox starts the game/emulator, otherwise it opens the game while the screens are switching, which confuses things / messes things up.
In the old launchbox for some reason adding a "Sleep 1000" after the screenswitch command worked (Which may have been coincidence after all)
In any case, this could be solved by:
A) Making launchbox wait for the Autohotkey script to finish before launching a game / emulator, instead of running it in parallel to executing the script (which seems current behaviour).
or
B) Add an option that enables the user to choose between the behaviour of A and the current behaviour.
Hopefully any such solution is possible.