© 2024 Only By Midnight, All Rights Reserved

Creating Character Portraits

When we first conceived of Ctrl Alt Deal, we wanted to use procedural generation to develop lots of scenarios and characters to test the player’s skill. One of our ideas was roguelike portrait selection, where NPCs would be randomly generated, including their appearance. But that would require literally hundreds of custom pieces of art—both time-consuming and expensive.

We then got a great idea: roguelike portrait generation! We could take features (such as eye color or mouth shape) and mix-and-match them, Mr. Potato Head style, for an endless variety of characters.

Well, that didn’t quite work out. We quickly discovered that while we could procedurally generate portraits, the results weren’t what we wanted. Because we had to be cognizant of head shape and position (we needed everyone to be looking in the same direction, otherwise slotting in a new feature wouldn’t work), all the pictures had a sameness about them. They all looked like corporate mug shots.

The portraits could be distinguished from one another, which was a plus, but we found ourselves not really caring which face we got. In short, the people lacked personality.

Instead of randomly generated portraits, we came up with an idea we call “actors playing roles.” Our writing team came up with a character sketch—name, background, and personality—for an individual. We passed the description on to our illustrator, Michael Csokas, and he came up with a sketch of the character.

One of our first tests was Casper, a lowly scientist. Michael captured Casper’s hesitant charm with his body language and expression, then added individual touches such as his glowing LED tie and mysterious neon beaker. Even the quick sketch of Casper gave us incredible depth of character and personality.

Once the base portrait was done, we received multiple iterations from Michael that set the character (the “actor”) in different jobs and situations (the “role”). In his base configuration, Casper might be a junior-level scientist. But in another configuration, he’s the head of the lab, with a private office and high-tech equipment.

In this way, we can get a variety of pictures that appeal to our players, and we can use procedural generation of levels to select the most appropriate role for the character. We can also showcase progression this way, as a character’s promotion might come with a portrait upgrade. Check out manager Casper’s fancy red lab coat!


Creating a variety of portraits for our characters was a tricky challenge, but our solution works great. It emphasizes the fresh replayability of the game without sacrificing its personality.

We hope you enjoyed meeting one of our wacky cast of employees in Ctrl Alt Deal. Next in our art series: how we took these character portraits and turned them into icons for our character network screen!