I do not use any of those programs, but still might help you.
"If .. Else .. " blocks, like all If conditions, should be closed by Endif.
You probably need only one check, no .. else .. condition, because if "warn" fails the script will jump to Endif and continues normal execution.
I'll make following assumptions:
WB 1.3 is default.
It loads from first bootable partition with high priority (DH0).
WB 3.1 is exception.
It boots from (non-bootable)partition with lower priority (DH1).
Put following code on top of dh0:s/startup-sequence
-------------------------
vercheck 40>
if warn
movesys dh1:
execute s:startup-sequence
endif
...... ()
If Kick_3.1 is not selected current startup loads WB_1.3.
EndCLI is not needed as it is executed at end of each startup-sequence.
Execute does not run a script asynchronous. CLI or current script waits for end of execution.
Hope this works
