Rebels have derailed your train. You were headed for City 17, but now you’re stranded - a lone survivor. Combine rule must be enforced. Overwatch must be notified - but the rebels of City 10 will stop at nothing to retain their secret freedom.
Experience a time before the fall of City 17 - 11 months before the deployment of Gordon Freeman. Distribute deadly justice in the abandoned City 10. Surpass the infestation that lies beneath. Climb Pillar 10. Survive the Combine plague, and raze the rebel sanctuary of City 10.
In this article, I’ll show you the processes I’ve been going through to create chapters for this mod.
This article has been written as I created a map for the last chapter, to sort of give you an idea of how this process expands into a playable, palpable state. This is an in depth explanation of the creation of one map from that process, to show you how much work goes into this stuff not just from myself, but from other modders working on their own projects.
I have a very clear vision of what I want for this last chapter. Sometimes this isn’t always the case. Chapter 3 for example; I knew it was going to take place underneath City 10, but that was it. It took me one failed concept to get that feeling right.
I lost about three weeks, and this is why it is so important to go into creation with a plan. Going into development with a plan also prevents writer's block and burnout, because you can always go back to the foundations you’ve laid. There’s a very fine line between developer intuition and pulling something out of your arse.
The first thing I need to do is get my vision onto paper. To get into the right frame of mind, I tell myself “If I’m hit by a bus tomorrow, what would someone else need to continue this project using my vision?” and then I just start drawing.
Specifically here, we’re not looking for concept art. You want the plain and simple first, the map layout and design. How does each room connect? What makes this layout interesting? At first, keep it to your vision.
So here is my design for this map:
I looked over my plans and immediately singled out what I believe to be the most time consuming aspect of this build - a power device called the Quantinode. Think of the Quantinode as a miniature version of the Citadel reactor. It’s a little smaller and a lot different. For this map, it’s just there to look pretty and cast interesting light on our environment. I waste no time in constructing a prototype of this device in the testbed:
Right away I have some new ideas. The Vortigaunts are supposed to be using their energies to ‘feed’ the core and keep it alive for them. I want to see that concept echoed as I’m not necessarily going to be explaining it in black and white. So I’m going to change these colours to look more green to liken them to that of the Vortigaunts.
Just a quick tangent - Testbeds are awesome. I’ll be keeping my testbed in my release build so you can look at how I’ve done various things once you’ve finished the mod.
Now I will start fleshing out the map:
You may have noticed already that the map differs from my original plan. This is because I’ve had a better idea during development and have altered the map flow to reflect that. Now I’ve laid the foundations I can begin detailing.
I start nit-picking through the map, fleshing out details as I go and stopping to create core mechanics. The first bit of detailing/mechanic I built was the vaccination points for the CFLU event. Players will randomly encounter a ‘flare up’ of CFLU and will have to reach a vaccination point to prevent death. They can also be used to just heal up:
The second main part of the map I built is the Quantinode section. This is the power source I spoke about earlier. This core structure will be echoed in each map of the chapter. I also put together the arena for the Vortigaunt encounter, and this lies directly beneath the Quantinode. I’m happy with the area for now, but I’ll be coming back to do more on this later.
Next up is the pressure chamber puzzle. This one is quite complicated and as I write this I’m in the process of building it. I wrote a quick program in C# to help me understand the logic behind it and to ensure It can be solved.
I spend some time working on another mechanic - a simple laser wall. Players have to find the power vents and launch Combine balls into them to blow them up and disable the lasers. Easy to make and execute.
Next up is player training for the CFLU mechanic. Initially I sprung the CFLU on the player but this didn’t feel right. I have to create some kind of an event to ‘tell’ the player they have contracted CFLU. This is where my creative intuition comes in.
I’d already built this section as prisoner storage but needed to convey the CFLU mechanic to the player. The way I got around this was to build a pod scanner that players could walk through and get scanned themselves. It makes sense from the lore’s perspective, as the Combine will have been scanning their prisoners for infection. It also makes sense from the gameplay perspective, as it’s the only way the player can progress.
So I’ve done all of that. Got it all working - took me an entire day. Looks nice now too, as I’ve made and put in some custom textures and such. I’m always overly self critical and I’m constantly telling myself to just stop and move on. I can always come back during the detail pass.
Next up is defining the area portals for the map and building a 3D skybox. You don’t see many internal 3D skyboxes these days, so I wanted to give it a shot. It doesn’t have to be fancy at all, but rather just convey the size and deadness of Pillar 10.
Area portals and 3D skyboxes can be very hard to build. Especially with a map as complicated as this. It took me a while. Once again I’m forcing myself to move on and continue with the main map functions so I can actually get that work done. I could spend forever perfecting and tweaking and I can revisit rough work during detail passing.
I’m finally starting work on the big fight for this map. The Vorts are pouring their energies into Pillar 10’s core to keep it powered for their own uses. You’re going to blunder right into this event. The Vorts will not be best pleased.
I don’t have a budget, voice actors or anything like that so I have to do my best to convey this part of the plot to the player using what we already have. When you walk in you will notice the Vorts charging and chanting beneath the reactor before they attack you. There’s also a small event as you approach the Quantinode base that demonstrates the control the Vorts have other the energies harnessed in the device.
There was going to be a synth event here but I’ve moved that idea now to the next map where it will become more prominent.
The arena has pillars to provide cover that can be stripped away. At this point in writing I’ve only tested this a few times but it’s proving to be a good challenge, as Vorts can potshot you through the gaps in cover.
At present, Vorts can do enough damage to oneshot if you’re a little low on health. I want them to be formidable. Running into a Vort should be an “OH SHIT!” moment, not a wet noodle slap.
In the core, players can launch AR2 balls into the center to cause a brief increase in power. This will disintegrate all connected Vorts, giving the player some breathing space. It will also dissolve all cover.
The fight feels good. It doesn’t last too long but it can be rather difficult. I may have to revisit this and tweak difficulty after player testing. I found after a few attempts, I had the skill and reflexes to take these Vortigaunts down quick enough to progress.
I took a break for a day to just chill and actually play some video games. Sometimes I’ll be mapping and creating for days on end that I’ll forget how much I enjoy playing games. I’ve found that if I don’t step away from time to time, it is detrimental to the creative process. I get frustrated with concepts that I can’t get to work and begin doubting myself.
This creative fatigue casts a shadow over my work sending me into a self-doubt spiral. “What if the community don’t accept this?” “What if this isn’t good enough?”. Thoughts like that tell me it is time to take a break. Stepping back and taking a break clears the air; and when I come back I always find I’m having new ideas, I’m open to new concepts and I have a renewed willingness to continue with the project.
It’s little details - like dressing the bottom of the Quantinode device with terminals - that I wouldn’t have thought of a day or two ago, because I was too caught up in trying to get the arena fight perfect.
This highlights the importance of detail passes and construction pacing. I’ve been going through a chapter at a time with this development - going through each map with a fine-toothed-comb and detailing as much as possible. So far, I’ve only done one pass on the other chapters. I’ll be doing another once Chapter 4 has been completed.
It’s the detail passes that promote a quicker and smoother development. The pacing is what stops my hair from falling out.
Now, it’s onto some more stuff. I’ll need to find out what the parent attachment points are for the Vortigaunts to manually attach some sprites to their hands. To do this I use a program called Crowbar to decompile the vort model and take a look at the QC file. In the file, the attachments are clearly listed:
In our I/O window for the sprite initiator we simply pass an input to the sprite (which is already parented to the entity we want) called SetParentAttachment and then specify ‘RightClaw’ or ‘LeftClaw’ depending on which sprite needs to go where. Now the vorts will have nice glowing hands - before you surprise them.
I’m pretty organised. I keep a Google sheet with every bug, snag and to-do. That way I can never forget what I’m doing and it keeps me directed. It gives me a decent overview of what I’ve got to fix and build.
After some testing, I decided to change the way the vaccination points work on an aesthetic level. Breadwife pointed out to me that when you stepped into the device and hit the switch, you wouldn’t notice anything happening unless you turned around. Now the vaccination points enclose the player, keeping them locked into the ‘event’ and resetting the CFLU mechanic. It actually looks like something is happening and you’re not just standing there twiddling your thumbs.
I’ve finished the little arena fight for this map and I’m happy with how it feels. There’s a knack to it which I don’t think players will figure out at first. Once you learn how to use the Vort’s line of sight to dodge their attacks (by ducking behind the pillars) it becomes fairly easy to win the fight.
Now I have to finish the map. This map is going to finish with an elevator, so we have to deliver the player to the transition in an interesting way.
Initially I was going to have the Unification labs included in this map - This was a factory used to turn people into soldiers or slaves. However the map has become too complicated so I’ve decided to shift it to the next map. It works out well, because I can expand on that concept and have a larger area to explore.
I have to do this last bit sparingly as I’ve used so much brushwork for this map and I’m worried I’ll run into problems compiling if I add too much more.
Let’s talk about weaknesses quick. Everybody has a weakness, and my weakness is modelling. Despite having a degree in modelling and animation, I suck at modelling. I suck so bad at it that my work would suffer If I tried. Because of this, my maps are very brush heavy. While I’ve recently been researching ways of turning brushes into models, this is not something I’ve got time to do right this second. My priority here is to finish the map. I’m planning on looking at brush to models and coming back to it when I run my next detail pass, so for now we’re going brushwork all the way.
I’m very blocky when it comes to brushwork. I’ve always been told that. It’s a trait inherited from the Goldsrc days that I’ve never been able to shake, no matter how hard I’ve tried. I started mapping right out of the door in 1998, with Worldcraft. I used things like Quark and Qradient too.
The point is back in the day, blocky brushwork was pretty standard due to engine limits and such. I grew up and developed as a mapper during that period, so a lot of the blockiness tends to escape my view. I do my best to make these maps look as nice and interesting as possible despite this.
Whilst I was rambling, I built the last part of this map. I want to try something with this bit, but don’t know if it will work yet. On the large monitor in this area, I want the lead Vortigaunt to have a brief conversation with the player. Initially I wanted to do this VIA monitors but the Vorts don’t have many animations I can play without outside of getting Faceposer to work and spending a few weeks learning that. So I’ve opted to do this over a PA system.
I need to achieve this with the content provided. So before I even begin fleshing things out in hammer, I need to do some research to see if there's any way I can take words from the Vortigaunt sounds and turn them into meaningful and appropriate sentences.
Turns out I was able to mix some voice lines to create a bit of dialog. I wanted to do this to keep the protagonist alive - to remind players he has a voice, as he becomes more focused once he reaches Pillar 10. It also helps build a feud between the player and the lead Vortigaunt.
The next thing I have to do is build the closed captions for the dialog I’ve mixed. I’m putting in closed captions for important dialog because I want to make sure the player knows what is being said. You can turn these off though, through the ingame options. Once I’ve done that and put the sounds in the right places, I can begin experimenting and fleshing out the scene in hammer.
So I setup the scene and test it. Getting everything working correctly in hammer requires some major brain power. Every output has to be timed correctly, and because I'm taking the simple route and using the Ambient_Generic entity, I have to manually call the closed captions. It's hard work, but it pays off.
I polish off the lift which acts as the transition point, and the map is complete from start to finish.
22 days in the making, the map is now ready to be added to the active maps for the mod. I’ll build in the transition from the previous map to this one soon, and then add the relevant chapter configurations (as this is the first map of the fourth chapter).
Next I’ll put my feet up for a few hours, and over some tea I’ll play the mod from start to finish. I do this to make sure what I have just created fits with the concept - it can be easy sometimes to trail off course when all you’re doing is designing and not playing the mod. I’ll go away for an evening and come back and play it again - so I’m seeing it fresh in my mind.
Whilst I’ve been playtesting the map at various stages, I’ll do a few thorough playtests now that the map is done from start to end. I have no doubts that I’ll be jumping back into the editor many times over the next week or so to iron out bugs and kinks with the map. I’ll also be running the map through a trusted tester to ensure they believe the map falls within the concept of the mod, and to highlight any bugs I may have missed.
Once this is all done, I go back into the design and concept stages for the next map in the chapter and this whole process starts over again.
When Chapter 4 is completed, I’ll begin my second and final detail pass of the mod. There are two maps left to build. Every map gets a re-visit and re-touch during that process. This ensures I’m releasing with the best quality possible. This is where cubemap building and debugging occurs.
There was a lot of burnout with this one. But overall I’m happy with the result. This was quite a complicated build compared to some of the other maps from the mod.
I’m off to rest now, but soon my time will come again - and I’ll start the process for the next part of Chapter 4 - The dreaded Unification Labs.
Thanks for sticking with me.
This week I’m talking about the challenges I’ve faced whilst creating a Source mod and the means I’ve had to take to overcome them. If you’re...
No articles were found matching the criteria specified. We suggest you try the article list with no filter applied, to browse all available. Post article and help us achieve our mission of showcasing the best content from all developers. Join now to share your own content, we welcome creators and consumers alike and look forward to your comments.