‘Bring Object to Location’ Objectives
There are two ways to think of such a goal: Place the object anywhere in a room (e.g. drop a body in a room), or place it on another object (e.g. drop a scroll on a desk).
When doing this for the first time, it is recommended that you try the following in a small practice mission:
Place Object In A Room
-
Add to the object the script TrigRoomDeposit
Create a
Route link from the object to the Room (you can type the Room’s name in the
From box).
If your goals have not yet been created, for now you can create any type of
Lever (
Buttons won’t work here) and give the object a
ControlDevice link to it. You can then check that it’s working.
If the goal has been created, instead of the
Lever, create a
QuestVarTrap and add the
Trap→Quest Var property.
In this property, enter the following: =1:goal_state_X where X is the goal number.
Create a
ControlDevice link from the object to the
QuestVarTrap. When the object is dropped, the goal should become complete.
The effect isn’t limited to setting objectives. Other events can be triggered by using things like RelayTraps, DestroyTraps, TeleportTraps etc, or some object with a custom script, instead of a QuestVarTrap
Go into Game Mode and check that it works.
This method will only work in Thief 2. The script TrigRoomDeposit isn’t available for Thief 1. You will have to use one of the other methods.
Place Object 1 on Object 2
Setting up Object 1
Add to Object 1 the property:
Act/React→Sources. You’ll then see what looks like the
Links window. But it isn’t.
Click on Add, and the Source Editor window should appear.
Before entering the object number, select HolyStim from the Stimulus menu below.
Once the stim has been selected, the object will revert to None(0). If you get into the habit of choosing stim before entering the object number, you are less likely to forget about this bug.
From the Propagator menu, select Contact
Set the Intensity to 10. The window should look something like this:

Choose your stim wisely. Choose a stim that will not affect anything else in your mission. For example if your mission has zombies, don’t use HolyStim. If you create your own stim (by selecting Act/React Stimuli from the Show Tree menu), you can be sure it will not interfere with anything in your mission. This will require the use of a custom gamesys, and the mission and gamesys will need to be reloaded for the new stim to be ready for use.
Setting up Object 2
If your goals haven’t yet been created, place a Button nearby, and note the ID, or give it a name.
-
You should see a Behaviour window.
For Object, enter the name or ID of Object 2 (There is no need to enter A Table (56). 56 will be fine).
From Stimulus, select whatever stim you added to Object 1.
For Min Intensity enter 9 , and for Max Instensity, enter 11.
From Effect, what you choose depends on whether or not you’ve got a goal to test.
If you haven’t yet created the objective (e.g. by running a TOW or GoalMaster generated cmd file or by typing the commands yourself), create a button and note its ID number. In this example, the ID is 4.
This is also the way to go if you want to trigger something other than an objective change. Give the button a
ControlDevice link to some other object(
RelayTrap, object with a custom script etc).
From Effect, choose Frob Object, and for Target Object, enter the name or ID of the Button
If the objective has already been created, set the Effect to Set Quest Variable.
In the bottom right of the Behaviour window is an Edit Effect button. Click on that, and you should see an Effect Data window.
In the Quest Variable field, enter: goal_state_X , where X is the goal number.
Operation can be left at it’s default value (Set To).
In the Operand field, put 1 . I.e. it sets the value of goal_state_X to 1