Shadows of Doubt DevBlog #4: Case Folders & Cork Boards

Shadows of Doubt DevBlog #4: Case Folders & Cork Boards

Shadows of Doubt is a detective management/simulation game set in a procedurally generated and fully simulated city. As head of the police detective department, it’s your job to organise your sleuths and track down AI serial killers before they strike again! Read previous dev blog entries here.

In this dev blog I’ll be talking about the design of the game’s interface.

Last week I switched over to making some art as I was getting slightly frustrated with the coding- not because it was going badly, but because without graphics the game feels like it wasn’t progressing. I needed that change of pace, and seeing the visuals start to come together a bit has given me some more confidence in the project.

I’m trying to keep the UI as minimalist as possible. In this initial design, I’ve managed to fit in all essential display elements into 2 compact but not overcrowded spaces. The more room the player has to browse those case files the better!

Selecting fonts has been interesting- since I’m working with bitmap pixel art fonts on this project, I can’t scale them properly without them looking awful. Therefore I’ve had to stick to 1x, 2x or more their designed size in order for the pixels to remain consistent sizes. It’s not a design challenge I had prepared for, but with some extra time and attention, I’ve managed to find some great fonts that are the size I need and most importantly remain clear. Font artists who provide affordable or even free fonts for commercial use are the unsung heroes of game development! A big thank you to Zacchary-Dempsey-PlanteYusuke Kamiyamane, ‘NAL‘ and Chase Babb for the fonts I’m using here.

I’m taking a skeuomorphic approach to the interface design- that is the elements look like their real-world counterparts. For example, the evidence information windows look like case files, the clock in the corner of the screen looks like a retro digital watch (the game takes place in the late 70s through to 90s) and the corkboard interface looks like, well, a corkboard.

Many games feature this design style, the one that springs to mind off the top of my head being Papers Please. I tried to touch a little on this in Concrete Jungle too- my games tend to be interface heavy, so why not make the interface as fun to use as possible? It’s the attention to detail that can go a long way- especially in combination with satisfying sound design (eg. rustles of paper, or the ‘stamp’ sound when you purchased a new card in Concrete Jungle). A good UI the player will never really notice because ideally, it presents no barrier to interaction and immersion with the game.

The game uses a pseudo windows interface- the evidence is presented in windows that can be moved, resized, minimized and pinned to a case cork board (which acts like the windows desktop). Just the presence of a small ‘X’ in the top corner gives the player feedback this is an interface they are familiar with.

The interface also needs to be intuitive. This is a really complex game that will no doubt require a fairly in-depth tutorial, but that’s not going to stop me trying to communicate as much as I can about how to play the game through the interface design. One super obvious thing that I really like in games like this is the use of tooltips. Mouse over something for a second or so and you’ll get a small popup window explaining what it is and its place in the game. In absence of a tutorial, I’m relying on tooltips to communicate to players almost everything right now.

The slightly revamped corkboard interface features animated strings to show which way the ‘incrimination’ is flowing.

The corkboard itself is a familiar detective trope that everyone knows from movies and tv shows, and within the game has even more functionality. At the moment the corkboard also displays the core mechanic behind the game logic recognising incriminating evidence.  Incrimination is passed along from one evidence item to another via connections (represented by the string). For example, the source of incrimination could be a dead body with a stab wound. The connection to where it was found (in this example lets say an apartment) will pass a sizable portion of that incrimination from the body along to it. From there you could discover that someone other than the victim lives in that apartment- again a portion of incrimination from the apartment is passed along to that person via the connection.

This means the incrimination spans outward from the key evidence of the crime and is also visualized really well with the corkboard interface. Recently I’ve added animation to the strings so you can clearly see which way the incrimination is ‘flowing’. String colours range from white to red the more incriminating a connection is. The strings also vary in width depending on how reliable a connection is.

I’m focusing on these seemingly minor details now as they have a knock-on effect of streamlining how you play the game. Whenever I run a build, I don’t know what’s going to happen. The clearer the interface is, the easier it is to understand what’s happening within the game.

I’ve really been enjoying the UI work- next I hope to start moving onto some 3D stuff. Exciting!

Shadows of Doubt DevBlog #3: Moving Forward

Shadows of Doubt DevBlog #3: Moving Forward

Shadows of Doubt is a detective management/simulation game set in a procedurally generated and fully simulated city. As head of the police detective department, it’s your job to organise your sleuths and track down AI serial killers before they strike again! Read previous dev blog entries here.

