Dead County is a Left 4 Dead 2 Campaign created in six weeks using the Hammer World Editor. My personal goal for this project was creating a fun, open and engaging Left 4 Dead level and at the same time get a deeper understanding on how to create a good Co-op experience.
- Created in six weeks
- A virtual slice from a three chapter Campaign
- Created in Hammer World Editor Tool
- Singleplayer and Multiplayer Co-op
The first thing I did before planning was getting a better understanding of Left 4 Dead and the co-op genre. To make things a little easier for myself I started to read Valve's documentation and playing the official Left 4 Dead 2 levels. I also decompiled Valve's maps to get an idea on how they made their levels and the most important thing, how they worked with the navigation mesh.
When I designed this campaign, I wanted to work on something that I had not done before, so I decided on a rural railroad setting. I've always liked doing outdoor levels, but to add some more variation, I also wanted to add some indoor areas like, tunnels and sewers.
After that was done I designed the levels around the setting instead of doing level design first. To me it is easier to get ideas that way and that helps me too establish a believable world. I took reference in form of pictures from the real world to get some inspiration. I also use my imagination to spark some idea, too see where it takes me.
Gameplay and Story
Chapter 1 - Dead Tracks
I went for the setting, location and environment first.
I wanted to create a level that was fun to work on and working with terrain and foliage is something I love doing.
When i designed this campaign the story was an afterthought. But I tried to get a little bit of storytelling in through the environment.
The first chapter starts at a railroad crossing. Because the crossing is blocked by crashed trains and cars, the survivors must travel by foot.
As a 4 player co-op campaign I wanted to have gameplay that involved players holding each others back. This was acheived by having a more open world. Zombies can attack from different angles.
The first part have lots of foliage that the zombies can ambush from, this created some tension when you travelled on the tracks.
Overview Chapter 1
Chapter 2 - Enveloping Darkness
After the survivors have reached the safehouse, the survivors continue to follow the tracks until they reach a train tunnel. A train is blocking the path inside the tunnel, but they are able to get around through the tunnels and sewers.
The main idea of this chapter was to get some variation in the gameplay and setting. The zombies are more likely to attack from the front in this part.
This short chapter ends with a stand-off by the big steel gate. The safehouse lies on the other side and the survivors must hold their ground until the gate is fully opened.
Chapter 3 - Be Quick or Be Dead
- Due to time contraints the third and final chapter had to be cut.
- I wanted to somehow foreshadow this at the end of Chapter two, but again, due to time the ending was abrupt.
- The main idea for Chapter three was that I wanted the players to run through a trainyard to catch the evacuation train. This would have been the finale for the campaign.
One of the first problems that arose were during the blockout phase.
The foliage were blocked out and were just square sticks stuck into the ground.
I soon realized that having these sticks everywhere did not give the effect and feeling even in the testing phase.
I would have had to redo the navigation mesh several times.
- Instead I removed all the blocky foliage and started using props.
- Lesson Learned:
- Keep in mind that redoing a navigation mesh can take up a lot of time quickly.
- Plan ahead so I don't have to redo the navigation mesh.
The Navigation Mesh
- I Spent around a week on research on the navigation mesh for L4D2.
- It was a lot of information to take in, and so many functions that it felt a little bit too much sometimes.
- I had to edit a lot of places where I placed static props that had collision.
- Thankfully, Valve had a nav mesh edit config that I could use and it made the editing so much easier.
- Using keybinded console commands saved a lot of time.
- Lesson Learned:
- The navigation mesh is something that needs a lot of attention throughout the whole process of making a level.
- I need to keep in mind that changing the level will also affect the navigation mesh.
- Every slight change of the terrain may affect the navigation mesh.
The Train Crash Dilemma
I wanted to add an event to make the world feel more alive.
It felt natural that a train on the broken bridge would finally give in to physics and fall down.
But unfortunately, these trains are static props only. So i had to find a different solution.
I scrapped the train and instead replaced it with a train cart with some barrels.
It took some tweaking to get the timing on how long it took for the barrels to hit the container.
In the end my smoke and mirrior solution worked, but having a train fall down would have given a bigger impression in my opinion.
- The Detail prop grass that was meant to make the ground look less flat glitched.
- Solution: I had to place a func_detailblocker to remove it completely and instead I added more bushes where it was needed.
- I wanted the Train Crash area over the canyon to be a vista for the players.
- But unfortunately the density of the fog made it hard to see where it was.
- I wish I could have spent more time on the architecture on the structures. They felt a little bit too blocky and they were kinda uninteresting to look at.
In these six weeks I have learned a lot on how to create a co-op for Left4Dead2. Even though I previously had never made a map for this game and despite all the troubles I came across. I can say that I've got even more hyped about creating levels for this game and gameplay. It was also really fun to get almost imidiate response from the steam community when I uploaded the map for people to test. I wished that I could have given the campaign more polish and completed the full 3 chapter campaign.
All the obstacles that I came across unfortunely ate a lot of my time and I know that it is lacking in game-play wise in some areas. I wanted the gameplay to be a linear, going on rails so-to-speak. But I got some nice feedback that having for example some more detours in the map, that seperates the players, could have added more intensity and variation.
After all, I'm pretty happy on how the map turned out. I got to design a co-op map and the difficulties that comes with it and learned some more scripting. In the near future, I will take in all the feedback I've got and finish the campaign. It was fun working on.