Scripts are case sensitive, so ensure you get your case right. (filenames are not case sensitive, everything else is.)
Each line is split into words. If a function argument contains spaces or commas, you must enclose it in ""'s. commas behave in exactly the same way as spaces, so you can use them as argument seperators. If you want a function argument to contain a ", you must enclose the whole argument in ""'s and type '\"' where you want the ". To use a \ in an argument that is enclosed in ""'s, you must type '\\'. To add comments to your scripts, use ';'. To use a ; in an argument, you must enclose the whole argument in ""'s. All tabs will be converted to spaces before the line is parsed - use the %Tab% variable if you need to insert a tab into a messagebox. To extend a command across multiple lines, use the 'AllowRunOnLines' function and then end a line with a '\'.
To use variables, enclose a string in %%'s. If the enclosed string is not a known variable, obmm will not modify it, and will not display an error. This is to preverse backwards compatability with obmm 0.8.x or earlier. There are two variables which are defined in all scripts; %NewLine%, which is useful for creating multiline messages or for use with the ExecLines functions, and %Tab% which inserts a tab character. In any case where a variable is a specific requirement of a function, the %%'s must not be used.
To use an empty string as an argument, simply use an empty pair of quotes. (i.e. "" )
See the functions list (obmm script) topic for example scripts.
When using obmm script, the script editors error checker is only able to pick up a limited range of errors, such as incorrectly nested flow control.