In this dev blog I’ll be talking about how the game is progressing, the first pass of interface graphics and design, as well as a few new ideas I have.

For the art style, I’m going with pixel art for 2D interface graphics, mixed with voxel style 3D buildings and 2D sprite characters. I’ve always been fond of the pixel art style, the interface reminds me of the management genre’s golden age in the 90s (memories of Bullfrog games spring to mind). One fear, however, is that it’s not an ideal fit for the amount of information I need to display on screen- it’s a fine balance I’m going to have to get right.

This is my first time designing pixel art UI, and adjusting to the size/scaling restrictions has taken some patience!

Fresh Ideas: Exploring the City

I’ve been mulling over a new fascinating inclusion to the game. A lot of the game involves time passing, although an essential resource, there are periods where there’s not really much for the player to do (while waiting on those lab results, etc). This is typical of the genre and isn’t really an issue because similar games will just speed up time by several factors and pause when something interesting happens (eg. XCOM). This is what happens in Shadows of Doubt at the moment, and it’s absolutely fine. BUT…

Currently, there are isometric and top-down view options only. I’m going to have to make the game pretty anyway, and the 3D city is right there, with all the citizens in their simulated glory. Why not just let the player walk the streets in those phases of ‘time passing’? All it would need really is a basic FPS controller. I think being able to walk the streets could add a real connection to the city and its population.

How cool would it be to spend your time waiting reading the morning’s newspaper in the greasy spoon across the street over coffee? Or staring out your rainy office window overlooking the city while you wait for your agents to perform an interrogation of the prime suspect. There’s something irresistibly noir about that, and I’m going to have to pursue it to some degree. Especially since the game already requires a lot of those assets to be suitably detailed and constructed in 3D anyway.

I’m not talking copious amounts of detail here by the way. What I’m picturing is noir pixel art style 3D similar to explore ’em up game Bernband.

Trouble is this is a potential huge rabbit hole in an already-ambitious project. Where do you stop? If you can do this, why not just let you go to the crime scenes and do everything yourself like a true first-person detective game? As awesome as that sounds, the line will have to be drawn in the sand somewhere. At the moment, the first person element is purely going to be an optional ‘time waster’ element that lets you feel more immersed in the game world.

It’s going to be a challenge of course to create this world. At the moment the city is procedurally generated using a semi-but-not-overly complex system involving building density and zoning. For now I shall iterate on that generation, but later on, I’m leaning towards having the city as more of a designed element of the game. A city level editor at a later date would be a great inclusion, opening the game up to user-created cities, while keeping procedural cities as an option to the player.

I’m going to be pursuing that ‘optional’ design philosophy throughout the game. For example, all documents will also be procedurally generated and there for the player to read if they want to- but they don’t have to. The useful bits of information are summed up in a handy list-style subsection, and represented by visual icons (think if somebody has summed something up via bullet points). It’s really easy and digestible for the player– especially since the icons can link to another bit of evidence. Mouse over them and they’ll tell you the fact; “Joe Burns lives at 3 Cedar Drive”. Click on it and it’ll bring up the file for Cedar Drive (or Joe Burns if you are clicking on it from the Cedar Drive file window). But the extra detail is there for those that really want to get lost in the case- you can read the rental agreement between Joe and his shady landlord that the ‘fact’ came from.

I love games like Deus Ex and The Elder Scrolls games where, if you want to, you can spend hours reading books- or more typically notes and other forms of interaction between NPCs. The love of those moments is one of the reasons I decided on this idea as my next project, and I plan to fill Shadows of Doubt with the same kind of detail.

Shadows of Doubt DevBlog #2: Finding the Game

Shadows of Doubt DevBlog #2: Finding the Game

Shadows of Doubt is a detective management/simulation game set in a procedurally generated and fully simulated city. As head of the police detective department, it’s your job to organise your sleuths and track down AI serial killers before they strike again! Read previous dev blog entries here.

Hi all! In this 2nd development blog installment, I’m going to talk about the project’s development during the past year or so; the problems, how I’ve overcome some and am still battling others.

Truth is the development of this game so far has been tough. With most games you can develop mechanics and test them in a reasonable amount of time, from there you can start to hone and adjust until you have something playable. At this stage, you can be reasonably comfortable in what you have and proceed to add art, sound etc. With Concrete Jungle I had a pretty good prototype ready in a matter of months (admittedly after a long time trying different ideas), and something representing the final game quite accurately by the time I did the Kickstarter.

