• Register

Shadows of Doubt is a first-person detective game set in a procedurally generated and fully simulated city. As head of the police detective department, it's your job to organize your sleuths and track down AI serial killers before they strike again!

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

In this dev blog, I'll discuss the challenge of creating and simulating the population of the city.

User Posted Image

At the core of this project is the simulation of 100s of little citizens, all going about their daily routines. They all have jobs, places to be, things they like doing, and favourite places to eat and drink. Most of them will happily go about their day while you play, unaffected by the grisly murders happening elsewhere in the city. You'll likely never interact with 90% of them. Yet they're essential to the game because they are the hay in your needle-in-a-haystack search.

The average citizen currently makes to about 4 - 10 different journeys every day. A typical day might involve getting up and going for a coffee at the cafe down the street from their apartment before going to work. They'll have lunch at the pizza place in the shopping mall, then back to work. After work they may visit the local sports bar before finally heading back home, picking up some groceries on the way.

Citizens' needs for caffeine are actually simulated too!


Simulating 100s of the above would be a hugely intensive task for a system to handle in real time. That's why I've chosen not to handle it in real-time. Instead, the game needs a brief period of calculation time before the start of each day (typically no more than 10 -15 seconds depending on the population count). During this time their activities for the day are chosen and mapped out for them. This way I can have the number of citizens I want without it being too demanding on the system. Of course, they can deviate from this if the situation calls for it, and their altered routine can be calculated by the game in real time as there will never be more than a handful of citizens requiring deviations. For example, if they find a dead body in their apartment they may not worry quite so much about getting to work on time!

In addition to having a routine and places to go, they also need to record what/who they've seen. This is in case they are relevant to one of your investigations and you decide to question them. Most 'memories' the citizens form are sightings- these are triggered by a global check that loops through travelling citizens and checks if they can see one another:

User Posted Image
The green lines represent citizens seeing each other, the red ones means they have met/are familiar with each other.

Citizens can also see into windows across the street adjacent to their own if the light is on- this means in certain circumstances you may wish to question the occupants of an apartment in an adjacent building for example. It's systems like this that can help broaden the logical options available to the player, and hopefully makes the open-ended detective work satisfying!

Citizen memories start off by being pretty much 100% accurate, but over time they become fuzzier. How long memories last depends on a large variety of factors- for example, if and how well they know the other person, their visual distinctiveness, whether they were behaving strangely, how good the citizen's memory is in general (can be affected by age), and even the alertness level of the witness.

As memories fade, time accuracy is reduced up until the point the memory is lost completely, and therefore won't surface when you question someone. This creates a natural time pressure within your investigation- you're going to want to discover and question your witnesses as efficiently as possible so their memories are fresh in their mind and you can get the most accurate picture of what happened.

You may need to be wary. If the citizens know their presence at a certain place looks bad for them (they may have been near the scene of the crime and have no witnesses to back them up) they may actually choose to lie or bend the truth to avoid being treated as suspicious, even if they actually are innocent! Most innocent citizens will be more inclined to tell the truth however. Lying is whole other kettle of fish that I still need to explore in detail to find what works.

You're not always going to need to go to searching for witnesses either. After a press release and appeal for information, you may get witnesses reaching out to you. Spending more of your resources in getting the word out about your investigation may increase the chance of this. It's your case and it's completely down to you how you want to handle it! Freedom in this respect is this game's killer feature.

Shadows of Doubt DevBlog #7: There’s been a (Procedurally Generated) Murder!

Shadows of Doubt DevBlog #7: There’s been a (Procedurally Generated) Murder!

News

In the latest development blog I talk about the first character model, doors, and crime scenes!

Shadows of Doubt DevBlog #6: First Person Adventures

Shadows of Doubt DevBlog #6: First Person Adventures

News

In this week's Shadows of Doubt development blog I talk about the recent addition of a first-person camera, and its effect on the project so far.

Shadows of Doubt DevBlog #5: Pivot!

Shadows of Doubt DevBlog #5: Pivot!

News

There's been some exciting new developments with the project- including a switch to a first person camera!

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

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

News

In this week's development blog I talk about the creation of the UI.

Comments
Guest
Guest

