1) if the script is exec'd via an action, that limits it to only it's user.
2) _fire exec "\Wizboat\smoke.sqs"
assuming you want to access a folder withing the missions folder, drop the first \. Otherwise :-X That doesn't solve it tho. If it has come up with an error of a missing file, it wont anymore. I can't see anything wrong with the script. Perhaps it's the way you exec it. Since _fire = _this, it would go:
boat exec "script.sqs". But since if it's an action... then you'd have to give the boat the action, then it'd be _this select 0.