Creating a Call of Duty Map
With this project I wanted to try and learn a new game engine with the knowledge I had from learning previous game engines such as Unreal Engine or Unity. It is also an interesting insight into how different engines develop to suit different kinds of games.
I chose Call of Duty: Black Ops 3 Because it is a game I like and have played a lot. I also wanted to see how my gameplay experience would translate into creating a map for the game.
What is Call of Duty: Black Ops 3
Black Ops 3 is a first-person arena shooter. The most notable feature is that the player has a booster pack allowing them to jump higher and run on walls. Because of this the game becomes very fast paced and there is a lot more to consider than just the walkable area.
What is Radiant Black?
Radiant Black is the name of the in-house level editor made and used by Treyarch Studios when creating maps for the game Call of Duty: Black Ops 3.
Anyone who has purchased Black Ops 3 can download Radiant Black for free and start creating maps. With the editor comes a large collection of assets used in the games already existing maps.
Starting with the basics
Before I started playing around in the editor I began drawing some designs for the map. I wanted to focus on two of the most popular game modes in Call of Duty; Team Deathmatch and Domination.
These two game modes are both fast paced and have a lot of player rotation around the map. They are also very reliant on maps having good spawn design.
First Iteration: Areas felt too small and too close to each other.
Second Iteration: Added more side areas for spawning and flanking. Made each area bigger.
One of the key things to have in mind when designing a map for Call of Duty is where the player can respawn after death.
Due to the fast-paced gameplay, having a safe place to respawn that isn’t in front of an enemy and not too far away from the action is very important. At the very least the game always tries to respawn a player where they can not see an enemy and an enemy can not see them.
A cleaned up version of my paper design, each area is more pronounced and you can see the possible player paths easier.
Smaller props to block areas and sighlines are added later in the process.
Sightlines and Flanking Routes
A traditional Treyarch map is usually divided into 3 lanes with connections between them spread throughout the map.
Each lane has its own main path supported by 1 or more flanking routes. These flanking routes can be quite extensive or just a small detour. Each lane also has a focus on close or long ranged combat to give every player a choice on how they want to play the map. Long sightlines give snipers an advantage whereas sharp turns and a lot of cover give shotguns and SMG’s the advantage.
The map Fringe. Three distinct lanes that are connected by smaller sidepaths. A very typical Black Ops 3 map.
Getting Started with Radiant Black
Having decided on a paper design I was happy and confident with I decided to start up Radiant Black and begin blocking out the level.
Opening Radiant was at first very daunting, but after learning what each windows purpose was and learning the basic controls for navigating the scenes were I quickly got used to it.
The main difference between Radiant and editors like Unreal and Unity is that most of the work is being done in the 2D viewport. It was hard to adapt to but once I got the keyboard shortcuts and commands into the muscle memory, I quickly felt how faster the blockout process was compared to other more general-purpose engines.
There is also a much bigger reliance on using BSP’s (Binary Space Partitioning). Everything in the map is held up with different kinds of brushes, such as basic geometry with textures on or an invisible brush that blocks the player.
When the base block out was finished I did a quick pass on the balance of the map. I tweaked how fast each team could reach certain areas of the map and made sure that they both got to the middle at the same time.
After some feedback I also added some extra routes that expanded each side area and added a connection for faster rotation to the middle for one of the sides.
At this point I was satisfied with the size and feel of all the areas, so I moved on to propping the map.
Each tab can be docked anywhere you want or made into its own window, so the edior is very customizable. A a first glance it can be very overwhelming.
Adding Props to the Map
My original plan was to take the map to a fully detailed state, but after spending 10 minutes on a small corner of the map I quickly realized that I did not have the time required. I also learned none of the props had any player collision on them and that it was up to me to block the player manually. This meant adding BSP’s to every single prop I placed that I did not want the player to be able to walk through.
So, I scrapped that idea and decided to try and take one of the areas as far as I could with the time I had left.
A blockout of the map with no propping. Iterating on this layout is very fast and easy.
The start of more detailed area. Changing layouts here is more time consuming and you generally try to avoid any major changes once the blockout is finalized.
Gameplay Related Details
Since the player can run on walls the player has to quickly understand which walls they can run on or not. To help with this, Treyarch often uses flat and smooth surfaces. In some cases, gameplay comes before logic and they just slap a giant panel on the side of a tree to really hammer in the idea that the player can and should wall run there.
You also need to think about how to differ the playable area against the non-playable areas. In most cases the developers just add an invisible wall or an out-of-bounds zone that kills the player. This works for the most part but can lead to confusing early moments when learning a new map.
I use decorative glass panes to guide players along the walls.
Making a multiplayer map was quite the ambitious project for the time I allotted to it. Most maps in Call of Duty take months to complete, so with that in mind I am happy with what I manged to do in 3 weeks as a complete beginner.
Coming from Unreal Engine and Unity, I did not expect the learning process to take as much time as it did.
I had the most fun when I got the hang of working with the blockout in the 2D views. The tools the developers made feel efficient and well thought out. In the beginning I was really confused as to how anyone could work like that, but I changed my opinion after I got the rid of the habits I had from working with Unreal.
The hardest part was having to add collision manually to props in the level. I might be approaching level creation the wrong way and rely too heavily on props when I should focus more on making details with the brushes. I unfortunately find it very tedious and frustrating.
When all is said and done, I did have fun working with Radiant Black. I still prefer using Unreal Engine since it is a more user-friendly and customizable engine. Having a fully developed game to make maps for is definitively a bonus though.