Shadows of Doubt has been much harder to develop because the entire premise of the gameplay hinges heavily on the integration of procedural systems. In order for the game to function as intended I need:

1) A whole city of citizens to play out their simulated lives. The game needs ways of ‘recording’ what happens, so the player can uncover evidence at a later date. I’ve got in-depth plans for this. The big one to tackle first being citizen memories/eyewitness accounts – who’s seen who, when, and where. This is actually a huge amount of data for the game to process, as it needs to record everything. 99% of the stuff it’s recording will never be seen by the player because chances are they have absolutely no reason to question Mrs Rogers, 83, living at Sycamore Terrace with her cat Percy. There’s probably no reason to uncover her credit card accounts or rifle through her trash. But the game needs to simulate it anyway because it’s all about open-ended possibility.

There’s that famous 3D open-world game notion; if you see a mountain in the distance, you can go there in person. In Shadows of Doubt, if you see a person in the distance you can go dig up a mountain of information on them.

The citizen simulation aspect of the game is working to a decent standard (this has been a large chunk of development time).

2) An AI killer to commit a murder -preferably with some kind of motive. They need to have some evasive ability (ie lie to cover up where they were should they be questioned). Right now nobody lies, so if you happen to question the killer, they’re like “oh yeah I was there, I totally killed them”.

3) A simulated citizen to find the body and report it. This one is pretty self-explanatory. Its initial implementation is basic and works about 75% of the time- because right now it’s possible that a killer will kill someone living alone (sorry Mrs Rogers), and nobody will ever find the body. In earlier builds, I overlooked that the killer could ‘find’ the body, which resulted in them reporting the crime as soon as they’d killed them. Combined with the inability to lie, this made for one very easy detective game!

4) It needs at least a semi-functioning management system where you can assign detective teams. This is where the player’s decision making starts to surface.

5) It needs an orders system which allows the player to interact with the world and the citizens. Eg. Questioning to see who a citizen has seen recently, where and when. Basically a way of gathering information, as well as other resources.

The classic evidence & string interface makes an appearance– just like in real life, it’s the best way to visualize connections. At the moment it’s a bit overly-complex and messy– it needs streamlining.

6) The game needs to introduce constraints and challenges to keep decision making relevant and interesting. This is something I’ve had to learn about through trial and error in previous game development adventures. Choosing who to question next doesn’t mean anything if you can just question as many people as possible with no consequences. Introducing constraints is the key to making those decisions mean something. The core one is time; citizens’ memories are constantly getting fuzzier, and public opinion may turn against you if the killer strikes again.

7) It needs a compelling hook to keep the player playing. In this case a progression system. Usually, the progression will work to ease the above constraints in some fashion, but in a way that makes progress feel real when in actual fact it’s more or less in-line with the game’s difficulty curve, giving somewhat of an equilibrium effect.

8) There needs to be peril. This is somewhat of a personal preference, but in most of my favourite games, there is always something important to the player at stake. Usually a risk of death of one or more characters that the player has been working hard to progress. In a game about catching murderers, it makes sense to have that risk of your agents dying- but the implementation is tricky since you aren’t directly controlling any combat/dangerous scenarios. One of my first instincts early in development was to have an ‘apprehend’ stage of the game where the aim was to capture the suspect- perhaps via a turn-based tactics minigame or similar. While that would be really cool, I feel like this is too big a commitment for an already ambitious project, so I’m going to have to find an alternate solution. I’m not sure what yet. Maybe the threat of citizens being murdered is enough. What I absolutely don’t want is have a risk of losing an agent without any input from the player- there’s nothing more infuriating than losing a favourite character because of RNG.

Once I have all of the above functioning, I have my game. It’s probably a bit naive for me to think this is as challenging as game development gets, but it sure feels like it!

It’s #7 that’s got me thinking recently- is the real hook of this game going to be the management-style progress system? Or is the hook simply the emergent story of the cases and ‘whodunnit’? Is it both? The plan was always the former, partly because even though procedural generation fascinates me to no end, I was not confident enough in it (arguably my implementation of it) to depend on it to tell compelling stories. Ideally, you’d still have fun managing your department even if some of your cases are super straight-forward and have no twists and turns. It’s still my plan to depend more heavily on the tried-and-tested mechanics of the management genre for the core experience, but as the emergent cases have been occupying so much of my time it’s impossible not to at least hope that they will add a lot to the experience. We’ll have to see.

