[Project] Murder at Midnight
  • Gudday!

    Started a new side-project a week ago. Thought I'd jinx it by announcing it. :) Here goes...

    In 1990-ish there was a murder mystery game on the Amiga called "Murder". It was the normal Agatha Christie type setup: guests in a mansion, someone gets murdered, and for some odd reason you have to solve the murder before the police arrive by questioning guests, looking for clues, dusting fingerprints, etc. There were a set number of mansions to choose from, and murders were randomly generated.

    Loved the heck out of this game, always thought I could do better, now trying to do so.

    I provisionally named it "Murder at Midnight", and then found a 1939 film, as well as an old-timey radio show both with that name, and both with lapsed copyright. So I figured hey it's good material, and am going to be pilfering from those liberally too. Will this streak of originality never end ?!!

    Evidently not! Another game I'm drawing inspiration from is the classic Murder on the Zinderneuf. Murder everywhere!

    5a069ef0f31f5985b1c84b8ed611c7.jpg

    How it's different to the thing I am cloning:
    - The original Murder had a fingerprinting system, but I've decided that mine should be more character-oriented. More Poirot, less CSI.
    - I'm going to go for more complex motives, and more complex murder setups loosely based on common mystery tropes.
    - Dynamic flavour text. The original Murder was quite flat. "Just the facts."
    - Red herrings and liars. Murder's guests were mostly just a tad too honest.
    - Additional random events. Perhaps in some cases a chance that the murderer could strike again.

    What's working so far:
    - Procedurally generated (with seed) guests and staff. I want any "random" murder setup to be 100% reproducable by supplying a seed and guest count.
    - Modular mansion. I have a room prefab, and can generate a mansion out of a simple data object.
    - Basic point & click walking mechanic.
    - Guest placement at time of murder.

    How it will work:
    Guests are generated and scattered around the house at the time of the murder. The murder victim and murderer are set up with means, motive and opportunity ("MMO", lol). A history is then generated backwards from the time of murder to the time the party started, so that every guest can be questioned about what they saw and when. This same logic will then be used going forward from the time of the murder until the body is discovered. From here the game becomes realtime. The exact same logic that generated the history is now used to manage the guests' movement, except now you are interacting with them.

    Time management
    This game is an exercise in time management. By the time I get home in the evenings it's too late and I am too tired to get much done, so how I am managing is thus: I do my thinking/planning before I get home. On the train, in the car, in my head. So when I sit down to develop, I don't have to think. I'm also forcing myself to spend no more than 2 hours an evening on it. I set a specific goal for myself, small and manageable. For example, the last one was simply "Make sure random guest placement skips the room in which the murder takes place". (this turned out to be a 10 minute task, but hey whatever - it's done :P)

    I'll post screenshots as soon as I have anything a bit less placeholder-ish.
    murder.jpg
    1023 x 603 - 71K
    Bc_vTSNCIAAT5DF.jpg
    1024 x 576 - 22K
  • I like this idea - it's like a boardgame almost, like Betrayal at House on the Hill or a more complex Clue or something - I used to read these manga (金田一 and Detective Conan) that very much elicited a cool discovery. Heck I remember playing Eagle Eye Detective (especially the London one, I loved that).

    With real time systematic interaction? Whoa!

    Looking forward to the game itself :D
    Hearted by 1iceblademush
  • I had this game as a kid called Midnight Party. I dont remember much about it other than the setting - a party at midnight in a mansion where a ghost comes out of the cellar and starts 'scaring' the guests - but the board artwork was awesome.

    Could add an interesting slant if you dropped in a hint of the supernatural into your plot...
  • Nitrogen - there's no fixed plot per se, just setups based on some common tropes. The particulars are procedurally generated. And yeah I think I would like a few that incorporate ghosts/cults and the like. The system lends itself pretty well to a functional time-travel mechanic too.
  • Tuism wrote: »
    With real time systematic interaction? Whoa!

    Haha, it's not a very complex system. There's a logic-tick that runs at a predetermined pace, and for every NPC on every tick it has the following basic inner monologue:

    Am I done with what I was busy with yet?
    Yes:
    What new task should I have? (leave, stand around, have smoke, find someone to chat to, etc.)
    How long will this task take me?
    Did I encounter any divergent incidents during this tick?

    No:
    Carry on

    If you chat to an NPC the timer deciding how long their current task is will be disabled temporarily. And since all decisions are procedural, the sim will play out in precisely the same way every time, unless you butterfly-effect things by talking to people.

    The NPC inner monologue sounds like a Scrum standup meeting. :/
  • Yeah you *say* that it's not as complex as it sounds, but it *is* because you gotta write all those possibilities and script each character's default behaviour track and balance it and find out if they interact correctly etc etc etc.

    I get it in theory but I'm sure it'll be awesomely complex :) Cooooool :)
  • The NPC inner monologue sounds like a Scrum standup meeting. :/
    Hahaha!

    This game sounds great! Best of luck!
  • UPDATE:

    Coming along nicely. At heart the game is basically Data Mining: The Game so most of the work thus far has been about generating a believable history of events. Since the same logic is used for the history generation as well as the real-time sim, most effort has gone into the latter.

    Working now:
    - Boredom sim - Guests will wander around between rooms, and there's place for all kinds of "what shall I do next?" logic
    - Witness accounts - System records every detail witnessed by every guest, and you can click on them to query the full list

    Taking a slight detour now to work on some UI/Graphics stuff. The look I want to go for is like these book covers: http://i.imgur.com/WzbqP1q.jpg
  • This game sounds pretty damn awesome actually :D
  • Girlfriend perspective: it's amusing hearing him talking to his (random-generated-ly named) characters; cursing them if they don't do what they were supposed to and congratulating them if they did. :p
    Hearted by 1JediN1nja
  • Just like teh Sims :3
  • I really like this concept.

    Your statement... " Perhaps in some cases a chance that the murderer could strike again." this was the most powerful sentence to me. A murder that happened is nowhere as interesting or terrifying as a murder that could still happen (especially if it impacts the investigation). The possibility of the murderer killing a vital witnesses making solving the murder harder appeals to me or maybe even the player if he/she messes up badly. I sincerely hope you explore that further. I love the randomness (replay-ability and unpredictability is a good thing) and backward generation of the story/history.

    This is a great concept you got here.

    I loved reading those"Choose your own adventure" books and would like to see a branching mechanic where there are multiple paths to success and failure. Where you only have yourself to blame for jumping to the wrong conclusions and letting the murderer get away. With appropriate gory animation adding salt to the wounds of the would-be sleuth of course ... :-)


  • @konman I'm hoping that I don't need to script in much branching and the systemic nature of the gameplay will take care of any such emergence automagically. There will be some predefined types of scenarios though. A normal murder, something a bit more Lovecraftian, multiple murders, etc. A lot will be loosely based on existing murder mystery story tropes.
  • Wasn't really planning to get into the art before nailing the simulation and gameplay, but hey whatever - here's an early art/shader test with meshes created by @iceblademush

    d89317871958f7b8319d2dc4ebb996.png
    arttest.png
    1193 x 671 - 133K
    Hearted by 1Tuism
  • Dude, if this is your art, I cannot wait to see the simulation and gameplay. Hell, I feel so inspired by the ambiance I just might head on out early morning (11.55am) tomorrow to CNA just to find a copy of Cluedo and challenge my girlfriend to a Saturday night of murder mystery clash of brain cells. I know I'll win. It's always Miss Scarlett. Just like the colour of blood.
    Hearted by 1Nitrogen
  • such l33t skillz :O I'm in awe :O
  • Another art test. We're getting closer.

    939c089cea2419a30bd3eb5c5d2956.png
    arttest3.png
    1212 x 693 - 695K
  • Well poo, yet another one:

    http://www.rockpapershotgun.com/2014/02/14/noir-syndrome-is-a-procedurally-generated-murder-mystery/

    Oh well - I'll just have to make sure this one is extra-awesome then! :P
  • This looks really cool. I've noticed your last post was a few months back though. How's it coming along?
  • For now this is a side project only. I'll give it more attention once our main one hits Steam/Humble/etc.
  • What's your main one? This one looks great!
  • @Denzil, I think it's Maker's Eden that is the main project they're working on. Please correct me if I'm wrong @rustybroomhandle.
    Hearted by 1Denzil
  • Yup, that's the one. Tiny little game, but finishing is hard! :)
  • Yeah I remember seeing Maker's Eden at a CPT community night sometime last year - the style is really,really interesting...
    Reminds me off Heavy Rain with some Bladerunner mixed in...

    I see you guys are 99% done...Deadlines? Don't you love the whoosing noise they make as they fly over your head? :)

Howzit, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!