Tutorials

DOD Flags



First of all, like any map, were going to need a sealed off area with a light. Once you have that down, we can start adding our flags.

Click your Entity Tool <!-- s:entity_tool: --><img src="https://www.interlopers.net/forum/images/smilies/entity_tool.jpg" alt=":entity_tool:" title="entity_tool" /><!-- s:entity_tool: --> and place a entity by clicking in your 3D view.

Grab it, with your arrow tool:arrow: , and then hit Ctrl+Enter, to bring up its properties. Under the "Class" field, select the dod_control_point entity. There’s a lot of options below in your Keyvalues menu. Let's fill the important out as the following:

Name: Flag01
Localized Name: First Flag
Time based points for allies: 1
Time absed points for axis: 1 (How many points you get while this flag is owned.)
Default Owner: Neither
Sound made when Axis cap: Voice.German_FlagCapture
Sound made when Allies cap: Voice.US_FlagCapture
Group Name: Flags
Index of this point: 1(Remember, for every new point you MUST change this number, or your flags wont work as expected)
Hud icon when neutral: sprites/obj_icons/icon_obj_neutral
Hud icon when axis owns point: sprites/obj_icons/icon_obj_allies
Hud icon when allies own point: sprites/obj_icons/icon_obj_axis
(by hitting the browse button beside these, we open our texture browser, type "sprites obj" in the filter, this will bring up possible choices for your hud. Like the bridge in anzio, or avalanches fountain)

Now go to your brush tool, <!-- s:brush: --><img src="https://www.interlopers.net/forum/images/smilies/brush.jpg" alt=":brush:" title="brush" /><!-- s:brush: --> and make a box around your flag covered in the <!-- s:trigger: --><img src="https://www.interlopers.net/forum/images/smilies/toolstrigger.jpg" alt=":trigger:" title="trigger" /><!-- s:trigger: --> texture. This is your area in which you can capture that flag. While it’s selected and in red, hit Ctrl+T to Tie it to a entity. Next hit alt+enter, like before to bring up it's properties. Under class, select dod_capture_area Let's fill the important out as the following:


Name: Flag01_Cap
Can allies cap: Yes
Can axis cap: Yes (whether or not a team can capture this point)
Number of allies to cap: 1 (number of people on either team required to capture the point)
Number of axis to cap: 1
Time to cap: 2.5 (total time in seconds required before capture is complete)
Name of the control point: Flag01 (our earlier named control point)


Next we make 2 more entities named: dod_control_point_master, and a info_doddetect. It doesn’t really matter where these are placed, because they basically just tell the game what to do. lets open our dod_control_point_master And let's fill the important out as the following:


Group Name: flags (our groupname from our control point)

Next open up our info_doddetect, And let's fill the important out as the following:

Allies respawn delay factor: 1.0 (How often spawn times are)
Axis respawn delay facto: 1.0
Start round command for allies: Flags
Start round command for axis: Flags (These are your beginning sounds that play)

You should be able to compile, making sure you have at least 1 spawn, a sealed room, and a light, and everything should work just peachy.

Still not satisfied? Let's get a little more in-depth. I'm going to show you how to make a missile come down and blow up a wall when you’re done capturing. Plus a few more tidbits.

Advanced Flags


Setup

Using the above lets make 2 complete flags:
flag01, and flag02 as our control points
flag01cap and flag_02cap as our capture areas
make 6 ambient generic's, to be placed anywhere
make 1 logic auto
make 1 phys_explosion
make 1 env_shake
make a wall, or anything out of brushes and tie it to a entity, it will be a func_breakable.

1st, ambient generics, These following are the names, and the sound used for each. also every ambient generic has play everywhere checked on in the flags tab, and all start OFF.

Name................Sound Name

axbackup.......... Voice.German_BackUp
axholdVoice....... German_Hold
sbackupVoice..... US_BackUp
usholdVoice....... US_Hold
missleambient... /explosions/explode_1.wav
comingmissle.... weapons/mortar/mortar_explode2.wav

logic auto:

Name: timer01
Start Disabled: Yes

phys_explosion:

Name: explode1
Magnitude: 250


Env_Shake:

Name: shake1
Amplitude: 10
Effect Radius: 600
Duration: 2
Frequency: 200

Flags to check: GlobalShake, Physics, Ropes.


Func_Breakable:

Name: wallbreak
Strength: 0

Flags to check: OnlyBreakOnTrigger.

Capture Area Tidbits

lets go to our dod_capture_areas. Lets open up our entity I/O tab. Our first flag, on the first side of the wall will have the timer output, our second flag will not have the timer output, just the ambient generic outputs.

Outputs: hit add to add one, and enter the following:

news post image

The Timer

Go to our Outputs tab and enter the following:

news post image

Explanation

Basically, in the above, for your dod_capture_area, you made it so when you start the capture, by walking into it, whether your axis or allies, a sound will play saying "hold this position". If the capture is broken, you will hear a "I need backup" sound.

And when the first flag is fully captured, you trigger our timer, which will almost immediately start and play a missile incoming sound, and then followed by a explosion sound, a real explosion, a shake, and the wall being destroyed.

Thus, a new path to possibly a second flag is created. I hope this taught you something <!-- s:D --><img src="https://www.interlopers.net/forum/images/smilies/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->

news post image news post image

VMF:
Grab the wallbreak.vmf file here

Hyp-R

View comments ( 17 )

Back to top