In my previous #Blocktober post I mentioned that I had started work on a number of new projects. I would like to close the month by focusing on a project I’ve yet to talk about, Last Round.
Last Round is multiplayer game set in the golden age of spycraft. Players assume the roles of special agents in the field, across a wide array of espionage-appropriate locations.
Players find themselves in a last man standing scenario, each equipped with a pistol carrying a single bullet. A bullet is granted for every kill a player makes. If all of bullets are spent and players are still standing, a bullet will spawn at a random location. This random bullet is visible to all, and results in a mad dash to the bullet’s location.
As Last Round is currently early in development, this is the only game mode, but even in this preliminary stage, it’s really rather fun. The game is being developed by Joe Wintergreen, Benjamin Blåholtz, among others. I’m contributing levels, the first of which I will talk about in this update.
Cairo is a small map with a series of overlapping loops connecting two adjacent arenas. Players fight within large function rooms, across open market squares and within tight, winding side streets.
…but before I show the level itself, I’d like to talk a little about my level design process whilst building the blockout.
When I joined the Last Round team, there was already talk of the first map being Cairo. The purpose of setting the map in Cairo was one of readability. The location provides interiors that are open to blue skies, warm colour tones, and large, bold shapes. Such a backdrop will provide a strong contrast to the darker characters and their lanky silhouettes.
With the setting agreed, the next step was to gather reference material to help guide the blockout and ground it. Many of the references I used came from the artists that would later be working on the level. I feel it’s important to get on the same page as your team as early as possible.
Pro tip – aligning art direction and design intent before any of the heavy lifting begins is the key to true level design happiness.
Once enough reference was gathered, it was time to start building the blockout.
Level design is an iterative process, even more so when your mechanics and metrics are still being developed. In these circumstances it’s important to be flexible and not too precious of your work. This is why level designers blockout their work with bold, simple shapes before applying too much detail.
In Unreal, I approach blocking out with scaled primitives. This project uses multiples of 10 rather than power of 2 for grid size, so I had to create a new set of primitive blocks. I wasn’t sure what I would need, but created the basics in Blender as a starting point.
One limitation of scaled primitives, is that when you scale blockout models, their lightmap UV’s also scale. This leads to some pretty nasty lighting artefacts across surfaces should you choose to use baked lighting.
This can be minimised by raising the “Cascaded Shadow Maps” values in your level’s directional light. UE4 tells me that this is somewhat performance hungry, but at this “art-free” stage of the project, it doesn’t matter too much.
Design intent and visuals
The blockout serves as the foundation of what the level will become. Once the blockout is complete, it is of the utmost important to hammer it with playtests. If your blockout process is solid, then making changes to respond to playtest data should be trivial, and to be honest, expected.
In multiplayer, your sight lines, time between spawns/objectives and cover patterns will take the bulk of your attention. Cairo was no different.
Responding to feedback
When a game is early in development, it can be a challenge to define metrics and/or make judgement calls on engagement ranges. Playtesting is an essential remedy to this uncertainty and will help developers to get a feel for the game they’re making.
With the blockout completed we began playtesting the level. This generated a bunch of feedback and highlighted a lot of issues. Sight lines were often too long, some areas of the map didn’t see a lot of action, and there were plenty of areas the player would get snagged on collision. We also found that long range pie slicing was a recipe for frustration and a sure-fire way to slow the pace to a crawl.
As a result of this information, I began making alterations to the blockout; checking every angle and sight line, as well as making the necessary adjustments to bring in engagement ranges to a more suitable distance.
When responding to feedback and making adjustments, it is the designer’s responsibility to know when to preserve gameplay intent or when to pivot. It’s an important part of level design to allow a layout to evolve as it is tested. The same goes for visuals.
Throughout this blockout, I haven’t worried too much about aesthetics. I stuck to the reference material for the overall shape language and provided some additional detail to help convey my intent for each of the areas. I find this is important to provide the map with a sense of space. It also gives artists an ideas of what props or environment pieces could be concepted and built.
In the comparison above, you can see an early blockout of the market square. The paintover (provided by the artist) takes my blockout and fleshes out the details. Not only does this provide a springboard for level artists to begin working, I can also cherry pick and incorporate some of these ideas into the level as feedback.
I honestly can’t wait to see what this level looks like once the artists get ahold of it.
Working on Cairo (and Last Round) has been great fun. This project has given me the free time creative outlet that I needed; working at a casual pace and focusing on one area of development.
Unfortunately I don’t have any recent Last Round playtest videos to share, however, I do have a recent video where I’m running around the Cairo map checking my latest changes…
I hope that was an interesting or helpful read. Last Round is still finding it’s feet in some important areas, such as pacing and optimal player count, but as I said, it’s already bloody good fun. I’m really looking forward to the next playtest!