Creating CTF Maps

From Skulltag

Revision as of 05:14, 21 August 2006 by Theshooter7 (Talk | contribs)

Wondering how to make a Capture the Flag map? It's very simple. with the new map standard, introduced in Skulltag 0.96b. A CTF map is created just like a Deathmatch map, except for the design. If you're looking for map designing tips, see Deathz0r's guide. You also use a different kind of player start, and have flags.

First, design your map. Then place the Blue Starts [DoomEdNum: 5080] where you want Blue Team players to spawn (normally they're clumped together in a base). Do the same for Red Starts [DoomEdNum: 5081]. Do not place any Single Player starts or Skulltag will think your map is a Single Player map.

Next you need to add your flags. Add the Blue Flag [DoomEdNum: 5130] and the Red Flag [TID: 5031] to your map. You also should put the White Flag [DoomEdNum: 5132] in as well. This allows people to play 1 Flag CTF on your map.

Now when anybody join the game he or she will use the 'Select Team' menu. Using the keyboard and the Space button they select their team (Red, Blue, or Random). You can switch teams under the Multiplayer Menu / Player Setup / Change Team button.

Team Select Rooms

A much nicer option is to make a team selection room. This is a physical room where brand new players run to the team of their choice. You also have more control as a designer then with the default menu.

To make a team selection room, create some sort of new room that doesn't connect to the playing area. You also need to choose a way that players will select a team. The most common practice (which we use here) involves three short hallways with teleporters at the ends. One teleporter puts you on the blue team, another on the red team, and the third (which is usually in the middle) puts the player on a random team.

Create your hallways. Next, setup a line across the blue hall that runs a script that does two things: print a message that says "This hall selects the blue team", and puts the player on the blue team (using the ACS function Player_SetTeam( TEAM_BLUE ),;. Now, do the same thing for the red team. Finally, have the teleports inside each hallway teleport the player to the appropriate base. Should be simple enough.

The random hallway is a little bit more complicated. The selecting of a team and the teleporting to the base will be done at the same time, so you need to use a script. This script should be Executed [SID: 80] by the four Teleporter linedefs when a player crosses them. The code should look like this:

int iTeam;

iTeam = rand( TEAM_BLUE, TEAM_RED );
if ( iTeam == TEAM_BLUE )
{
     Player_SetTeam( TEAM_BLUE );
     Teleport( <blue base tid> );
}
else
{
     Player_SetTeam( TEAM_RED );
     Teleport( <red base tid> );
}
Personal tools
WE ARE CHANGING HOSTS!