First off, if you are just starting to map, then I would not suggest reading further until you
know all about triggers and targets. This tutorial is not design to make a good map, and will only
show you how to do a specific scene. Additional knowledge must be used to create your own sequences.
This by no means, means that you must be an expert, but please use your own judgement.
Okay, you read the documentation, went online and are still confused. Well don't worry, so was I.
But after a few days, I finally stumbed across the picky tricks on how to get these pearls to work.
And I assure you, you'll be glad you took the time, b/c these can create some really cool touches to you map.
What you basically need are a
multi_manager entity
one or more scripted_sequences or scripted_sentences
an actor (monster_scientist, monster_barney, monster_generic, etc..)
and a brush tied to a trigger (trigger_once should do fine)
Below is the placement of all the entities I used. Unless
a scripted_sequence is used as a marker for an actor to move to, the location is unimportant.
Things not colored are just parts of the map.
It's important to add these entities in order because for some reason Worldcraft will cause
bugs that give you a headache, and you don't need that. The lines below are the values that need
to be changed, default flags are not mentioned here.
1) Entity type: scripted_sequence
targetname = idle
Target Monster (m_iszEntity) = rod ( or any name you choose for you're 1st actor)
Action Animation (m_iszPlay) = Idle4 (This is the one that makes the scientist look down)
Move to position (m_fMoveTo) = No (0)
2) Entity type: scripted_sequence
targetname = ponder1
Target Monster (m_iszEntity) = rod
Action Animation (m_iszPlay) = pondering3 (Scientist taps one foot and looks around)
Move to position (m_fMoveTo) = No (0)
3) Entity type: scripted_sequence
targetname = shake
Target Monster (m_iszEntity) = rod
Action Animation (m_iszPlay) = no (Scientist shakes his head 'no')
Move to position (m_fMoveTo) = No (0)
4) Entity type: scripted_sentence
targetname = no
Speaker Type (entity) = rod
Sentence Name (sentence) = !SC_ANSWER19 (Scientist says 'no')
Listener Type (listener) = player
5) Entity type: scripted_sequence
targetname = ponder2
Target Monster (m_iszEntity) = rod
Action Animation (m_iszPlay) = pondering (Scientist rubs his chin, thinking)
Move to position (m_fMoveTo) = Walk (1)
6) Entity type: scripted_sentence
targetname = yes
Speaker Type (entity) = rod
Sentence Name (sentence) = !SC_ANSWER10 (Scientist says 'yes')
Listener Type (listener) = player
7) Entity type: scripted_sequence
targetname = nod
Target Monster (m_iszEntity) = rod
Action Animation (m_iszPlay) = yes (Scientist nods his head 'yes')
Move to position (m_fMoveTo) = No (0)
8) Entity type: scripted_sequence
targetname = shootit
angle = 220
Target Monster (m_iszEntity) = rod
Action Animation (m_iszPlay) = Idle5 (Scientist looks to his right)
Move to position (m_fMoveTo) = No (0)
9) Entity type: scripted_sentence
targetname = sayshoot
Speaker Type (entity) = rod
Sentence Name (sentence) = !SC_ROCKET (Scientist says 'turn on the rocket, kill the thing before it grows any larger')
Listener Type (listener) = player
10) Entity type: scripted_sequence
targetname = grenade
Target Monster (m_iszEntity) = bob ( or any name you choose for you're 2nd actor)
Action Animation (m_iszPlay) = pipetoss (The Human Grunt acts out tossing a grenade)
Move to position (m_fMoveTo) = No (0)
10) Entity type: func_breakable
targetname = comp
Material Type (material) = Computer (6)
Explode Magnitude (explodemagnitude) = 50 (health points)
11) Entity type: multi_manager
targetname = talk
(Each of these variables is the names of the scripts and sentances that you want to occur. Enter these in order, or WorldCraft messes things up for some reason. The number after each variable is the number of seconds after being triggered for it to activate)
idle = 1
ponder1 = 4
shake = 6
no = 7
ponder2 = 8
yes = 16
nod = 16
shootit = 17
sayshoot = 18
grenade = 24
comp = 26.5
12) Entity type: monster_scientist
13) Entity type: monster_generic
targetname = bob
model = models/hgrunt.mdl ( You must use a monster_generic with the grunt's model so it doesn't mow down the scientist, but if you want some amusement..... All the animations still work too, so this won't cause any problems, since he dies at the end of the script anyway.)
Whew..okay, now this is all fine, but won't do a thing. So you must add a brush right before the scene and tie it to
a 'trigger_once' entity. Then set the "target = talk". So when you walk into that brush, the scene will play. Also
as stated above, use a monster_generic entity for the grunt, or he'll start using his wu-tang style on you and the
scientist. Another thing to note is that two or more scripted_sequences targeted at the same actor,
will not play until the first one is through, so the time at which the second or third etc.. action is played out, it
might be later than the time you set it to play in the multi_manager. Who cares? you ask, well if you have a
scripted_sentence or another actor having sequences or sentences, then those will play at their set time, while the
rest are trying to catch up, and can through things out of sequence.
Compile and hope for the best, please download both my actual
map and the source for easy refernce. If you want
to use different animations or spoken lines, you can reference the entitiy help file in the Help menu of WorldCraft
and also the sentences.txt in the sounds directory
within the pak0.pak file.
"Why does this page take a half hour to load?"
"Blow it up? why sure."
"Take that monopolistic piece of trash!"
"Eh, grenade at close range was kinda stupid."