Beginner's Guide

Creating Tasks



Are you ready to make your first task? Great! You've done a good job so far. You might think that this is a little complicated to start off with, but I think you'll get the hang of it really fast.

Select the Question Mark Icon from the toolbar or select Create, Task, from the menu. Don't be intimidated by all the tabs on the task window. They are quite useful. We need to first create a task for turning on the television. Since we already created the TV and the state, this should go pretty fast and be very simple.

We need to create a command that the player must type in. I prefer to use advanced command structure. Here is an example of what I would enter as the first command.

[turn/switch][on]{the/a/an}[tele{vision}/tv]

The brackets [ ] around the words turn/switch means that the player could type in either word and it will be understood as long as the player also types in what is in the other [ ] in the command. Anything within the { } brackets is optional for the player to type in. So the player could type in any of the following using this one command.

>turn on the television
>turn on tv
>switch on tele
>switch on a tv


You get the idea. You will need to create as many commands as possible to avoid 'guess the verb'. Using wildcards in your commands can be helpful in catching more things that the player may try, but it can also cause a lot of problems, including allowing a bunch of rubbish to slip by. The biggest problem is if you used a command such as turn * television and used the command for turning the television off too, it would obviously get confused. The wildcard acts as a catch all, so the word on or off- or others could be substituted in its place. This is the reason I try to strictly use advanced commands. It is a little more work to catch all instances of 'guess the verb', but it is more than worth it. I always try to type out a few phrases just in case. If you find it isn't working, then look over your commands carefully until you get it right, or have someone else look at it for you.

The placement of the * is also important when creating task commands. If you were to use the command turn * tv on - any word can be substituted in place of the *. So the player could type in turn the tv on, turn up tv on, turn chocolate tv on. You will want to keep this in mind when creating your task commands. However, using the * within a word can be very beneficial. As you can see I used tele* in some of the commands. This will allow the player to type in tele or television. As I have said before, there is a drawback to using the wildcard. In the previous example, the player could also type in teleport, telecommunications, telemarketer, or any other word that begins with tele. So you will want to think about what you need, and use the type of command that best suits your needs.

I have used the following advanced commands and wildcard commands below.

[turn/switch/watch][on]{the/a/an}[tele{vision}/tv]
[turn/switch/watch]{the/a/an}[tele{vision}/tv][on]
turn on * tele*
turn tele* on
turn the tele* on
turn on tv
turn on television
turn tv on

Now that you have several commands for turning on the television we need to tell the player what happens when they turn the television on. In the message to be displayed box, tell the player what happens. I used the following.

You turn on the television. channel%channel%

Having the variable there, it should display what is on when the TV is turned on. Now select Living Room for the room that the task can be completed in.

Click the Restrictions tab and select Add. Select State of Object as the type of restriction. Now move to the next dropdown window (where it says referenced object) and select the television. Now in the next dropdown window select OFF. In the else display message, type in: The TV is already on. Or something along those lines. Then click on the Add button.

Now click on the Actions tab, select Add, for the type of action select Change object status. Set status of Television to On. Click the Add button. Now click Add again, Change Variable, select the variable channel, then select TO random value between. In the first blank box type in the number 1, and in the last box type in the number 6. The reason for the number 1 and the number 6 is because those are the descriptions from the alr that we want to have displayed when the television turns on. Only one of the descriptions will be displayed.

Click on the Reversible tab and check the repeatable task checkbox. If you want to add a hint, you can, but it isn't really necessary for this. You're ready to see if your TV will turn on. Click the Add Task button, save your file and run it. If you get an error message saying you can't have a certain bracket, then you need to check and make sure that they are correct.

When you type in Turn on TV in the runner, you should get the message - You turn on the TV. There is a commercial for toilet tissue on right now. (Please note that the toilet tissue commercial may not be displayed - you may see one of the other descriptions from the alr instead. This is because we set the action to change it to a Random value.

Now we need to create a task to turn off the television. Select the Task icon again to bring up the task window. You will need to do this much like you did for turning the television on. Below are the task commands that I used for turning the television off.

[turn/switch][off]{the/a/an}[tele{vision}/tv]
[turn/switch]{the/a/an}[tele{vision}/tv][off]
turn off * tele*
turn the tele* off
turn off the tv
turn the tv off

(Please note that you cannot use wildcard in advanced commands, but you can use them separately.)

Now select the room for task to be completed in - the Living Room. In the description type in something like:

You turn the television off. channel%channel%

We need to add a restriction, so click on the Restrictions tab, select Add, then select Object State from the type of restriction menu box, select the television, then set it to On. In the else display message box, type in that the television is already off. Click the Add button.

Click the Actions tab. Select Change object status, then select the television and set it to Off. Click Add.
Click Add (still on the Actions tab) and select Change Variable, select channel, and then select To exact value, set the value to 0. Now click Add.

Select the Reversible tab and check the repeatable box. Now click Add Task. Save your game and run the file to test it.

Since you already added channel%channel% to the description box of the television object, any time someone examines the TV it will tell them if it is on or off and it will tell them what is showing if anything at all.

You've done great so far! Let's do one more task for changing the channels.

Select the Task Icon or Create, Task from the menu. Add your commands for changing the channel. I added the following.

[change/flip/switch/turn]{the/a/an}[channel{s}/station{s}]{with}{the/a/an}{remote{control}}
use * remote *
use * remote * tele*
change * channel *
flip * channel *

Select Living Room, as the room to be completed in. In the description type in something like the following:

You change the channel. channel%channel%

You can type in anything you need, just don't forget to add channel%channel% after the description. Now select the Restrictions tab. Select Add, Object Location, select the remote, must be, held by, Player. For the else display message you can type something like:

You need the remote to change the channels.

Select Add.

We need another restriction, so click Add again, State of Object, television, must be, On. Else Display:

You can't change the channels when the television is off!

Select Add.

Now select the Actions tab, Add, Change Variable, change variable channel, To Random value between, 1 and 6. Click Add. Now make it repeatable by checking the box on the Reversible tab. Add the task, save, then run the game and try it out.

Now you are ready to learn how to create a character.



Table of Contents     Creating Characters