Here is another way to exit. 
Code:
Break On
$path = "%windir%\msagent\chars\merlin.acs"
$agent = CreateObject ("agent.control.2")
$agent.connected = 1
$= $agent.characters.load("merlin",$path)
$merlin = $agent.characters.character("merlin")
$= $merlin.moveto(400,200)
$= $merlin.show()
$wait = $merlin.Play("announce" )
Do Sleep 0.25 Until $merlin.wait($wait) <> 0
?"After announce..."
$wait = $merlin.speak("Hello! I am a basta !" )
Do Sleep 0.25 Until $merlin.wait($wait) <> 0
?"After I am basta..."
$wait = $merlin.speak("Jooel is a basta !" )
Do Sleep 0.25 Until $merlin.wait($wait) <> 0
?"After Jooel basta..."
$wait = $merlin.speak("Wouldn't you like to be a basta too ?" )
Do Sleep 0.25 Until $merlin.wait($wait) <> 0
?"After you basta..."
$wait = $merlin.Play("READ")
$merlin.speak("Oh yeah, it says here Cybex is one cool basta!" )
Do Sleep 0.25 Until $merlin.wait($wait) <> 0
$wait = $merlin.hide
Do Sleep 0.25 Until $merlin.wait($wait) <> 0
Exit 0
_________________________
Common sense isn't so common.