Difference between revisions of "TF2/Team Fortress 2 Mapper's Reference"

From Valve Developer Community
< TF2
Jump to: navigation, search
m (fixed languages)
(Moved map prefixes to the Map_prefixes#Team_Fortress_2 page)
 
(46 intermediate revisions by 25 users not shown)
Line 1: Line 1:
{{otherlang2|ru=TF2/Team_Fortress_2_Mapper's_Reference:ru|de=TF2/Team_Fortress_2_Mapper's_Reference:de}}
+
{{otherlang2
 +
|ru=TF2/Team_Fortress_2_Mapper's_Reference:ru
 +
|de=TF2/Team_Fortress_2_Mapper's_Reference:de
 +
|ko=TF2/Team_Fortress_2_Mapper's_Reference:ko
 +
}}
  
 
A quick reference for the numbers and statistics that any Team Fortress 2 level designer should know. Most importantly, use these numbers to help make a map feel in proportion, as TF2 maps are slightly larger than maps for other, more realistic mods.
 
A quick reference for the numbers and statistics that any Team Fortress 2 level designer should know. Most importantly, use these numbers to help make a map feel in proportion, as TF2 maps are slightly larger than maps for other, more realistic mods.
Line 5: Line 9:
 
== Model sizes ==
 
== Model sizes ==
 
These are the minimum empty space dimensions required for a model to fit and function in the game. Players can move through spaces with these dimensions, and Engineer structures can be built and operate in them. All sizes are in Hammer Units.
 
These are the minimum empty space dimensions required for a model to fit and function in the game. Players can move through spaces with these dimensions, and Engineer structures can be built and operate in them. All sizes are in Hammer Units.
 +
{{note|Giant robots found in the Mann versus Machine gamemode are normally scaled up by a factor of <code>1.75</code>.}}
  
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
!width="120" style="background:#6495ED;"|Model
+
!width="120" style="background:#496eb0;"|Model
!width="70" style="background:#6495ED;"|Height
+
!width="70" style="background:#496eb0;"|Height
!width="70" style="background:#6495ED;"|Width / Depth
+
!width="70" style="background:#496eb0;"|Width / Depth
 
|-
 
|-
 
| Player (standing) || 83 || 49
 
| Player (standing) || 83 || 49
 
|-  
 
|-  
| Player (ducking) || 63 * || 49
+
| Player (ducking) || 63 || 49
 
|-  
 
|-  
 
| Sentry gun (level 3) || 87 || 49
 
| Sentry gun (level 3) || 87 || 49
Line 21: Line 26:
 
| Teleporter || 95 || 57
 
| Teleporter || 95 || 57
 
|-  
 
|-  
|style="background:#ED5555;" | Minimum
+
|style="background:#b74242;" | Minimum
|style="background:#ED5555;" | 95
+
|style="background:#b74242;" | 95
|style="background:#ED5555;" | 57
+
|style="background:#b74242;" | 57
 +
|}
 +
 
 +
These are the viewheights of each class. This is how far the player's first person camera is from their feet. Being that these are all taller than Half-Life 2's viewheight of 64, it is a good idea to keep these taller viewheights in mind when considering your map's dimensions.
 +
 
 +
{| border="1" cellpadding="2"
 +
!width="120" style="background:#496eb0;"|Class
 +
!width="70" style="background:#496eb0;"|Viewheight
 +
|-
 +
| Scout || 65
 +
|-
 +
| Soldier || 68
 +
|-
 +
| Pyro || 68
 +
|-
 +
| Demoman || 68
 +
|-
 +
| Heavy || 75
 +
|-
 +
| Engineer || 68
 +
|-
 +
| Medic || 75
 +
|-
 +
| Sniper || 75
 +
|-
 +
| Spy || 75
 +
|-
 
|}
 
|}
* as of the March 6th duck change update, previously 56
 
  
 
== Jump distances ==
 
== Jump distances ==
The maximum jump clearances for each class, in Hammer units. A player can clear a gap that is as wide as the Horizontal clearance for his class. He can climb a ledge that is as tall as his Vertical clearance.
+
The maximum jump clearances for each class, in Hammer units. A player can clear a gap that is as wide as the Horizontal clearance for his class. They can climb a ledge that is as tall as his Vertical clearance.
  
 
<table border="1" cellpadding="2">
 
<table border="1" cellpadding="2">
 
     <tr>
 
     <tr>
       <th style="background:#6495ED;" width="110">Class </th>
