Mapping Glossary

MegapiemanPHD

Doctorate in Deliciousness
aa
Mar 31, 2012
2,015
1,326
Below is a list of mapping terms and their meanings that may be useful to those just starting out. They could be hammer specific lingo, feedback related terms, or just in jokes that are actually worth remembering. This list is a constant work in progress as I'm not aware of every term in existence, so feel free to post any additions and I'll periodically update this main post to add them to the list.

Hammer Terms:

-VMF: Valve Map File, the format hammer saves maps as.

-BSP: Binary Space Partition, the format hammer compiles maps to so they can be loaded in game.

-Vis/Visgroup: A BSP file splits a map into a multitude of sections called Visgroups in order to determine what to render on screen and when to render it. This is done by deciding what a player can see while they are within one Visgroup compared to another.

-Leak: A BSP file works by splitting a map up into a multitude of sections in order to determine what renders on screen at different times. To do this, a map needs to be sealed with world brushes, sorta like a bucket. Any gaps will cause the compiler to not understand how to correctly create visgroups which can lead to many errors. Too many leaks or too large of a leak and a map won't compile at all.

-Compile: Turning a VMF file into a BSP file so that it can be played in game.

-Cubemap: An entity used to create reflections. During compile, the compiler will open the game and take screenshots of all 6 sides of a cubemap, then apply those images to any nearby reflective textures. This also effects some weapon reflections, such as the Snipers scope.

-Prop: Any entity that begins with prop_ and has a model set to it ex. prop_static, prop_dynamic

-VDC: Valve Developer Community. The main Wiki and documentation for anything related to the source engine.

-Interlopers Error Checker: A website that allows people to input their compile log and check it for errors while also offering possible solutions to those errors. Website: https://web.archive.org/web/20180213200549/http://www.interlopers.net/errors/

-SDK: Software Developer Kit. The general term for tools used to modify games.

-CompilePal: A 3rd party program designed to aid in the process of compiling and packing a map.

-Packing: The process of saving any custom content not found in the base game to a BSP during Compile time. Unpacked content will appear as an error.

-Alpha/Beta/RC: The stage a map is in. Alpha maps are at the start of development, Beta maps are in the middle of development, and RC or Release Candidate are at the end of development.

-Hammer Units: The standard measure of distance within the source engine.

-Viewports: The screens in which you look at your map.

In Game Terms:

-Route: Any path a player can take to get from one important location to another. Ex, from their spawn to the current active control point.

-Main: The main route players will use the most often

-Flank: Side routes that give players more options to get to important locations other than the main route

-Sightline: Any location a sniper can use to see another location. Can be neutral to simply identify a location or negative to identify locations that feel unfair where a Sniper has too much of an advantage

-Pixelwalk: A invisible pixel wide platform players can stand on. Sometimes happens where 2 brushes meet and is rarely done on purpose.

-Rollout: Mostly used for Soldiers and Demomen, a rollout is a term used for a fast and optimal way to get from a spawn exit to an objective

-Clip and/or Clipping: Used to refer to any invisible barrier that stops player movement. Originally a term meant to describe a clip brush, is generally used now to refer to any invisible that blocks movement. The lack of clipping on something could cause players to get stuck on it, their camera to jitter as their player model snaps between different heights, or allowing players to get places they shouldn't such as out of bounds.

-OOB: Out of Bounds. Anywhere players aren't meant to ever get to.

-Diaper: A term coined by Youtuber ArraySeven used to describe a map who's Skybox brushes are built to be a simple inverted cube instead of properly lined up with the map. This causes poor optimization.

-Optimization: Generally used to refer to a players frame rate. Poor Optimization can cause low frame rates that can disrupt play. Hints, Skips, Occluders, Area Portals, Skybox brushes, and prop fades can all impact Optimization

-Prop Spam: Used to describe any area(s) where props feel overused. This can make an area(s) look noisy, lead to poor Optimization, and/or cause disruption during play

-Prop Jump: Used to describe a path or route from a low ground area to a higher ground area where players have to jump up a series of props. Ex. the left flank of Dustbowl Stage 2 A

-Fullbright: Refers to a map not having any light entities. This can happen either due to the absence of lights or by only compiling for HDR or LDR instead of both. Anyone playing with LDR settings on a map compiled with only HDR lighting will see the map in fullbright instead of seeing any proper lighting.

-Door Soup: An area with too many doorway options. Causes over choice where players are unsure where to go at any time.

-Swiss Cheese Design: Maps with this kind of design tend to be built like real life locations where people can access anywhere at any time, instead of having inaccessible areas or buildings. This causes players to get lost and confused by over choice.

-Spawncamp: Any time a player or team can stand outside a spawn door and easily kill any spawning players as they exit in a way that feels unfair. Can usually be solved by having multiple exits that can't all be seen by an enemy standing in one location.

