Half-Life@Far2Cool - Sponsored By Business Corporations Network Ltd. Edition Printed

FREE TO FANS!

Worldwide Edition
http://www.far2cool.com/half-life/
[The Latest Edition] [Story] [Screenshots] [Discussion Forum] [Guestbook]

Supplement : Creating Scripted Sequences

by : Dann - 13th December 1998

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

    targetname = rod

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.

Stupid PQ
"Why does this page take a half hour to load?"

Stupid PQ
"Blow it up? why sure."

Stupid PQ
"Take that monopolistic piece of trash!"

Stupid PQ
"Eh, grenade at close range was kinda stupid."

Please e-mail webmaster@far2cool.com with comments about this site.

©1998 The Far2Cool Gaming Network
Over copies printed since Sept 1998