+
       <th style="background:#496eb0;" width="110">Class </th>
       <th style="background:#6495ED;" width="110">Jump Type </th>
+
       <th style="background:#496eb0;" width="110">Jump Type </th>
       <th style="background:#6495ED;" width="90">Horizontal </th>
+
       <th style="background:#496eb0;" width="90">Horizontal </th>
       <th style="background:#6495ED;" width="90">Vertical </th>
+
       <th style="background:#496eb0;" width="90">Vertical </th>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="4"><b>Scout</b></td>
+
       <td style="background:#404040;" rowspan="4"><b>Scout</b></td>
       <td style="background:#CCCCCC;"> Normal </td>
+
       <td style="background:#404040;"> Normal </td>
       <td style="background:#CCCCCC;"> 320~352 </td>
+
       <td style="background:#404040;"> 330.84 </td>
       <td style="background:#CCCCCC;"> 72 </td>
+
       <td style="background:#404040;"> 72 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> Double </td>
+
       <td style="background:#404040;"> Double </td>
       <td style="background:#CCCCCC;"> 608~640 </td>
+
       <td style="background:#404040;"> 608~640 </td>
       <td style="background:#CCCCCC;"> 116 </td>
+
       <td style="background:#404040;"> 116 </td>
 
     </tr>
 
     </tr>
 
<tr>
 
<tr>
       <td style="background:#CCCCCC;"> Double (Jump followed by Force-A-Nature) </td>
+
       <td style="background:#404040;"> Double (Jump followed by Force-A-Nature) </td>
       <td style="background:#CCCCCC;"> ? </td>
+
       <td style="background:#404040;"> ? </td>
       <td style="background:#CCCCCC;"> 148 </td>
+
       <td style="background:#404040;"> 148 </td>
 
     </tr>
 
     </tr>
 
<tr>
 
<tr>
       <td style="background:#CCCCCC;"> Triple </td>
+
       <td style="background:#404040;"> Triple </td>
       <td style="background:#CCCCCC;"> ~1108 </td>
+
       <td style="background:#404040;"> ~1108 </td>
       <td style="background:#CCCCCC;"> 296 </td>
+
       <td style="background:#404040;"> 296 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 62: Line 92:
 
       <pre>* = wall climb</pre></td>
 
       <pre>* = wall climb</pre></td>
 
       <td> Normal </td>
 
       <td> Normal </td>
       <td> 224~256 </td>
+
       <td> 217.71 </td>
 
       <td> 72
 
       <td> 72
 
       </td>
 
       </td>
Line 69: Line 99:
 
       <td> 1 rocket </td>
 
       <td> 1 rocket </td>
 
       <td> 992 (1024 max) </td>
 
       <td> 992 (1024 max) </td>
       <td> 448 (576 max)
+
       <td> 448 (576~691 max)
 
       </td>
 
       </td>
 
     </tr>
 
     </tr>
Line 77: Line 107:
 
       <td> 928~992 </td>
 
       <td> 928~992 </td>
 
     </tr>
 
     </tr>
     <tr">
+
     <tr>
 
       <td> 3 Rocket * </td>
 
       <td> 3 Rocket * </td>
 
       <td> N \ A </td>
 
       <td> N \ A </td>
Line 88: Line 118:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> <b>Pyro</b> </td>
+
       <td style="background:#404040;"> <b>Pyro</b> </td>
       <td style="background:#CCCCCC;"> Normal </td>
+
       <td style="background:#404040;"> Normal </td>
       <td style="background:#CCCCCC;"> 256~288 </td>
+
       <td style="background:#404040;"> 260.13 </td>
       <td style="background:#CCCCCC;"> 72 </td>
+
       <td style="background:#404040;"> 72 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 98: Line 128:
 
       </td>
 
       </td>
 
       <td> Normal </td>
 
       <td> Normal </td>
       <td> 250~256 </td>
+
       <td> 245.99 </td>
       <td> 70 </td>
+
       <td> 72 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 122: Line 152:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> <b>Heavy</b> </td>
+
       <td style="background:#404040;"> <b>Heavy</b> </td>
       <td style="background:#CCCCCC;"> Normal </td>
+
       <td style="background:#404040;"> Normal </td>
       <td style="background:#CCCCCC;"> 192~224 </td>
+
       <td style="background:#404040;"> 210.63 </td>
       <td style="background:#CCCCCC;"> 72 </td>