-Pub Push: The time period where a maps objective timer is running low and the attacking team goes from not focusing on the current objective to trying to coordinate and focus on it before the round ends.

-Choke Point/Choke(s): An area of a map that funnels players into a small location that is easy to defend against. Many early TF2 maps are designed around Choke Points.

-Meat Grinder: Any part of a map where players constantly die without feeling like they can make forward progress, usually caused by a choke point.

-Competitively Viable: A phrase that can mean either a map has potential for competitive play, or used sarcastically to refer to map design that copies competitive map segments without understanding how to put them together cohesively. Ex. Badlands 2nd point Spire prop.

-Hero Prop: An important and detailed prop a map is built around. Ex. Gourdon from PD_Farmageddon

-Respawn Wave: TF2 uses respawn waves for it's spawning system in order to try and spawn team mates together at the same time. This can be set via an output to the tf_gamerules entity in hammer but keep in mind, the number set doesn't mean that exact number. Instead, that refers to the lowest possible respawn time with the highest being the set number doubled. Ex. a 5 second respawn time will have 5 seconds as the lowest and 10 seconds as the highest. The default is 20 seconds.

-Turtle: A player, usually playing as engineer, who constantly stays in one safe area.

-Nest/Engineer Nest: A location where an engineer has set up all 3 of their buildings and maxed out their levels.

-Pickups: Usually refers to Health and Ammo boxes, can also refer to powerups for modes like passtime or mannpower

-Friendly: A player who refuses to attack and instead just hangs around a map. These are not allowed during TF2 map tests.

-Imp: Stands for Impromptu. A shortened term for impromptu map tests.

-Game Day: A map test or server event set for a specific date and time opposed to an impromptu test.

-Dead end: A "route" with no exit. causes players to get stuck with no way to retreat in a fight and/or lead them to an unsatisfying location where they need to turn around, which disrupts flow.

-Flow: How players move from one important location to another throughout a map. Good flow allows players to naturally use intended routes. Bad flow causes players to get lost without knowing how to get to objectives and/or causes them to get stuck in dead ends.



Game Mode Terms:

-Chin Style: A ctf map designed to allow players to easily enter the flag room, usually via a one way door, but is difficult to exit without running into the enemy team.

-Gravelpit style: 3 Points where last is locked and capturing both first points unlocks it

-Steeltype: Multiple points (usually 5) where the game starts with only the first and last unlocked, the locked points get unlocked by capturing in sequence starting from A and the game ends at any time if Last is captured
 
Last edited:

spruce

L3: Member
Aug 14, 2022
135
34
Thank you for making this thread, I will provide feedback.

1. It's diaper skybox Ninja'd by brokk

3. To hammer terminology, add:
Hammer Units - The standard measure of distance within the source engine.
Viewports - The screens in which you look at your map.

2. To in game terms add:
Dead end - A "route" with no exit. (best example I can think of is Barnblitz C's Engineer spot near last's high flank, behind the security fence)

3. To gamemode terms add:
Gravelpit style - 3 Points where last is locked and capturing both first points unlocks it
Steeltype - Multiple points (usually 5) where the game starts with only the first and last unlocked, the locked points get unlocked by capturing in sequence starting from A and the game ends at any time if Last is captured
 

Tiftid

