Commands:



Click here for a printable list of commands.

It's pretty obvious how to use most commands based on the definitions in the above list. However some commands cannot truly be understood unless combined with the other commands essential to them.

This section will cover the "Groups" of commands that integrate to make a script work. I'm covering basic uses in this section, in later sections as I show how to build scripts for specific purposes I'll go into detail on the how's and why's and specifics of how I use the commands as I put them in.

The Counter
Match Tables
Variables
Set Variables SF ONLY


The Counter -----

The counter command: One of the most powerful tools in the Wizard, it consists of 4 different parts, 6 in StormFront.
Its commands: Counter set - Counter add - Counter subtract - the variable %c - SF: Counter divide - Counter multiply.

The commands are used to manipulate the variable to create varying numbers. This can result in simply keeping track of having done something a number of times, or can be combined with labels making a single action have a massive number of outcomes based on what action have been taken prior (this is how my EZhunter script runs).


Match Tables -----


Match Tables are what make your script, they are the building blocks.
Commands: Match - Matchwait - SF ONLY: Matchre

A Match Table is used in a script like an intersection in a road. You come to it, and based on what is occurring it sends you in multiple directions.
A table is constructed with a series of matches followed by a matchwait, usually with a 'put' command, like so. If you're using SF, matchre's and match's can exist in the same table.

matchre [label] /[text]/i <---- SF only
match [label] [text]
match [label] [text]
match [label] [text]
put [in game command]
matchwait

In Wizard you can only have 32 matches in one table. In StormFront I have yet to find a limit to the number of matches I can use, currently I've gone as far as 320 matches in one table.


Variables -----

Used for variable recall: There are three types of variables in a Wizard script. User variables, the COUNTER variable, and the SAVE Variable. SF allows Set Variables which are defined with the setvariable command.

On opening a command script, a user can input up to 9 variables, these are the User variables. They are recalled in the script using %1 through %9. %0 will recall all user Variables at once. Each word (unless multiples are combined with periods, quotes, or in SF an underscores) counts as one variable and they are numbered in the order they are typed.
The Shift can be used to... well shift user variables. When used the value for %1 is removed from the script and the value of %2 becomes %1, %3 becomes %2 etc etc.

The COUNTER variable is the number that the counter is currently set to, it is recalled by using %s.

The SAVE variable is the word or phrase that has been saved via the save command and can be recalled using %s (multiple words must be combined with periods, quotes, or in SF underscores).

EXAMPLE: A script has been starting using the command -- .forage corn -- corn is now the %1 variable. In this script is the a line that reads -- save 'thigh pouch' -- thigh pouch is now %s. The script is also set up to count the number of times a person has foraged using the counter command. That number is %c.

At the end of each cycle before the script repeats, this line is initiated: echo You have foraged for %1 %c times, they are in your %s. Assuming the user has completed 5 cycles, this line would appear in game as: You have foraged for corn 5 times, they are in your thigh pouch.





Set Variables -----

Set Variables are supported by SF only and are defined within the script using the setvariable command. They can be named anything and contain any amount of text. They are recalled in the script using %[name], with [name] being the name the variable was created as.

setvariable [name] [text]

EXAMPLE: Putting the command setvariable Name Malific in a script, then following it with the line echo %Name will cause the script to echo Malific.

Please keep in mind that Setvariables in SF ARE case sensitive. So in the above example "echo %name" would NOT result in the script echoing Malific.