+
       <td style="background:#404040;"> 72 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 131: Line 161:
 
       <pre>* = used as platform</pre></td>
 
       <pre>* = used as platform</pre></td>
 
       <td> Normal </td>
 
       <td> Normal </td>
       <td> 256~288 </td>
+
       <td> 260.13 </td>
 
       <td> 72 </td>
 
       <td> 72 </td>
 
     </tr>
 
     </tr>
Line 150: Line 180:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> <b>Medic</b> </td>
+
       <td style="background:#404040;"> <b>Medic</b> </td>
       <td style="background:#CCCCCC;"> Normal </td>
+
       <td style="background:#404040;"> Normal </td>
       <td style="background:#CCCCCC;"> 256~288 </td>
+
       <td style="background:#404040;"> 274.27 </td>
       <td style="background:#CCCCCC;"> 72
+
       <td style="background:#404040;"> 72
 
       </td>
 
       </td>
 
     </tr>
 
     </tr>
Line 159: Line 189:
 
       <td> <b>Sniper</b> </td>
 
       <td> <b>Sniper</b> </td>
 
       <td> Normal </td>
 
       <td> Normal </td>
       <td> 256~288 </td>
+
       <td> 260.13 </td>
 
       <td> 72 </td>
 
       <td> 72 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> <b>Spy</b> </td>
+
       <td style="background:#404040;"> <b>Spy</b> </td>
       <td style="background:#CCCCCC;"> Normal </td>
+
       <td style="background:#404040;"> Normal </td>
       <td style="background:#CCCCCC;"> 256~288 </td>
+
       <td style="background:#404040;"> 274.27 </td>
       <td style="background:#CCCCCC;"> 72
+
       <td style="background:#404040;"> 72
 
       </td>
 
       </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#ED5555;"> Maximum </td>
+
       <td style="background:#b74242;"> Maximum </td>
       <td style="background:#ED5555;"> &nbsp;? </td>
+
       <td style="background:#b74242;"> &nbsp;? </td>
       <td style="background:#ED5555;"> &nbsp;? </td>
+
       <td style="background:#b74242;"> &nbsp;? </td>
       <td style="background:#ED5555;"> over 1952 </td>
+
       <td style="background:#b74242;"> over 1952 </td>
 
     </tr>
 
     </tr>
 
</table>
 
</table>
  
{{Note|All jumps require crouching after jumping in order to reach a ledge at the given height, otherwise vertical clearance is 27 units less. Wall climb requires a Soldier to shoot the wall before reaching the peak of a rocket jump and requires a Demoman to attach a sticky to the wall and detonate it before reaching the peak of a sticky jump.  Mappers should keep in mind the limitations of the average player to allow them access to necessary areas while gifting advanced players with access to secret/advantageous areas.}}
+
{{Note|All jumps require crouching just before jumping in order to reach a ledge at the given height. Starting to crouch right after jumping will reach 70 units. Not crouching at all results in 50 units. Wall climb requires a Soldier to shoot the wall before reaching the peak of a rocket jump and requires a Demoman to attach a sticky to the wall and detonate it before reaching the peak of a sticky jump.  Mappers should keep in mind the limitations of the average player to allow them access to necessary areas while gifting advanced players with access to secret/advantageous areas.}}
  
 
== Class Speeds ==
 
== Class Speeds ==
 
The speeds below are measured in Hammer units per second.  The scout, for example, has a movement speed of 400, so in ten seconds he can cover a distance of up to 4000 Hammer units.
 
The speeds below are measured in Hammer units per second.  The scout, for example, has a movement speed of 400, so in ten seconds he can cover a distance of up to 4000 Hammer units.
 +
 +
