Recently, Valve released a beta version of the SDK(Software Development Toolkit) for Left 4 Dead to the public. I’ve been extremely busy toying around with new ideas for campaigns and trying my level best to do a working level. It has to be noted that the SDK is part of the tools that were used in the making of Left 4 Dead but obviously the suite has been tailored for the modders and map makers.
The SDK includes the usual Source Engine stuff like the Hammer World Editor, Face Poser, Model Viewer, and a Left 4 Dead Tools mode that allows you to adjust many variables in game. As someone who has no real experience creating textures or skinning, the Hammer Editor is the most beginner friendly feature of the SDK. This is not to say that building a Left 4 Dead level will be plain sailing, as you will most probably have to learn a lot of concepts of the Source engine as well as things that are unique to Left 4 Dead.
I’ve had the idea of making a map based on a real world location, in particular KLCC which I thought would be cool. What a headache it has been and an eye opening lesson to level design. Due to the nature of a narrow corridored tower, I found that gameplay suffers as the special infected can’t surprise the survivors. Survivors always had the advantage of knowing where the infected will come from. Either in front or from behind.
Basically the process of building a map goes in this order:
1) Draft the entire level out in paper
2) Build the solid of the entire level in Hammer
3) Build the survivor starting positions and check point
4) Build the nav meshes so that the AI knows how to traverse the level
5) Play through the level to see what needs to be changed or added to make playing the level more fun
6)Repeat step 5 until you are happy with the gameplay of the level
7) Add textures and props to fill the world
8) Add lighting
9) Replay the level and adjust till satisfied
The real challenge is setting what is called as nav meshes. These are paths that the AI bots and infected use to know their environment. Generating nave meshes are pretty straight forward and it can be easily auto generated. However, I found there are instances that the AI bots can get confused if you have placed props that effect the navigation in a map.
In English, it is a little buggy and you will most probably have to build your map taking this into account. Build your map entirely out of solid geometry first. Building extensions out of rotated geometry is dodgy so try to avoid that. Only after that, make sure the generated nav meshes are usable. The entire SDK tool is not as easy to use as any of the stuff we see in games like Spore or Little Big Planet, but we are after all talking about the actual SDK used to build maps.
There is a significant learning curve in it, but once you get used to how levels are done, it gets a lot faster. Valve has released a very light documentation for the SDK which you can read here. I suggest the level making tutorial Valve has written as an important read. It got me quickly into designing maps.
I hope to get a custom made campaign out. But it will be quite a while before it is finished. It is a slow and long process.