Call of duty bo3: ZM Debris
This tutorial shows how to create simple or advanced Buyable Debris Barrier with Sounds / FXs, all in Radiant, no scripting involved.
How it works
- The debris must at least contain:
1 x Script_model item (the object blocking the way) 1 x Script_brushmodel Clip (to block the way) 1 x Trigger_use (to buy / activate the debris barrier)
- The general Targetting idea is this:
The trigger targets the scriptmodel which in turns targets a script_struct The script_brushmodel targets the script_model
- A stock script (zm_blockers.gsc) handles all the moving, sounds and FXs
- The example .map for this tutorial is available HERE
- First place a model(s) to block the way of door / area and make this misc_model a script_model (best way to do this is to add "script_model" to your favorite - right click menu)
- The script_model(s) will contain most of the options for the final effect; here are the KVPs available:
script_firefx : set to "poltergeist" (default) - This is the fx that will play on move, dont add if you dont want any script_fxid : set to "poltergeist" (default) - This is the fx that will play on final delete of the model, dont add if you dont want any script_noteworthy : set to "jiggle" if you want the model to jiggle a bit before the move script_transition_time : this is the time for the move, can be used to create staggered move effect if more than one script_model - "2" is a good place to start from
- Next create a brush with CLIP texture to block the door / area from player + zombies:
- Change this brush into a script_brushmodel
- Now drop a Trigger_use on top of the blocker model, making sure that it protrude enough for player to get the Trigger Hint:
- The trigger needs a few KVPs to work, they are as follow:
targetname == zombie_debris zombie_cost == Cost of the debris - optional script_flag == This should be set to zone the debris is opening up (example: "enter_second_zone") - optional
- Next drop a script_struct, this will be the end point for the debris to dissapear. You can either put it way high or put it visible to the player, like in the demo provided.
- Finally you need to connect a number of things for the setup to work:
Connect/Link the Trigger to the script_model(s) : this must be done in pairs, trigger + script_model, then next one, etc.. Connect the script_brushmodel to the script_model(s) Connect the script_model(s) to the script_struct (can be one for each debris model)
Tip: You can save the setup as a prefab if you want to re-use it
- Save and compile your map, the debris barrier should work!
Here is a more advanced debris barrier, same technique just more script_models, script_struct for each and timings