TF2/Making an Arena map: Difference between revisions
m (typo) |
(Yeah, don't use a team_round_timer on arena, since tf_arena_roundtime exists to do this for you.) |
||
Line 172: | Line 172: | ||
Now, if you load your map, you will notice the server will keep you in the spawn area as it waits for more players to join. Open up the console and type <code>sv_cheats 1;bot</code>. This will add a bot to the server and let you playtest the map. We haven't made bots do stuff though. They just stand in spawn and do nothing | Now, if you load your map, you will notice the server will keep you in the spawn area as it waits for more players to join. Open up the console and type <code>sv_cheats 1;bot</code>. This will add a bot to the server and let you playtest the map. We haven't made bots do stuff though. They just stand in spawn and do nothing | ||
== See also == | == See also == |
Revision as of 17:19, 28 May 2013
This gametype is included in A Boojum Snark's Team Fortress 2 Gametype Library
The complete entity setup for this gametype is included in "A Boojum Snark's Team Fortress 2 Gametype Library," a downloadable VMF that includes all official Team Fortress 2 gametypes. The entities can easily be transferred from the VMF to your own custom map without the hassle of having to build it yourself or debugging it.
"A Boojum Snark's Team Fortress 2 Gametype Library" can be downloaded here: TF2Maps.net
Arena is a new gamemode for TF2 that came along with the heavy update. In this gamemode, you don't respawn until your whole team is dead. The goal is to kill everyone on the enemy team, or to capture the center control point of the map. The control point is locked for 60 seconds in Valve's Arena maps, and cannot be captured until it's unlocked.
This article will tell you how to set up the Arena gamemode.
Arena gamemode entities
First we'll need an entity to check when a team captures the center control point.
Property Name Value Name master_control_point
This entity will be used to send an output when a round starts and when the control point is enabled. Specify the amount of seconds you want before it's activated here. 60 is the default setting.
Property Name Value CapEnableDelay 60


- Save your map, close it in hammer and open it in notepad.
- Press ctrl+F and search for tf_logic_arena
- Add this text above "origin":
connections
{
"OnCapEnabled" "cap_flag,ShowModel,,0,-1"
"OnArenaRoundStart" "relay_round_start,Trigger,,0,-1"
"OnCapEnabled" "relay_cap_enable,Trigger,,0,-1"
}
- Save the vmf and close notepad.
- Open the modified vmf in Hammer

Now the outputs in the tf_logic_arena should look like this:
The first output displays the model for the control point when it has been enabled. The other two triggers the relays for the round start and control point activation.
This will be used for outputs when the round starts. The reason we made the tf_logic_arena trigger a relay, instead of having the outputs in itself, is because it's easier to change the relay outputs than the tf_logic_arena outputs in notepad.
Property Name Value Name relay_round_start
This will be used for outputs when the control point is enabled.
Property Name Value Name relay_cap_enable
That's about it for the basic gamemode.
Control point setup
Now we'll set up the center control point entities.
This is the base model for the control point. It will be configured to change skin when a team captures it.
Property Name Value World Model models/props_gameplay/cap_point_base.mdl Name prop_cap_1
This is the control point.
Property Name Value Name cap_flag Print Name #Arena_cap Index 3 BLUE model bodygroup 0
- Check the "Start with model hidden" flag. This is because it will be displayed when the control point is enabled
This is the trigger area, that will let the teams capture it after it's enabled. You can modify these values to suit your map.
Property Name Value Name cap_trigger Control point cap_flag Number of RED players to cap 3 Number of BLUE players to cap 3 Time to cap (sec) 4
That's it! It should be working now. Don't forget to add a spawnroom if you want to try it out.
What you might want to add, is for the relay_round_start to trigger the spawndoors to open.
Now, if you load your map, you will notice the server will keep you in the spawn area as it waits for more players to join. Open up the console and type sv_cheats 1;bot
. This will add a bot to the server and let you playtest the map. We haven't made bots do stuff though. They just stand in spawn and do nothing