Login x
User Name:
Password:
Social Links Facebook Twitter YouTube Steam RSS News Feeds

Members Online

»
0 Active | 9 Guests
Online:

LATEST FORUM THREADS

»
CoD: Battle Royale
CoD+UO Map + Mod Releases
Damaged .pk3's
CoD Mapping
heli to attack ai
CoD4 SP Mapping

Tutorials

»
CoDUO Mapping
ratings:
Awful Rating
Poor Rating
Average Rating
Good Rating
Excellent Rating
CTF Maps by jdawgg2020j
Versions: You must be logged in to view history.
Making a capture the flag (CTF) map, thanks to jdawgg2020j.
So you want to make a Capture the Flag map, huh? And you have no idea where to get the CTF spawns, the flags themselves, and all the other little nit-picky things that are associated with CTF? Well here we go, it is actually really complicated, but once you nail it you can save the entire thing as a prefab and use it elsewhere.

First, we'll make the flag that you steal. Make a script_model by right clicking and going to script - model. Then bring up its entity values by pressing 'N' and type in the following keys and values.

Key: model

Value: xmodel/mp_ctf_flag_usa60

Key: script_gameobjectname

Value: ctf

Key: target

Value: axis_ctf_pickup

Key: targetname

Value: ctf_flag_allies

Okay, position the flag where you want it, and let's move on. Next we need to make an mp_gmi_ctf_flag by right clicking, going to mp - gmi_ctf_flag. Bring up its entity values, and make the following keys.

Key: script_gameobjectname

Value: ctf

Key: target

Value: yourname001

(this one might be filled in by default, in which case leave it)

Key: targetname

Value: axis_ctf_pickup

Then we are done with that. Make sure you remember what value you gave 'target' because we need to keep that persistent. Next let's make another script_model, and enter the following keys and values:

Key: model

Value: xmodel/mp_ctf_flag_usa40

Key: script_gameobjectname

Value: ctf

Key: target

Value: allied_drop

Key: targetname

Value: ctf_flag_allies_mobile

What we just did was make the flag that the player carries when they pick up the enemies flag. Okay, next step is to make a couple triggers. First, right click and make a trigger_multiple by going to trigger - multiple. Make it something thin, like 12 x 12 units. Then go ahead and go to Textures - Common and give it a trigger caulk so we know what it does. Now press 'N' to bring up it's entity values, and enter in the following:

Key: script_gameobjectname

Value: ctf

Key: targetname

Value: allied_drop

Done. Just make the trigger tall, so that it is taller than the mobile flag we made. Now copy that trigger, by hitting spacebar, and make it a lot smaller. Make it a little cube that'll fit inside of the trigger we just made beforehand. Apply a different texture to it (such as the Origin caulking) and then just move it towards the bottom of the other trigger so it looks something like this:

tut1.JPG

And now we should have the mobile flag, the tall trigger, and the cube trigger all done and aligned something like this for ease of reference and for the best gameplay:

tut2.JPG

Okay now, let's keep going. Still lots to do! Okay, let's just make a copy of the tall slender trigger we made and bring up its entity values by pressing 'N'. The only thing we are going to change is:

Key: targetname

Value: axis_ctf_pickup

