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:
NOTE: KVP is an abbreviation for "Key-Value Pair". When entering a KVP in the Radiant Entity Window, ensure that you have the entity selected first. If you do not have an entity selected, Radiant will automatically add the KVP to the "worldspawn" entity. This is BAD and will likely cause your map to crash while loading! In these pages, KVP's are referred to in this format: Key | Value. Note they are separated by a pipe ( | ) character. This character should be ignored when entering the Key-Value Pair.
To properly add a KVP to an entity:
Select the trigger_use brush(es) and give them the following KVP's:
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:
script_firefxkey 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.
script_fxidkey 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_noteworthykey 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_timekey 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:
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.
NOTE: "targeting" is a method for linking entities together in a group. Targeting has menu useful applications, such as controlling an entity that has multiple pieces. For example, the Mystery Box uses targeting to link each separate script_model part of the box to the main trigger_use. Targeting generates automatic targetname and target KVP's on the affected entities. When two items are properly linked together, a red or blue line is drawn from the main entity to each of its targets/links in Radiant.
To properly target one item to another:
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:
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:
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.