For a frequently updated and much more detailed list, visit the [https://wiki.teamfortress.com/wiki/Classes#Speed Official Team Fortress 2 Wiki].
  
 
<!--- screw it, I'm using html --->
 
<!--- screw it, I'm using html --->
 
<table border="1" cellpadding="2">
 
<table border="1" cellpadding="2">
 
     <tr>
 
     <tr>
       <th style="background:#6495ED;" width="110">Class </th>
+
       <th style="background:#496eb0;" width="110">Class </th>
       <th style="background:#6495ED;" width="110">Forwards </th>
+
       <th style="background:#496eb0;" width="110">Forwards </th>
       <th style="background:#6495ED;" width="90">Backwards </th>
+
       <th style="background:#496eb0;" width="90">Backwards </th>
       <th style="background:#6495ED;" width="90">Underwater </th>
+
       <th style="background:#496eb0;" width="90">Underwater </th>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 197: Line 229:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="1"><b>Soldier</b> </td>
+
       <td style="background:#404040;" rowspan="1"><b>Soldier</b> </td>
       <td style="background:#CCCCCC;"> 240 </td>
+
       <td style="background:#404040;"> 240 </td>
       <td style="background:#CCCCCC;"> 216 </td>
+
       <td style="background:#404040;"> 216 </td>
       <td style="background:#CCCCCC;"> 192 </td>
+
       <td style="background:#404040;"> 192 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 209: Line 241:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="1"><b>Demoman</b> </td>
+
       <td style="background:#404040;" rowspan="1"><b>Demoman</b> </td>
       <td style="background:#CCCCCC;"> 280 </td>
+
       <td style="background:#404040;"> 280 </td>
       <td style="background:#CCCCCC;"> 252 </td>
+
       <td style="background:#404040;"> 252 </td>
       <td style="background:#CCCCCC;"> 224 </td>
+
       <td style="background:#404040;"> 224 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 222: Line 254:
 
     <tr>
 
     <tr>
 
       <td> (spun up) </td>
 
       <td> (spun up) </td>
       <td> 80 </td>
+
       <td> 110 </td>
       <td> 80 </td>
+
       <td> 99 </td>
 
       <td> 64 </td>
 
       <td> 64 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="1"><b>Engineer</b> </td>
+
       <td style="background:#404040;" rowspan="1"><b>Engineer</b> </td>
       <td style="background:#CCCCCC;"> 300 </td>
+
       <td style="background:#404040;"> 300 </td>
       <td style="background:#CCCCCC;"> 270 </td>
+
       <td style="background:#404040;"> 270 </td>
       <td style="background:#CCCCCC;"> 240 </td>
+
       <td style="background:#404040;"> 240 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 239: Line 271:
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> <b>Sniper</b></td>
+
       <td style="background:#404040;"> <b>Sniper</b></td>
       <td style="background:#CCCCCC;"> 300 </td>
+
       <td style="background:#404040;"> 300 </td>
       <td style="background:#CCCCCC;"> 270 </td>
+
       <td style="background:#404040;"> 270 </td>
       <td style="background:#CCCCCC;"> 240 </td>
+
       <td style="background:#404040;"> 240 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">  (while scoped)</td>
+
       <td style="background:#404040;">  (while scoped)</td>
       <td style="background:#CCCCCC;"> 80 </td>
+
       <td style="background:#404040;"> 80 </td>
       <td style="background:#CCCCCC;"> 80 </td>
+
       <td style="background:#404040;"> 80 </td>
       <td style="background:#CCCCCC;"> 64 </td>
+
       <td style="background:#404040;"> 64 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td> <b>Spy</b> </td>
 
       <td> <b>Spy</b> </td>
       <td> 300 </td>
+
       <td> 320 </td>
       <td> 270 </td>
+
       <td> 288 </td>
       <td> 240 </td>
+
       <td> 256 </td>
 
     </tr>
 
     </tr>
 
</table>
 
</table>
Line 267: Line 299:
 
<table border="1" cellpadding="2">
 
<table border="1" cellpadding="2">
 
     <tr>
 
     <tr>
       <th style="background:#6495ED;" width="120">Class </th>
+
       <th style="background:#496eb0;" width="120">Class </th>
       <th style="background:#6495ED;" width="120">Weapon Type </th>
+
       <th style="background:#496eb0;" width="120">Weapon Type </th>
       <th style="background:#6495ED;" width="90">Damage Dealt </th>
+
       <th style="background:#496eb0;" width="90">Damage Dealt </th>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 282: Line 314:
 
     <tr>
 
     <tr>
 
       <td>Bat </td>
 
       <td>Bat </td>
       <td>30~40 </td>
+
       <td>35 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="3"><b>Soldier</b> </td>
+
       <td style="background:#404040;" rowspan="3"><b>Soldier</b> </td>
       <td style="background:#CCCCCC;"> Rocket Launcher </td>
+
       <td style="background:#404040;"> Rocket Launcher </td>
       <td style="background:#CCCCCC;">90~100 </td>
+
       <td style="background:#404040;">90~100 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Shotgun </td>
+
       <td style="background:#404040;">Shotgun </td>
       <td style="background:#CCCCCC;">60~70 </td>
+
       <td style="background:#404040;">60~70 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Shovel </td>
+
       <td style="background:#404040;">Shovel </td>
       <td style="background:#CCCCCC;">60~70 </td>
+
       <td style="background:#404040;">65 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
 
       <td rowspan="3"> <b>Pyro</b> </td>
 
       <td rowspan="3"> <b>Pyro</b> </td>
 
       <td> Flamethrower </td>
 
       <td> Flamethrower </td>
       <td>N/A </td>
+
       <td>10~15 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 308: Line 340:
 
     <tr>
 
     <tr>
 
       <td>Axe</td>
 
       <td>Axe</td>
       <td>60~70</td>
+
       <td>65</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="3"><b>Demoman</b> </td>
+
       <td style="background:#404040;" rowspan="3"><b>Demoman</b> </td>
       <td style="background:#CCCCCC;">Pipe bomb</td>
+
       <td style="background:#404040;">Pipe bomb</td>
       <td style="background:#CCCCCC;">50~60 </td>
+
       <td style="background:#404040;">70~100 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Sticky Bomb</td>
+
       <td style="background:#404040;">Sticky Bomb</td>
       <td style="background:#CCCCCC;">110~120</td>
+
       <td style="background:#404040;">110~120</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Bottle </td>
+
       <td style="background:#404040;">Bottle </td>
       <td style="background:#CCCCCC;">60~70 </td>
+
       <td style="background:#404040;">65 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 334: Line 366:
 
     <tr>
 
     <tr>
 
       <td>Fists </td>
 
       <td>Fists </td>
       <td>60~70 </td>
+
       <td>65 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="3"><b>Engineer</b> </td>
+
       <td style="background:#404040;" rowspan="3"><b>Engineer</b> </td>
       <td style="background:#CCCCCC;"> Shotgun </td>
+
       <td style="background:#404040;"> Shotgun </td>
       <td style="background:#CCCCCC;">60~70 </td>
+
       <td style="background:#404040;">60~70 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Pistol</td>
+
       <td style="background:#404040;">Pistol</td>
       <td style="background:#CCCCCC;">10~20</td>
+
       <td style="background:#404040;">10~20</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Wrench </td>
+
       <td style="background:#404040;">Wrench </td>
       <td style="background:#CCCCCC;">60~70 </td>
+
       <td style="background:#404040;">65 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 356: Line 388:
 
     <tr>
 
     <tr>
 
       <td>Bone saw </td>
 
       <td>Bone saw </td>
       <td>60~70</td>
+
       <td>65</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;" rowspan="4"><b>Sniper</b> </td>
+
       <td style="background:#404040;" rowspan="4"><b>Sniper</b> </td>
       <td style="background:#CCCCCC;"> Sniper Rifle (0%) </td>
+
       <td style="background:#404040;"> Sniper Rifle (0%) </td>
       <td style="background:#CCCCCC;">50~60 </td>
+
       <td style="background:#404040;">50 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;"> Sniper Rifle (100%)</td>
+
       <td style="background:#404040;"> Sniper Rifle (100%)</td>
       <td style="background:#CCCCCC;">150~160</td>
+
       <td style="background:#404040;">150</td>
 
     </tr>
 
     </tr>
 
     <!--- Baliame: using numeric values, so it doesn't snap over two lines. --->
 
     <!--- Baliame: using numeric values, so it doesn't snap over two lines. --->
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Submachine gun</td>
+
       <td style="background:#404040;">Submachine gun</td>
       <td style="background:#CCCCCC;">1~10</td>
+
       <td style="background:#404040;">1~10</td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
       <td style="background:#CCCCCC;">Khukri (knife) </td>
+
       <td style="background:#404040;">Kukri (knife) </td>
       <td style="background:#CCCCCC;">60~70 </td>
+
       <td style="background:#404040;">65 </td>
 
     </tr>
 
     </tr>
 
     <tr>
 
     <tr>
Line 383: Line 415:
 
     <tr>
 
     <tr>
 
       <td>Knife</td>
 
       <td>Knife</td>
       <td>40~50</td>
+
       <td>40</td>
 
     </tr>
 
     </tr>
 
</table>
 
</table>
Line 392: Line 424:
 
*[[item_healthkit_small]] = 20.5% Health
 
*[[item_healthkit_small]] = 20.5% Health
 
*[[item_healthkit_medium]] = 50% Health
 
*[[item_healthkit_medium]] = 50% Health
*[[item_healthkit_full]] = 100% Health
+
*[[item_healthkit_full]] = 100% Health (Execpt Mannpower)
  
 
=== Ammo pickups ===
 
=== Ammo pickups ===
Line 404: Line 436:
 
=== 2Fort ===
 
=== 2Fort ===
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
!width="150" style="background:#6495ED;"|Room
+
!width="150" style="background:#496eb0;"|Room
!width="100" style="background:#6495ED;"|X
+
!width="100" style="background:#496eb0;"|X
!width="100" style="background:#6495ED;"|Y
+
!width="100" style="background:#496eb0;"|Y
!width="100" style="background:#6495ED;"|Z
+
!width="100" style="background:#496eb0;"|Z
 
|-  
 
|-  
 
| Ramp Room resupply || 512 || 464 || 240
 
| Ramp Room resupply || 512 || 464 || 240
Line 425: Line 457:
  
 
== Map prefixes ==
 
== Map prefixes ==
{{main|Map prefixes}}
+
See [[Map_prefixes#Team_Fortress_2|Map prefixes]]
 
 
=== Official ===
 
 
 
* '''arena''' - Arena
 
* '''cp''' - Control Point
 
* '''ctf''' - Capture the Flag
 
* '''pl''' - Payload
 
* '''tc''' - Territorial Control
 
* '''plr''' - Payload Race
 
* '''koth''' - King of the Hill<!--- Baliame: Well I think it deserves a mention if I ever complete my map... --->
 
 
 
=== Unofficial ===
 
 
 
* '''dm''' - Deathmatch
 
* '''dom''' - [[TF2/Domination_Gametype|Domination]]
 
* '''JUMP'''/'''rj''' - Fun skill maps that have little or no competitive fighting, but rather are for players to practice using Soldier or Demoman classes, using their explosive weaponry to propel themselves to difficult heights, or through difficult obstacles. (Examples include: rj_rocketeer, JUMP_HOBO)
 
* '''tr''' - Training
 
* '''kotf'''/'''ktf''' - King of the flag. The intel must be held for an allotted amount of time for a successful capture. Only one flag.
 
* '''surf''' - Surfing map (may be cp, ctf or just plain deathmatch)
 
* '''vip''' - Hunted map, to be used with the [[TF2/Hunted_Gametype|Hunted Mod]]
 
  
 
== Other Info ==
 
== Other Info ==
Line 455: Line 467:
 
*Minimum width required to "walk" from one stair step to the another: 0.04
 
*Minimum width required to "walk" from one stair step to the another: 0.04
 
*Maximum height to fall from before taking damage: 269
 
*Maximum height to fall from before taking damage: 269
*Maximum distance a spy can travel while cloaked: 3000
+
*Maximum distance a spy can travel while cloaked and using...
 +
**default weapons: 3200
 +
**the L'Etranger: 4480
 
*Maximum distance a medic can travel while ubercharged: 3200
 
*Maximum distance a medic can travel while ubercharged: 3200
 
*Maximum distance a demoman can launch a sticky grenade: 1600
 
*Maximum distance a demoman can launch a sticky grenade: 1600
Line 461: Line 475:
 
*Maximum slope an engineer can build on: 17/32 (rise/run)
 
*Maximum slope an engineer can build on: 17/32 (rise/run)
 
*Maximum detection range of a sentry gun: 1024
 
*Maximum detection range of a sentry gun: 1024
*Minimum ceiling height required for an engineer to build a:
+
*Minimum ceiling height required for an engineer to build a...
 
**dispenser: 64
 
**dispenser: 64
 
**sentry: 68
 
**sentry: 68
 
**teleporter: 95
 
**teleporter: 95
 +
*Maximum distance a demoman can charge using the Chargin' Targe: 1152
 +
*Maximum height each class can jump out of water to a ledge:
 +
**Scout: 19
 +
**Soldier: 22
 +
**Pyro: 22
 +
**Engineer: 22
 +
**Heavy: 29
 +
**Demoman: 22
 +
**Medic: 29
 +
**Sniper: 29
 +
**Spy: 29
  
 
==References==
 
==References==
Line 472: Line 497:
 
* August 15, 2009
 
* August 15, 2009
 
* Description: "I have color coded the map. Orange means all classes. Red means scout. White means double jump where one is a normal jump and one is a Force-A-Nature jump. Blue means engineer.  Starting clockwise from where you spawn:  The maximum height of a fall without taking damage. [269]; The maximum height of a crouch jump. [72]; The maximum height of a normal double jump. [116]; The maximum height of a single jump followed by a Force-A-Nature shot aimed straight down. [148]; The maximum height of a triple jump. [192]; The minimum size of a hallway (height and width). [83 x 49 (height x width)]; The minimum size of a hallway in order to build a teleporter. [95 x57 (height x width)]; The maximum slope for constructing buildings upon. [85/160 (Rise/run)]; The maximum height an engineer can build (standing on a sentry gun). [188]
 
* Description: "I have color coded the map. Orange means all classes. Red means scout. White means double jump where one is a normal jump and one is a Force-A-Nature jump. Blue means engineer.  Starting clockwise from where you spawn:  The maximum height of a fall without taking damage. [269]; The maximum height of a crouch jump. [72]; The maximum height of a normal double jump. [116]; The maximum height of a single jump followed by a Force-A-Nature shot aimed straight down. [148]; The maximum height of a triple jump. [192]; The minimum size of a hallway (height and width). [83 x 49 (height x width)]; The minimum size of a hallway in order to build a teleporter. [95 x57 (height x width)]; The maximum slope for constructing buildings upon. [85/160 (Rise/run)]; The maximum height an engineer can build (standing on a sentry gun). [188]
 +
*[http://forums.tf2maps.net/member.php?u=16091 Tumbolisu], who tested for class jump heights out of water.
  
 
* Made by Amakiir
 
* Made by Amakiir

Latest revision as of 22:02, 30 December 2018

Deutsch Русский 한국어

A quick reference for the numbers and statistics that any Team Fortress 2 level designer should know. Most importantly, use these numbers to help make a map feel in proportion, as TF2 maps are slightly larger than maps for other, more realistic mods.

Model sizes

These are the minimum empty space dimensions required for a model to fit and function in the game. Players can move through spaces with these dimensions, and Engineer structures can be built and operate in them. All sizes are in Hammer Units.

Note:Giant robots found in the Mann versus Machine gamemode are normally scaled up by a factor of 1.75.
Model Height Width / Depth
Player (standing) 83 49
Player (ducking) 63 49
Sentry gun (level 3) 87 49
Dispenser 83 49
Teleporter 95 57
Minimum 95 57

These are the viewheights of each class. This is how far the player's first person camera is from their feet. Being that these are all taller than Half-Life 2's viewheight of 64, it is a good idea to keep these taller viewheights in mind when considering your map's dimensions.

Class Viewheight
Scout 65
Soldier 68
Pyro 68
Demoman 68
Heavy 75
Engineer 68
Medic 75
Sniper 75
Spy 75

Jump distances

The maximum jump clearances for each class, in Hammer units. A player can clear a gap that is as wide as the Horizontal clearance for his class. They can climb a ledge that is as tall as his Vertical clearance.

Class Jump Type Horizontal Vertical
Scout Normal 330.84 72
Double 608~640 116
Double (Jump followed by Force-A-Nature)  ? 148
Triple ~1108 296
Soldier
* = wall climb
Normal 217.71 72
1 rocket 992 (1024 max) 448 (576~691 max)
2 Rocket * N \ A 928~992
3 Rocket * N \ A 1184~1248
4 Rocket * N \ A 1312~1376
Pyro Normal 260.13 72
Demoman
* = Medic necessary
Normal 245.99 72
1 sticky 2112~2144 728 (928-960 max)
2 stickies over 6000 3072~3104
3 stickies *  ? over 6323
4 stickies *  ? over 7769
Heavy Normal 210.63 72
Engineer
* = used as platform
Normal 260.13 72
Teleporter *  ? 84
Dispenser * 288~320 127
Sentry * ~315 138
Medic Normal 274.27 72
Sniper Normal 260.13 72
Spy Normal 274.27 72
Maximum  ?  ? over 1952
Note:All jumps require crouching just before jumping in order to reach a ledge at the given height. Starting to crouch right after jumping will reach 70 units. Not crouching at all results in 50 units. Wall climb requires a Soldier to shoot the wall before reaching the peak of a rocket jump and requires a Demoman to attach a sticky to the wall and detonate it before reaching the peak of a sticky jump. Mappers should keep in mind the limitations of the average player to allow them access to necessary areas while gifting advanced players with access to secret/advantageous areas.

Class Speeds

The speeds below are measured in Hammer units per second. The scout, for example, has a movement speed of 400, so in ten seconds he can cover a distance of up to 4000 Hammer units.

For a frequently updated and much more detailed list, visit the Official Team Fortress 2 Wiki.

Class Forwards Backwards Underwater
Scout 400 360 320
Soldier 240 216 192
Pyro 300 270 240
Demoman 280 252 224
Heavy 230 207 184
(spun up) 110 99 64
Engineer 300 270 240
Medic 320 288 256
Sniper 300 270 240
(while scoped) 80 80 64
Spy 320 288 256
Note:For a rough idea of how many seconds it takes a certain class to go from one part of a map to another, divide the distance between the two points in Hammer units by the class speed.

Damage amounts

Note:For creating breakable obstacles (func_breakable) and/or targets in a map. Damage data gathered using func_breakable's - Min Damage to hurt property. Settings for the entities were: Strength > 1.0, Physical Impact damage scale > 0.1


Class Weapon Type Damage Dealt
Scout Scattergun 60~70
Pistol 10~20
Bat 35
Soldier Rocket Launcher 90~100
Shotgun 60~70
Shovel 65
Pyro Flamethrower 10~15
Shotgun 60~70
Axe 65
Demoman Pipe bomb 70~100
Sticky Bomb 110~120
Bottle 65
Heavy Minigun 30~40
Shotgun 60~70
Fists 65
Engineer Shotgun 60~70
Pistol 10~20
Wrench 65
Medic Syringegun 10~20
Bone saw 65
Sniper Sniper Rifle (0%) 50
Sniper Rifle (100%) 150
Submachine gun 1~10
Kukri (knife) 65
Spy Revolver 40~50
Knife 40

Pickup properties

Health pickups

Ammo pickups

Room dimensions

These are some general room dimensions from the popular maps to help gauge the proportions of your level. This section is not intended to provide detailed specifics on individual room layouts, decorations, etc.

2Fort

Room X Y Z
Ramp Room resupply 512 464 240
Long Hallway into Ramp Room 1024 128 180
Ramp Room 576 736 492*
Inner Sewer tunnel 1136 192 192
Flag Room 704 528 304
Inner Sewer water (puts out fire if crouched) - - 42
Note:* This room has a skybox ceiling. The listed height refers to the top of the walls or other geometry.

Map prefixes

See Map prefixes

Other Info

Some other useful reference info for mappers that didn't fit into the categories above:

  • Maximum "walkable" height of a single stair step: 18
  • Minimum width required to "walk" from one stair step to the another: 0.04
  • Maximum height to fall from before taking damage: 269
  • Maximum distance a spy can travel while cloaked and using...
    • default weapons: 3200
    • the L'Etranger: 4480
  • Maximum distance a medic can travel while ubercharged: 3200
  • Maximum distance a demoman can launch a sticky grenade: 1600
  • Maximum surface height an engineer can build on by jumping from the top of a sentry: 188
  • Maximum slope an engineer can build on: 17/32 (rise/run)
  • Maximum detection range of a sentry gun: 1024
  • Minimum ceiling height required for an engineer to build a...
    • dispenser: 64
    • sentry: 68
    • teleporter: 95
  • Maximum distance a demoman can charge using the Chargin' Targe: 1152
  • Maximum height each class can jump out of water to a ledge:
    • Scout: 19
    • Soldier: 22
    • Pyro: 22
    • Engineer: 22
    • Heavy: 29
    • Demoman: 22
    • Medic: 29
    • Sniper: 29
    • Spy: 29

References

  • The Source of many numbers on this page come from the mapping reference "Tutorial Heights" by Amakiir.
  • http://www.mediafire.com/?sharekey=173a35f492430f57e5c3dee5769931ece04e75f6e8ebb871
  • August 15, 2009
  • Description: "I have color coded the map. Orange means all classes. Red means scout. White means double jump where one is a normal jump and one is a Force-A-Nature jump. Blue means engineer. Starting clockwise from where you spawn: The maximum height of a fall without taking damage. [269]; The maximum height of a crouch jump. [72]; The maximum height of a normal double jump. [116]; The maximum height of a single jump followed by a Force-A-Nature shot aimed straight down. [148]; The maximum height of a triple jump. [192]; The minimum size of a hallway (height and width). [83 x 49 (height x width)]; The minimum size of a hallway in order to build a teleporter. [95 x57 (height x width)]; The maximum slope for constructing buildings upon. [85/160 (Rise/run)]; The maximum height an engineer can build (standing on a sentry gun). [188]
  • Tumbolisu, who tested for class jump heights out of water.
  • Made by Amakiir