The Inner Sanctum was a level that I made during our school assignment to make a Half-Life 2 campaign. We tried to follow the Hero's Journey, just like the original Half-Life 2 campaign did. My level was at the end of the Abyss. This means that my level was supposed to invoke challenge and fear for the player. They would have to face their greatest fears and conquer them to prevail. What I did with that premise was a zombie-level!

The Inner Sactum takes place in a combine-controlled facility that has had a zombie-outbreak. The facility is now completely overrun by the combine's experiments. There are still some combine-soldiers that are holding up, trapped with their own reckless mistakes lurking about the facility.


  • Level in Half-Life 2 Campaign

  • Made in SDK Hammer

  • Created in 8 weeks


Creating a zombie-level

Top-down of the two floors

When making this map I took inspiration from the first Resident Evil movie, Half-Life 1 and its two expansions, Blue Shift and Opposing Forces. Those properties had the moon and environment that I wanted my level to have. The high tech facility combined with chaos and destruction from the outbreak, with dim lights and broken equipment.

Firstly I made the level as a somewhat normal facility that could've been used for its intended purpose before the outbreak. When I was happy with the layout I started to block off areas and add in the more suspicious areas, such as the experiment-prison.

In the map I've placed some fun environmental gags for observant players to discover.

Two examples are the turrets that the players are trapped with, that are out of ammunition and the guy that tried to barricade a door that opens outwards.

The most important part of my whole map has got to be that experiment-prison. The whole map leads up to this area and the encounters that away within. The player first gets a view of it from outside the room through the security window, but is later forced to go down in it. All the experiments are still locked in their cell, so there is no immediate danger.

But when the player goes far enough to not be able to reach the door, a combine-soldier closes it and laughs. Then all the cells open up. I suppose you could say "luckily" the cells didn't only contain zombies. There are also antlions there, so the zombies and antlions won't only focus the player. After some time passes a poison-zombie breaks the door to the other part of the prison sector.

Varied Gameplay

I didn't want the map to just be a stream of endless combat-encounters and zombies. I actually think I still leaned a bit too hard on the combat, but I have enough quiet moments to break up the pace and not exhaust the player with monster closet after monster closet. 

Jumpscare in a vent

I use many force fields to section different areas of the map and I have two moments when they are deactivated with the help from the gravity gun. To not just have the gravity gun be used for those two times I placed objects around the map that the player can use to shoot on enemies if they want to save their ammunition for harder battles later in the map, 

I made the map to vary the gameplay and to invoke a feeling of chaos by having other sections be blocked off by rubble, which forces the player to take unconventional ways to traverse through the facility. Such as finding destroyed walls and climbing through ventilation shafts, and those vents aren't a safe place. I managed to get one playtester to jump from a zombie that hides up in one of them.

The turret trap room

Turrets shooting Zombies

Turrets shooting Zombies

Scripting encounters and events

This was my first time making a custom map in Half-Life 2. The only other time I worked in SDK Hammer was for Counter-Strike GO, and there I didn't have to worry about scripting. Now I can tell you that scripting in SDK Hammer is unlike anything I've seen before. It is like a visual scripting-system done in the world. It was quite bizarre but I managed to get a hang of it. 

My scripts were mostly used for encounters, such as zombies breaking through doors and the experiment-prison. So my scripts were very dependant on the AI and on timing. Knowing when to time the door breaking with the zombie hitting was hard and required a lot of trial and error. But I do think I managed to make some interesting encounters with them, even though the AI gets a bit confused sometimes. 

The trigger controlling the prison encounter

First look inside the prison

Zombie breaking through a door when the player gets close

Combine Soldier locking the player in the prison

Final Thoughts

A lot of the challenge from making this level was that it was all taking place inside one big facility. I couldn't break up the environment with having sections that take place outside, becuase the level took place underground. I had a lot of fun making this level and I grew as a level designer making it. I would've liked to prop the levels a bit more and make some encounters a bit more special instead of just a zombie going for the player.

But I was happy with what I made, and it was also fun making a campaign with other people in the class. Having to discuss who gets to use what enemies and weapons, and how I should start and end my level based on their levels, was very fun and educational!