This game looks super interesting, love the style! Yogscast brought me here too :D
I don't use this website or anything atm, what can I do to keep up to date on the development?

Reply Good karma Bad karma+2 votes
ColePowered Creator
ColePowered

Hi there! Thanks for the interest, there's a couple of places you can keep up with the development:
1) Here
2) My site at colepowered.com
3) This TIGSource thread: Forums.tigsource.com
4) On twitter @colejefferies or @detectivesim

Hopefully I should have a Steam page set up by the end of the year.

Reply Good karma+2 votes
Xairo_180
Xairo_180

Latest update looks great!... Regarding the crime scenes will stuff like blood splatter direction come into play and be an important aspect when regarding stuff like balistic investigation? By this I mean you can determine where the suspect was when someone was murdered or if they where even in the same room. For example there may be a glass window smashed from the out side (glass landing within the apartment) in one of the higher up apartment buildings and the dedudction from that would be the suspect shot from an adjacent building.

Reply Good karma Bad karma+2 votes
ColePowered Creator
ColePowered

Yes, this is exactly the kind of detail I want to simulate. It's not working to that extent yet, but definitely in regards to blood spatter etc that's the goal!

Reply Good karma+3 votes
Armadyllo
Armadyllo

This looks absolutely incredible! I'm super glad the Yogscast brought me here, exactly the type of game that's up my alley.

Reply Good karma Bad karma+4 votes
Xairo_180
Xairo_180

Hey I'm from the yogs too haha

Reply Good karma Bad karma+2 votes
Xairo_180
Xairo_180

I made an Indie DB account purely to express how incredibly excited I am for this game. A genuine procedural detective game is my dream gaming experience and your work looks fantastic. I'm in love with the art style and your current gameplay concepts prove you're going to take this project to great places. Keep it up!

p.s. The lack of combat was so comforting to hear, past detective games such as L.A. Noire where brought down by their lazy action sequences.

Reply Good karma Bad karma+2 votes
ColePowered Creator
ColePowered

Thanks Xairo! Very encouraging to hear :)

Reply Good karma+2 votes
Guest
Guest

I should probably mention the yogscast brought me here after their mention of your project at an event in Bristol.

Reply Good karma Bad karma+1 vote
ColePowered Creator
ColePowered

Awesome! I met with them last week, great guys!

Reply Good karma+3 votes
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Icon
Shadows of Doubt
Platforms
Windows, Mac, Linux
Creator
ColePowered
Engine
Unity
Contact
Send Message
Release date
Game watch
Follow
Share
Style
Genre
Stealth
Theme
Noire
Players
Single Player
Project
Indie
Twitter

Latest tweets from @colejefferies

RT @ladyhaja: One of my favourite animal facts is that koala fingerprints are so similar to human fingerprints that they not infr… T.co

20hours ago

RT @Oniropolis: Buffalo Central Terminal, 1929, as depicted by J. Floyd Yewell. T.co

Sep 17 2018

You can now research building blueprints to add missing floorplans to your map. Gameplay mechanics are slowly but s… T.co

Sep 17 2018

Concrete Jungle shoutout by the always great Crate & Crowbar podcast! And @Pentadact explaining the versus mode mor… T.co

Sep 17 2018

RT @cath_slessor: Employee swimming pool at the Spiegel publishing house Hamburg, 1969, by Danish designer Verner Panton, who was the… T.co

Sep 17 2018

Part 8 of the Shadows of Doubt development blog about simulating an entire city of inhabitants!… T.co

Sep 15 2018

RT @fsparise: 'NY House' by James O'Brien T.co

Sep 15 2018

RT @detectivesim: Building furniture in voxels is fun! #gamedev #indiedev #voxelart T.co

Sep 14 2018

RT @BenKBritton: Today's the day- #LamplightCity by @GrundislavGames is now available!! So honored to be part of this incredible ga… T.co

Sep 13 2018

I've spent most of this week making a new map overlay that you can bring up at any time, and that you can also plot… T.co

Sep 13 2018

Embed Buttons
Link to Shadows of Doubt by selecting a button and using the embed code provided more...
Shadows of Doubt
Statistics
Visits
875 (1 today)
Last Update
Watchers
7 members
Articles
8
You may also like