
I always love weird, inventive games and that this one is in the underserved investigative genre makes it a must try for me. The issue with the genre is that cases are usually handcrafted and the process of solving them plays out like a linear adventure game with a small cast of characters. What makes Shadows of Doubt stand out is that it’s all procedurally generated. The city, the hundreds of people who live in it and of course the cases. The downside is that the procedural generation isn’t perfect, resulting in all kinds of issues, and there is a lot of jankiness in the mechanics. It’s one of a kind and great at what it does but you do have to put up with a lot of frustration.
There’s a whole backstory about the world being some kind of hyper-industrialised corporate-controlled dystopia in which everyone lives in cramped, polluted cities. I didn’t pay much attention to that. It suffices to know that the player character is the typical down-on-your-luck former police officer. At risk of being homeless, you decide to take up freelance investigation work, either solving major crimes that you hear about on the police radio or doing odd jobs. You get paid for correctly resolving these cases and get a boost to your social credit score. Climb high enough through the social ranks and you may get to retire to what passes for paradise in this world. The catch is that as a freelancer, you’re not operating under the auspices of law enforcement authorities. This means that you usually have to illegally sneak into crime scenes to carry out your investigation. Most of the other jobs available similarly require you to break the law by breaking into computer systems, pickpocketing targets or downright assaulting them. But it’s all good as the citizens’ memories are short and you can always run away from trouble.

The coolest part of the game is the map it takes place in. Topologically, it’s nothing special. An average-sized city is just a 4 x 3 layout of blocks that will include a City Hall, a large hotel, a park and different types of buildings. Residential apartment buildings can be over a dozen storeys high. It’s when you step inside someone’s home that you realize how much detail there is. You can open the kitchen cabinets and there will be cans of food inside. There’s usually a cardboard box inside the wardrobe that will contain the family’s important documents. Break into their home computer if they have one and you can read the messages they send to each other. Their address book will be full of their contacts, friends and colleagues. Any of those could be a vital clue when you’re working on a case. Throw in the need to search for fingerprints with your handy portable scanner and you can appreciate how much work goes into searching just one home. This incredible number and variety of places and people is what procedural generation buys you.
Every citizen who lives in the city is distinct. They have a name, a physical description, a job, an address, and so on. They have their own little lives and so will be all over the map depending on the time of day and the day of the week. They might be chilling at home, or busy at work, or sitting in a restaurant, or doing laundry at the laundromat and many other possibilities. When trying to solve cases, you very often have to identify a person using very few clues. You might have the initial of the first name and a description of their hair for example. Working a crime scene, the only interesting clue you might get is a fingerprint that doesn’t belong to one of the residents. Once you do manage to identify someone, you might also need to track them down and arrest them. Side jobs might instead ask for a photograph or to humiliate that person by throwing food at their face.

What’s great about this is that it feels like real investigation work, not the scripted, handheld version that other games offer. In theory there are countless ways you could go about solving a case in a living, breathing city like this. You could check surveillance footage to see if anyone suspicious has been loitering around a murdered victim’s home. Searching someone’s friends and colleagues is always a good next step. If all else fails, you might have to take what few details you have of a suspect and ask random passersby on the street if they know that person or have seen anything. Not all clues lead somewhere which is both furstrating and realistic. One time I was asked to investigate a wife’s infidelity but found evidence that the husband too was cheating. It was interesting but didn’t help me solve that case. Could a random lipstick found in someone’s home be a clue? Maybe, who knows? The point is that this is only possible because the world is large enough and crammed full of objects to examine and pore over.
At the same time, procedural generation also means that sometimes things fall through the cracks and don’t make much sense. I had an apartment building that was equipped with cameras but no surveillance room in which to review the footage. Sometimes murderers scrawl a statement on the walls but it’s hard to make out what it says under the low-resolution blocky graphics. Sometimes randomly generated cases seem impossible to solve. What am I supposed to do with a clue that the person of interest has short, blonde hair and has an interest in music? I could theoretically brute force search the entire city but that doesn’t feel like in keeping with the spirit of the game. There’s random jank too. I’d fallen out of the map a couple of times. If you save the game at an odd location, such as when you’re hiding under the bed, you might not end up at exactly the same place when you reload. The citizens are all supposed to have programmed routines but sometimes get stuck. I’ve seen one repeatedly move between two rooms flicking the light switch on and off. These issues make it hard to trust whether there’s a clue you’re missing or if the game loaded something wrong.

I’m fine with the blocky, Minecraft-style graphics. They provide enough detail to differentiate between individuals while making it possible to populate an entire city with them. I’m not a fan that many other mechanics seem implemented half-heartedly. A big money sink in the game is that you can buy and furnish your own apartment. But the interface for placing decor and furniture is so awful most players don’t bother. There seem to be next to no consequences for the player committing crimes themselves as it’s easy to escape pursuit and once you get away far enough, the citizens forget whatever you’ve done. Most of all, I’m irked that much of the challenge of the game comes from its forced stealth mechanics. You’re constantly having to break into buildings, disabling the security systems and hiding from others, in order to look for clues. I’d much rather this be just about looking for clues.
Many fans have commented that this shouldn’t have left early access status on Steam in its current state. Right now this is certainly playable and it’s a lot of fun. But I do agree that it could have used more development time. It’s strange that motives for crimes don’t matter at all. Physical evidence is all the game cares about. Plus there’s no concept of family relationships. Citizens can have partners who live with them and they can have friends and colleagues and that’s it. Having these systems would have made investigations so much more interesting. Currently the system is able to procedurally generate any number of cases but once you pick up the patterns of what you need to do, it does get repetitive. It even feels cheaty once you figure out some systems, such as how powerful the computer in City Hall is. The result is that some cases seem impossible. Others downright trivial. At this point I doubt that updates will change the game substantially so those extra features I wanted will have to wait for a sequel. I really love the concept as this is exactly what a true investigation game should be like. But as it there’s only so much gameplay I can get out of it and it does call for plenty of patience to put up with its foibles.