(it used to be allied_drop). So now make a copy of the copy hehe, and shrink it down to the same size as that little cube we made earlier (eyeball it, it doesn't need to be a specific size). Again, apply the origin texture to it, and hit 'N' and we are going to do the same change to this one too.

Key: targetname

Value: axis_ctf_pickup

So now we should have the following:

tut3.JPG

Okay, in that above picture we see the blue box which is the mp_gmi_ctf_flag, and we see the tall flag on top of it. Then we see the tall slender trigger with the orange cube just to the left of it. Then we see the shorter flag (the mobile one) and we see the tall slender trigger with the little cube one there as well. To summarize, the two triggers that are paired up with the mobile flag have the targetname as allied_drop, and the two triggers paired up with the tall stationary flag pole both have the targetname set to axis_ctf_pickup.

Okay, now we need to make a new trigger_multiple by right clicking and going to trigger - multiple. Let's make it a cube (make it a little larger than those little cubes we made so you can tell the difference) and go ahead and texture it with the original caulk. Then bring up its entity values and put in the following:

Key: script_gameobjectname

Value: ctf

Key: targetname

Value: yourname002

Remember way back at the second step I had you make one of those with the value of yourname001? Well this is where we have to be careful. We do NOT want these two matching. However, bare in mind we will need these to match with something else, so take note of the target name you make for this one as well.

One more step! Now move everything we made relatively close, just to make life easy, but keep each trigger and flag paired up so we can easily go back to reference it. Now right click someplace and make a new trigger_multiple by going to trigger - multiple. Then texture it with the trigger caulk so we know its a trigger, and resize it so it encompasses the area in which the players will return enemy flags. Now bring up the trigger’s entity values by pressing ‘N’ and enter the following.

Key: script_gameobjectname

Value: ctf

Key: target

Value: yourname002

So my final base looks like this in my map:

tut4.JPG

Okay, now we have to make the spawns - UGH UGH UGH this is a LONG tutorial :P. Alright, let's start by right clicking, and going to mp - uo_spawn_allies. Drop the guy in, and make the following key:

Key: script_gameobjectname

Value: ctf

Position him where you want it, amd then make copies of him and spread him out. This is where the players will spawn! Now I did a lot of testing, and as far as I know you also have to do the next step.

Right click, and make an mp - uo_spawn_allies as well as a mp - uo_spawn_allies_secondary. When I was testing it would not let me change the map to CTF until I had those in as well. It might have been just a minor glitch I encountered, but throw them in because it doesn't hurt. Put them anywhere you want.

We are done with the Allies base!!! HURRAY!!!

Okay, good news is, we basically reverse it all for the axis base, so this should go faster. Now follow these instructions closely, otherwise you'll mess something up.

Copy everything you make. There should be a total of 9 objects you select before you copy it. They should be 1 blue box, 2 tall slender triggers, 2 small cubic triggers, 1 tall flag, 1 short flag, 1 larger cube, and then 1 overall trigger that encompases them. That's 1+2+2+1+1+1+1 = 9. Now hit the spacebar key, and drag it to where you want the axis flag and base to be. Here's where you might get lost, but if you made the objects as I said, and colored them as I said, it should be easy.

First, after it is all in position (or a rough position) deselect them and select just the blue box. Enter (or edit the old one) the following Keys and Values:

Key: target

Value: yourname002

Key: targetname

Value: allies_cft_pickup

Target used to be yourname001, but we are changing it to yourname002. Targetname used to be axis_ctf_pickup but we changed it to allies_ctf_pickup (changed AXIS to ALLIES).

Done. Now select the tall flag that is associated with the blue box, and enter the following:

model: change the usa60 after the last _ and make it ge60. The way we do this is by left clicking on the model key that is already entered in the box, and the in the Value box at the bottom just delete the usa60 and type in ge60, then press the Enter key and it should make the changes to the Key that is in the list.

Do the same to target. Make target allies_ctf_pickup (change the word "axis" to "allies").

Done with that. Go to the smaller flag and by now you should see a pattern in how I am editing all these keys and values. What I'm doing is just taking any "axis" and making it "allies" or something like that. So now make this model end with _ge40 rather than _usa40. Also change this targetname to _axis_ rather than _allies_ in the middle of the targetname. So it should be like this:

Key: model

Value: xmodel/mp_ctf_flag_ge40

Key: targetname

Value: ctf_flag_axis_mobile

Done with that. Now take the two triggers (the tall slender one and the cubic one) that are associated with the short flag and change the targetname from allies_drop to axis_drop. Now deselect those, and select the two triggers associated with the TALL flag and change the targetname to allies_ctf_pickup instead of axis_ctf_pickup.

Okay, now the last little thing is the larger cube, remember? The independent one? Well select it, and change the targetname from yourname002 to yourname001.

Now just select the big trigger than encompasses all of that stuff, and change the targetname from yourname002 to yourname001 as well. Then we are done.

Now just right click and drop in an mp_uo_spawn_axis, be sure to add the script_gameobjectname key and make the value ctf, then duplicate it a few times so there are a few spawns. Then right click, and make an mp_uo_spawn_axis and an mp_uo_spawn_axis_secondary, and do not add the script_gameobjectname to those.

Done? NOPE!!! Hahaha, but this last part is easy. Right click and add your CTF Intermission. Then you are DONE!!! Go play it, it will work! For those of you who should not be making maps, I will explain how to put in the CTF intermission lol. Right click on the wireframe, go to mp - ctf_intermission is at the top. Place it in, give it a direction to face, and save the map.

Finaly, the map should look like this. Note there are some colorful lines connecting the various objects we made. If they do not show up, that is not good. They should look like this:

tut5.JPG

The top pic shows a top down view of the map, and you can see the red lines being drawn from one base to the other. Then in the other pics are two close-ups of the bases so you can see the lines that are drawn. There are others that you might not be able to see, such as the lines that go from the triggers to the flags, but they should be there.

Testing is a pain, if it doesnt appear to be working, do it the long way by starting a server on CTF Arnhem, then pull down the console and move the map to your map and that should get it to work. For some reason if I try to load the map on the CTF gametype it goes to DM anyway. That is just when I am testing off my BSP, if I make a pk3 file and pick it from the list it works fine.

Hope this helped. That is a VERY LONG tutorial going step-by-step. The best part is, when you are done with it, you can save it ALL AS A PREFAB and use it in other maps without having to change a gosh darn key or value. Just load it in, drag each base in place, and voila. Map a la CTF.

Best Regards,

Jdawgg - The guy who no longer has functioning fingers!!!

IMPORTANT ADDITION:
It is imperative that you test WITH A FRIEND. If you follow this tutorial and go test the map by yourself, you will NOT be able to pick up the enemy's flag. Reason being, the round technically has not started yet.

What this means is, you must send the bsp file to a friend (they can NOT auto-download a bsp) and you must have them make the necessary directory to place the bsp file in, and then they have to connect to your server. So long as you two are on opposite teams, the game should start, and then you will be able to pick up the flags just fine.

Latest Syndicated News

»
Codutility.com up and runn...
Nice, and there still using the logo and template for the screenshots, which...
Codutility.com up and runn...
dundy writes...Quote:Call of Duty modding and mapping is barly alive only a ...
Codutility.com up and runn...
Mystic writes...Quote:It seems to me the like the site is completely dead? ...
Codutility.com up and runn...
It seems to me the like the site is completely dead?

Partners & Friends

»