Mapping for Half-Life Deathmatch is a question that has appeared in the forums many times, with questions like "how do you make weapons respawn?". This handy tutorial features an in depth guide to all your queries about Half-Life Deathmatch (HLDM) mapping.
Mapping for multiplayer
An HLDM map is much like any other, you build your architecture, you light the map and you put in a starting point and some weapons. However:
- HLDM maps are not maps where you start at one point, fight your way through the rooms and corridors and make it to an exit.
- HLDM maps are arenas. The difference is in the layout of the map, and where the weapons are placed.
- They do not have a starting point, nor an end, they are simply an area of corridors, rooms, caves or whatever you want to have, all connected in a fashion which allows the player to freely move between parts of the map without having to stay on an allotted path.
- HLDM maps should have multiple info_player_deathmatch entities as spawn points, instead of an info_player_start.
An HLDM map can be broken down into three basic elements:
- You have to have an easily memorable layout. Something new players can explore with ease, yet still makes a fun and challenging deathmatch. Maps with strange layouts or maps that look the same everywhere can be confusing, and are generally avoided.
- Weapons must be placed in the deathmatch fashion. The deathmatch fashion of laying out weapons is to place weapons according to their strength and usefulness in a deathmatch game. For example, having an egon gun lying on the floor in front of every spawn point would be a bad idea, since this weapon kills quickly and will make the map get boring very quickly. However, if you were to place it in an area filled with poisonous gas that hurt the player as he stepped into it you would find the weapon was less commonly used, because of the risk needed to reach it. *NOTE*: Weapons in HLDM respawn automatically!
- R_speeds must be kept to a minimum. With multiplayer games, you have to take into account things like player latency, and players with dial up should never have to have their high ping stacked on top of low fps. You should already know what its like to keep the R_speeds down on a single player map. Unfortunately, this time you wont have the luxury of things like HINT brushes to stop some parts of the map not being rendered, because on multiplayer games the whole map is rendered at the same time. Remember to make complex brushes inside the maps hull into func_walls to stop face splitting.
In HLDM (as with any map) it is important to make your maps look more alive. Try using func_trains
to make moving objects, or env_lasers
to make your maps look like real locations that have a purpose. Having locked doors and windows give your map the feeling that your map isn't just sitting in an empty void, but actually makes up part of the world.
Testing your map
Once you feel you've done everything in your map, and that it is complete, its now time to test it. Open up Half-Life and create a server (preferably LAN) with your map. The reason we are doing it this way is that if we were to just type "map mapname" into the console we would start the map with Half-Life thinking you were playing a single player game. By creating a server, Half-Life is making a multiplayer game, and thus is giving you the HEV, crowbar and pistol from the beginning. You will also respawn when you die. This is a good way to test the map yourself, but if you want to see how it fares in a real deathmatch, you should find a group of people to help you test your map in a proper match.
Hopefully this tutorial has given you a better insight to the structure of a HLDM map, so have fun making and playing your map!