Despite the above sounding probably way-too-ambitious for a small team, yet alone a sole developer, I’m having so much fun making this game! It is slowly getting there– at a snail’s pace, but it’s still going to take a little while longer before I’m truly glimpsing the light at the end of the tunnel in terms of playability. It’s more like everything is slowly coming into focus.

Til next time.

Shadows of Doubt: A Detective Management Game!

Shadows of Doubt: A Detective Management Game!

Hello everybody, I’m writing today to ‘unveil’ what I’ve been working on after Concrete Jungle. I write that in quotations because there’s really not much to look at yet. Truth is I’ve been working really hard to bring this idea to a prototype stage for the last year(!) That’s way longer than I wanted, but I think it’s worth it.

I’ve been working on a detective management game called Shadows of Doubt in which you deploy your agents to solve murder cases.

The city is procedurally generated, but not as you know it. Every street, every business, every citizen is different and fully simulated. They’re not just the mindless wanderers you find in most open world or large-scale games, nor are they static characters with a few canned lines to say. They have jobs, favourite places to eat and things to do, friends, relationships, enemies, and unique fingerprints. Within the myriad of simulated citizens is a killer- it’s your department’s job to find them and bring them to justice! What the game is essentially, is a very complex social simulation that happens behind the scenes, and an intuitive set of detective tools that lets the player interact with it.

Because every single citizen leaves a trail or where they’ve been, who they’ve been seen by and who they’ve interacted with, you’ll be able to dig into their simulated interactions at will. The game is capable of simulating 100s, or potentially 1000s of citizens!

My ultimate goal with Shadows of Doubt is to create a really engrossing, involving mystery game using a management-style progression system as a hook, as well as the emergent narrative of the procedural cases. Although the simulation behind the cases is extremely detailed and complex, I’m going to be working hard to keep the game as accessible and intuitive as possible. Some of my recent favourite indie titles have taught me how important having accessibility and clarity is.

The management mechanics lend well to this. Instead of searching crime scenes yourself, you’re a notch above; making important decisions like which suspects to question or shadow, which buildings to stake out and where to best spend this week’s department budget. As you acquire more evidence, you’ll piece together cases, eventually leading to arrests, and hopefully putting that killer away for good- and ranking up your agents in the process.

Your department is managed through a familiar worker placement system.

Your main enemy in the quest for ‘whodunnit’ is time; just like in real cases the first 24 hours is usually the most important. The evidence is constantly degrading, citizens are forgetting who they saw and when. Everything is becoming fuzzier- hindering your chances of acquiring incriminating evidence. You can pause the game at any point using the space bar, but orders and research will require in-game time. This keeps the focus is on your decision making, ratcheting up suspense while giving the player as much time as they want to make important decisions.

Pressure from upstairs will keep you on your toes. Progress on cases will bring rewards, such as cadets fresh from the academy or new upgrades for your department.

Each piece of evidence has an in-game folder/window. From this you can assign a detective team and queue context-sensitive orders.

Each piece of evidence can be assigned a detective team, which opens a contextual order tree. For example, if it’s an address you’ll get an option to acquire search access (failing that you may decide to invest in a costly search warrant). Alternatively, you could stake it out, or research its tenants or businesses. You can even research its security and remotely gain access to its electricity, phone lines, fire alarms or CCTV if your department is suitably equipped with the right tech. Each piece of evidence comes with a wealth of different options and approaches.

You’ll also have to balance public relations- releasing those crime scene photos could spur suspects to come forward, but at the cost of raising public panic: The case will be all over the newspapers. Evidence leaks could give the killer more information on how close you are, giving them a chance to avoid your agents. Maybe upstairs won’t be happy and may put more pressure on you for arrests or even cut your budget.

The classic corkboard and red string will be present to help visualize your active cases. I’ll talk a bit more about how the evidence systems work in future updates, for fear of this post running a bit long!

As you can see, the game doesn’t look like much at the moment- zero art assets have been done. So why start talking about it now? There are a lot of awesome looking detective games in the works as of late, and while I’m not in a rush to get to market, reading about them does make me want to share what I’ve been working on too. Even if it is just to get a foot in the door- or maybe an ugly grey prototype toe! Especially after a trip to EGX Rezzed last Saturday, where the indie scene looks as exciting as ever.  Starting over the summer, I’m going to be writing about this project more, and maybe even recording some development blog videos. I’m really excited to share the game’s development journey with you.

PS. Concrete Jungle fans fear not- I also have an update in the works. It’s taken me a long time because of my work on the above, so massive apologies about that.