the Embodiment of Scarlet Devil
aa
Sep 10, 2016
612
475
Hammer Terms, in no particular order:
  • Pointfile = A special file which is used for debugging leaks - if you compile your map and it fails due to a leak, go to the "Map" menu in the top bar of Hammer, and click "Load Pointfile" and agree to load the default pointfile - this will draw a line from somewhere inside your map out into the void - whatever the line is going through is the cause of your leak and should be somehow sealed up with a world brush - brush entity origins can sometimes be very far offset from the brush entity and outside the map, and cause a leak - if this happens, select the brush entity, go into the "Tools" menu in the top bar and hit "Center Origins"
  • Portal File = A special file which is used for debugging your map's visleaves - after you compile your map, go to the "Map" menu in the top bar of Hammer, click "Load Portal File" and agree to load the default file - this will visualise all visleaves in your map as blue boxes - if there are a LOT of blue lines in a given area, that area is probably too complex and could use some brushes being turned into func_detail
  • VBSP = One of Hammer's three compile programs - this program is responsible for creating your map's visleaves, and culling any brush faces which are touching other brush faces or the void - if VBSP fails due to a leak, VVIS and VRAD will not run
  • VVIS = One of Hammer's three compile programs - this program is responsible for testing visibility between each of your map's visleaves to build a PVS for each - if your map is very open and doesn't have skybox brushes partitioning your areas, VVIS will generally take a VERY long time - if you run VVIS on "fast", your map's compile time will be shorter but your map's optimisation will be HORRIBLE and you should never release a map in this state
  • VRAD = One of Hammer's three compile programs - this program is responsible for ray-tracing your map and saving the result into a set of "lightmap" textures which are pre-baked into the map file and determine how your map will be lit - if you do not run VVIS, your map will be fullbright - if you run VVIS on "fast" mode, there is a bug which causes displacements to have weird black edges, and you should never release a map in this state
  • PVS = Potentially Visible Set = At compile time, each visleaf builds a "set" of other visleaves that it can potentially see - this set of visleaves will be rendered for any player standing in the given visleaf - this can be visualised by setting console command r_lockpvs to 1 in-game and moving around the map
  • Skybox brushes = Brushes with the "tools/toolsskybox" texture - these brushes display the map's 3D skybox beyond them, and are used to "partition" different areas of your map from each other so that you're not rendering areas that aren't visible to you - skybox brushes cut any other brushes that they're inside, which is a common source of visual errors - to solve this, any brushes intersecting a skybox brush should be turned into a func_brush entity which will not be cut
  • 3D skybox = A small, scale model of distant areas - to create a 3D skybox, build a small isolated box of skybox brushes outside your map, and place a sky_camera point entity within it - this entity "projects" anything it can see into the 3D skybox, and scales it up 16x - so, if you want textures to have the same scale as they would in the main map, divide their texture scale by 16 in the 3D skybox - also, the sky_camera entity has separate fog settings from the main map, and projects what it can see treating itself as though it was the point (0, 0, 0) in the main map - this is useful to know for syncing things up so that they smoothly transition from the main map to the 3D skybox
  • Point Entity = An entity not tied to any brushes that you create by pressing "Shift-E" and clicking anywhere in your map - after you place it, double-click on it or hit "Alt-Enter" to change its properties - this is how you place many useful entities such as "light", "light_spot", "light_environment", "prop_static", "sky_camera", "env_fog_controller", "env_sun", "shadow_control", "team_round_timer" and "team_control_point"
  • VMX = Backup file that Hammer automatically creates when you save a VMF file - changing extension to VMF can allow you to restore this backup in the case that your main VMF file gets corrupted
  • Face Edit Sheet = Menu opened by pressing Shift-A - allows you to select brush face textures in your map by left-clicking, and apply the current texture to a brush face by right-clicking it - if you have a face selected, you can press "Alt-Right-click" on another face to texture it relative to the current face - useful for continuing a texture around a corner in a natural-looking way
  • Displacement = Sheet of vertices that can be adjusted with sculpting tools - created with the "Displacement" tab in the Face Edit Sheet - cannot seal your world! Consider placing a nodraw brush underneath your displacements. Be aware that nodraw brushes above displacements will cast ugly shadows onto the displacement!
  • Texture Lock = "tl" button in the top bar full of icons - makes it so that textures stay positioned the same way even if you move a brush
  • Texture Scaling Lock = "<-tl->" button in the top bar full of icons, right next to the Texture Lock button - makes it so that when you scale a brush, its textures are scaled with it - you usually want to turn this off as it will make your map look really ugly really fast
  • Group = distinct from a "Visgroup" - when selecting a number of brushes, press "Ctrl-G" to group them - this makes it so that when you select one of these brushes, it will automatically select all the others - change your selection mode from "Groups" to "Objects" if this is undesirable, or press "Ctrl-U" to ungroup the brushes
  • Brush Entity = A group of brushes which serves some specific function - if you select a few brushes and hit "Ctrl-T", you'll turn them into a brush entity - there are many entities to select from, but the default is "func_detail" - extremely small and detailed groups of brushes should be turned into func_detail to reduce your map's compile time - be aware that no brush entities can seal your map!
  • Solids selection mode = In the top right of Hammer, you should see three buttons labeled "Groups", "Objects" and "Solids" - if this is set to Solids, you'll select individual brushes instead of brush entities - this is a common source of confusion for new mapmakers - a quick shorthand is to press "Ctrl-W" if you're selecting a brush entity and not selecting all of its brushes - this keybind will toggle the selection mode between "Groups" and "Solids"
  • For cubemaps, the default compile processes do not build cubemaps, and if not using a CompilePal compile process or otherwise custom compile process with a buildcubemaps command, you must build cubemaps in-game using the "buildcubemaps" console command when loaded into your map - also, buildcubemaps automatically packs cubemaps into the BSP file, and the game finds packed cubemaps based on the map name - so, if you rename a BSP with packed cubemaps, its cubemaps will show up as either missing textures or a texture called "engine/defaultcubemap" depending on the player's operating system

It may be nice to have different sections for In-Game Terms and TF2Maps terms, since some terms do not apply to the main game and are either TF2Maps community-specific lingo or directly only apply to the functions of the playtesting servers.