Status
Not open for further replies.

Bottiger

Administrator
This is a basic guide on how to make zombie escape maps. This guide doesn't teach you how to map, only the bare essentials needed to make a working ZE map.

1) Locate the map editor. On most computers it is installed here:

C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\bin\hammer.exe

I recommend you download this one instead as it crashes less often.

https://ficool2.github.io/HammerPlusPlus-Website/pages/download.html

2) Learn the basics of map editing somewhere else. You can try watching this as a starting point, but there will be many other tutorials covering the editor.


3) Once you know how to create brushes and triggers, you can start.

This is a layout of a basic ZE map. All maps are variations of this with extras added on. For example a more complicated map will have more than 2 hold areas or more than 2 hallways. And maybe even a boss or more.

layout.png


To create a hold area, make a trigger_once that opens a func_door or destroys a func_breakable. If you use a func_breakable be sure to use the flag "Only break on trigger".

doortrigger.jpg


4) We recommend that you add a team_round_timer. Zombies will be invulnerable and frozen in place during setup. We recommend you place func_respawnroom on the info_player_teamspawn. You can add an output to team_round_timer that disables the func_respawnroom when setup ends.

To make a win trigger first make a game_round_win. Give it a unique name, and change the team to "3 - BLU".

win1.jpg


Then make a trigger_once at the end of the map that sends RoundWin to the game_round_win.

win2.jpg


5) Common Mistakes

Don't use too many entities. There is a limit of 2048 networked entities per map, and the server will crash if it is reached. There are some entities that aren't networked like prop_static but most of them are.

Lights and decals also count towards this limit even though the game deletes them shortly afterwards. They can overload the limit at the beginning of the map.

You can see how many entities are on your map by typing report_entities in your console. There should be less than ~1700 edicts at any point in time if you want it to work on a 32 slot server.

Placing decals on many entities will also cause a crash. https://www.interlopers.net/tutorials/36716

OnStartTouch in a trigger_once will activate multiple times unless you set refires to 1. Set refires to 1 or change it to OnTrigger.

OnTrigger in a trigger_multiple will activate multiple times while the player is inside. Change it to OnStartTouch if that is not intended.

6) More advanced topics

Forward spawns:

As the map gets longer you will want to spawn zombies closer to the humans. You can do this by giving your info_player_teamspawn names and enabling new ones and disabling the previous ones.

A more efficient way would be to putting a disabled trigger_teleport over the spawn area, and enabling it and changing the destination by either doing AddOutput target dest123, or teleporting the info_teleport_destination with AddOutput origin 123 345 567

hold.jpg


AFK Teleporters

Make trigger_teleports that teleport afkers forward. Make sure they start disabled, and enable them later once a certain area is reached.

Advanced Features

https://www.skial.com/threads/skial-zombie-escape-mapping-reference-guide.88106/

Decompile CS maps to learn advanced features (https://gamebanana.com/maps/cats/8024) with https://github.com/ata4/bspsrc/releases
 
Last edited:
Status
Not open for further replies.