Shadows of Doubt DevBlog #6: First Person Adventures
Shadows of Doubt is a first person detective 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.
This week has been hugely productive– following on from last week, I’ve implemented basic interiors so you can now go inside every building (complete with stairwells). That’s not to say interiors are anything like complete- there’s no furnishings, doors, or really anything of note, just rooms decorated in a sickly green striped wallpaper. However, the rooms even existing in 3D space is a nice milestone.
I’ve had to start thinking about the culling techniques for the game, as the game can’t possibly render every single room in every single building across the entire city at once. I’ve been able to appropriate my pathfinding/grid system to help me here, as interior space configurations are massively simplified by being on an internal 5×5 grid system, it’s able to help the engine know what to render and what to skip. The streets are rendered from inside a building, so you can see out the windows, but not vice versa. The only exception to this rule is the ground floor, which is rendered at street level, so it’s possible to have things like shop storefront windows which you can see into and out of. I’m happy with this compromise as it’s generally pretty tough to see into a window above the ground floor if you’re in the street.
After my graphical production spree, I’ve now settled back into coding the gameplay. The main reason for this is to get something at least semi-playable I can demo pretty soon. I’m finding the pieces are finally fitting together a little more. The complete simulation of detective cases gels well with the player being an active character in the world. For example; don’t want to spend several in-game hours dusting the crime scene for prints? No problem- just leave it to your other detectives while you track down a lead.
You might, want to question the prime suspect, but also canvass all of the neighbours to leave no stone unturned- again, not a problem, just leave the boring stuff to your minions! If there’s nothing for your other detectives to do, that’s not a problem either- they’ll sit back at the office and generate ‘paperwork’, which is a resource you need to unlock various orders (for example obtaining a search warrant).
Essentially it’s going to be a first-person detective game which allows the player to focus on the more interesting side of detective work. It’s also going to be possible to do the opposite and be the one sitting back at the office, passively generating the paperwork resource, while you simply order your detective teams to do everything.
I’m going to draw a line at combat though. Stealth, sneaking about and tailing suspects are definitely on the cards, but combat not so much. If I do ever decide to explore it, it would be a minor part of the game, so just to reiterate- this isn’t a shooter.
One decision I’m stuck on is what to do with the old default view; the isometric camera. As you can see below, the game looks great from this view, but sadly I cannot find much of a practical use for it. Currently, it’s been taken out- the first person camera being essential for exploring, while the top-down camera is better for navigation and a general overview of the city. You can switch between them seamlessly with the F key. What the top-down camera can’t do, however, is differentiate between different floors in a building. This could be where the isometric camera is useful.
Lastly, with the focus now back on gameplay, I’ve been working on a first-person object interaction system. I’ve taken some inspiration from the original Deus Ex and System Shock here, as I’m sure anyone familiar with them will no doubt recognize. Maybe it’s my own nostalgia, but in my opinion, it remains the clearest graphical way to interact with the game world. Not having a first-person weapon to design around frees up both mouse buttons to become available for world interaction- I’ve not quite figured out the rules for this yet, but it gives me some freedom in that respect.
In the week ahead I’ll be continuing to evolve the gameplay. My first gameplay milestone involves having the AI killer murder someone, have the crime be reported, and then for the player to be able to visit the crime scene and find various bits of evidence.
8 thoughts on “Shadows of Doubt DevBlog #6: First Person Adventures”
I just wanted to say that I am really looking forward how this ambitious und unusual game will come together!
From Concrete Jungle I bounced off a bit, maybe because I liked the pure simplicity of MegaCity (back on the Xbox 360, ol’ times) so much. 🙂
Thanks! Awesome that you’ve been following all this time 🙂
Just discovered your new project recently, looks really promising. Love the voxel style and your UI looks already better than everything i’ve done so far… 😀
Isometric view looks awesome! Try to find a way to keep it: overview map, fast travel, some kind of event feedback when a crime happend, or just as scrolling background for menus. I guess it’s not yet optimized in terms of draw calls, would it be an issue?
I’m working on a quite similar project, just the other way around: a crime career as a burglar in the manner of “The Sting!” . But my progress is quite slow with a full time job.
I’m also planning to have a whole city and was thinking of a procedural approach, too, in the beginning. But i feared it to be a bit tedious after a while and not challenging enough (different entrance approaches, guards, security measures, switches).
But could work much better for your concept, i’m eager to see your progress. You already inspired me for some stuff, the evidence system is really cool.
Will try to stop by frequently, nice work so far!
Awesome, thanks! The Sting sounds interesting, do you have a twitter/devlog I can follow? I think procedural can indeed be a challenging or risky choice for fear of it becoming too mundane. I’m hoping good AI from the serial killer will keep things interesting though. We’ll have to see how it plays out.
I postponed twitter and devlog stuff, until i’m up with the core mechanics…takes already a couple of months longer than expected. Even my friends don’t know what i’m up to. It’s silly, i know. 😛
I’ll try to change that and will let you know. Would really appreciate some feedback from you.
Hey again. I spent some time setting up a blog. Thanks for your inspiration. Join me on Twitter @fanzygames
your new project seems very interesting and original!
I have discovered your blog recently when I was checking if Concrete Jungle would receive a patch anytime sooner or later (I own both the PC and iOS version, so you can call me a fan 😉 ).
I will closely follow your blog posts.
Yes I have one in the works- it’s taking far longer than anticipated mostly because I’ve diverted a lot of my efforts recently towards the new project.