Blockers force players to spend money to unlock new areas in a map.
First you must create the blocker in Radiant. A standard blocker consists of these items:
Select the trigger_use brush(es) and give them the following KVP's:
Key |
Value |
---|---|
targetname |
zombie_debris |
script_flag |
<zone_name> |
zombie_cost |
<any number> |
green
are optional.
By default, zombie_cost sets itself to 1000. If you would like to set a
custom price, set the
zombie_cost
key and replace '<any number>' with a numerical value.
Select the debris script_brushmodel(s) or script_model(s) and give them the following KVP's:
Key |
Value |
---|---|
spawnflags |
1 |
script_firefx |
<fx_name> |
script_fxid |
<fx_name> |
script_noteworthy |
jiggle |
script_transition_time |
<any number> |
green
are optional.
script_firefx
key and replace '<fx_name>' with any included, loaded, and declared fx
name. Treyarch maps use "poltergeist" (without quotes). You can
use this fx as it is included, loaded, and declared already.
warning|The script_firefx fx will only play if you have defined a
script_linkTo struct for the debris to fly to. If you have applied the UGX
Modtools Patch to your World at War installation, the fx will play
regardless of the presence of a script_linkTo struct for your convenience.
To install the patch, refer to section 2.2 of the
Modtools Installation Guide
.
script_fxid
key and replace '<fx_name>' with any included, loaded, and declared fx
name. Treyarch maps use "poltergeist" (without quotes). You can
use this fx as it is included, loaded, and declared already. If you do not
create a script_linkTo struct, this KVP is irrelevant and the fx will never
play because nothing will move.
script_noteworthy
key to "jiggle" (without quotes). If you do not create a
script_linkTo struct, this KVP is irrelevant and the fx will never play
because nothing will move.
script_transition_time
key and replace '<any_number>' with a numerical value (measured in
seconds). If you do not create a script_linkTo struct, this KVP is
irrelevant and the fx will never play because nothing will move.
Select the clip script_brushmodel(s) and give them the following KVP:
Key |
Value |
---|---|
spawnflags |
1 |
script_noteworthy |
clip |
Now that you have created all of the necessary items and given them the
correct KVP's, it is time to link the items together using targeting.
Once you have linked all the entities to the root trigger_use, copy the target KVP from the root trigger_use to each of the remaining trigger_use's. The lines should now be going from all trigger_use's.
Optionally you can specify a point for debris to fly away towards when purchased. For example, you could specify that the debris fly away at a 45 degree angle into the ground.
To define a script_linkTo:
Give the script_struct the following KVP:
Key |
Value |
---|---|
script_linkName |
<linkName> |
Replace <linkName> with a unique name of your choosing. *Do not use the same linkName for more than one script_struct!
Select your debris model and give it the following KVP:
Key |
Value |
---|---|
script_linkTo |
<linkName> |
Now that you have created one working zombie_debris blocker, you can copy/paste it as many times as you want. Since we used targeting, the targetnames of the children are dynamic and will be regernerated for every copy. If you used multiple trigger_use's, you will need to manually edit the target KVPs for every copy, just as you did in section 1.3. Be sure to update the script_flag value if you copy the doors for a new zone volume.
Credit: Treminaor