First person is the right style for this film-noir detective game
TheWinslow's Game Project
Posted 30 August 2014 - 09:08 AM
First person is the right style for this film-noir detective game
I thought so too! It's just something that I had never seen before in a game so I hadn't even thought to do it that way. I'm also thinking I'm going to skirt the line on being a parody with some of the comparisons the "hard bitten detective" will make (hence lines like "a rat and spider had mated").
Edit: Obviously it has been too long since I played Max Payne. Those had such a great "hard boiled detective" narrative. Very similar to what I am going for.
Posted 30 August 2014 - 03:57 PM
I have a question for anyone still looking through this thread. I've been debating how I want my clues to work. There are two basic options now if you get wrong information/not enough information. I can have you find it somewhere or I can have you fail the case.
There are pros and cons to each option of course.
If I take the route that you can always continue without trouble, it would play like L.A. Noire where you can't ever actually fail (all you get is a lower "score") so a huge amount of the tension you get when finding clues/interrogating people is destroyed. Who cares if you mess up if you can never fail?
However, if I take the route that you can fail to find enough/the correct clues it can become extremely frustrating, particularly if that means you have to replay the level/restart the game (being able to go straight back to the boss dialogue would also take away any tension from the interrogations after all).
I was also thinking I could do a hybrid of the two. Where you can sometimes find the correct clues, after you fail an interrogation/kill the boss, by searching the boss' room. Of course, I think that would have to be accompanied by a "timer" where any enemies still alive in the level will be alerted to your presence, if you or the boss fires a shot, and come to kill you. You could also fail to find correct information or be led astray if one of the mob bosses lies to you about where to go next. This would lead you to a new level (probably a shortish one) where you would fight through a group of enemies to find out you had incorrect information. At this time I could have it so your cop buddies call you to inform you that they found some more information that may help you out or I could send you back to the previous boss to get the actual answers this time.
This last method has the benefit of punishing the player for failure without requiring that they replay the same level over again.
So, what are your thoughts on the matter?
Posted 31 August 2014 - 07:56 PM
I feel like a hybrid would work just as well. Just a suggestion though, is it possible to have the mistakes of one mission effect the outcome of a later mission?
It is possible for me to have mistakes influence later events but, as with everything, that will add to the complexity and time it takes to develop.
I was thinking that there would be small changes that I could add. For example, if you promised to spare a boss but had arrested/killed all previous bosses he would question you about them. You would have the option to try and convince them it wasn't your fault (by lying) but depending on how good the boss is at detecting lies and what percent of bosses you took down, it could turn out badly for you.
Other changes could be something where you face more enemies in a level if you have murdered your way through previous levels (as mob bosses would catch wind that someone was wiping out their operations and try to do something about it).
No promises though. I'm going to get the rest of the game together first.
Posted 04 September 2014 - 02:44 AM
Menus suck. Allowing you to select custom resolutions sucks even more. RAAAAAAGE! Sorry, been working on this for 3 days and it's only now starting to work correctly.
But seriously. I have it set up so that custom resolutions now work. You can now switch between different resolutions and it will work correctly (only by altering the config file currently, should have it possible to alter it via the menu tomorrow). 4:3, 16:9, and 16:10 resolutions from this page are now supported (the 16:9 resolutions at the bottom of the table are not going to be options while the almost 16:9 resolution of 1366x768 is included).
Here's the joyful whack-a-mole I played with the bugs:
It was quite the process. I initially had a good system set up for a single resolution (the one I showed in the video plus the mouse support I added later). The problems started arising when I started to change resolutions. First, the mouse stopped working correctly (the mouse position and menu positions were offset which made using the mouse annoying and worthless). However, once I fixed that I found that the resolution wouldn't scale correctly when switching between 4:3, 16:9, and 16:10. So I spent a while fiddling with that, which of course broke the mouse support again. Got that fixed, which broke the resolution. In trying to fix that I broke the mouse without fixing the resolution problems. Of course, this doesn't show the sheer number of completely useless changes I made before fix/breaking (fireaking? nah, fire a king is bad...fiking? Close to a curse but it works) things.
Then I realized that fullscreen and windowed versions were not the same, i.e. the resolution wasn't scaling properly when fullscreen. So fix that and mess up the mouse and windowed resolution (after some back and forth trying to fix stuff). I finally got all three working when the lighting now breaks (normally that only happened when trying to change the resolution after it had initialized).
End whack-a-mole story.
Luckily, along the way I also fixed a particularly nasty bug that would cause the game to crash if you switched between fullscreen and windowed or resized the window while the game was running with my custom lighting (a single letter typo in 2 variables. Wanted view_hview but typed view_yview, same for w and x). Actually, that was the only actual bug I had currently (as opposed to unfinished features that make it look buggy).
I also changed it so you have to be facing a door to actually open it or peak through the keyhole (and also improved the really crappy code I had there before).
Finally, the dialogue system is fully realized. It's complicated but allows me to do a lot. I will have a bit of a demonstration when I finish off a few branches. When I get the menu done (and finish the little dialogue I put together) I may release the test game I have so far. Just so you can see how it looks and plays. It's very rough though so I'm not sure.
Posted 05 September 2014 - 12:04 AM
Graphics menu is now operational (you can change resolution, brightness, AA, fullscreen/windowed, and vsync in game). I'm now working on creating a dll so that I can add a borderless windowed mode.
Particle effect options can cycle but don't do anything as there are no particle effects.
Posted 08 September 2014 - 02:43 AM
The settings and menu are pretty much complete (though no borderless window yet). It took a long time to make it so the menu scaled properly without causing blurred text/incorrect placement. Currently it just draws text, but the code is set up so I can fairly easily adopt it to draw something that actually looks good.
The noticeable additions since last update are the ability to change the main volume, music volume, and effects volume. You can also rebind keys.
Posted 08 September 2014 - 06:45 PM
Here's a quick video showing off the new settings as well as the start of adding noise detection to enemies.
Edit: I should have a little surprise for you guys in a little while. Stay tuned!
Edit2: Or not. Gamemaker has decided to be really pissy and doesn't want to load an ini file. Maybe tomorrow. Testing if my entire project is corrupted or if Visual Studio is bugging out or if there is something in the ini that it doesn't like.
Edit3: Yay! A new error! This one I have seen before!
Edit4: Errors are gone! Now I am where I thought I was 2 hours ago when I made that first edit.
Edited by TheWinslow, 09 September 2014 - 12:32 AM.
Posted 09 September 2014 - 02:45 AM
Alrighty. So the surprise is that I have uploaded the test room that I have been using. There are 3 enemies and a boss. The enemies are the red guys, the boss is green. You can shoot him on sight if you want, however I would recommend you walk up to the front of his desk.
The upload is a .zip, chrome thinks .exe created in gamemaker are viruses and stops you from downloading them. Also I created an .exe of the game and it opened 20 instances of the game without actually loading anything. It got stuck in an endless loop of opening and I had to log out to close them all. Don't worry, doesn't happen with the .zip, I checked.
You are going to run into a "few" bugs:
- The lighting is glitching with flashlights (I actually figured out why now, but it is a pain to fix and I'm freaking tired right now) so you will see the lights shine through doors and have weird wall shadows sometimes.
- Enemies don't open doors.
- You can get stuck in doors if you are "in" them when they open.
- You can't change the keybind for the flashlight (it's 'L') or to peek through keyholes (it's 'Z' to do that).
- You can't use the mouse for when the keybind is already set to a key and vice versa (e.g. you can't change melee from the default 'v' key to mouse 2, it won't work if you do).
- The default keybinds are terrible. I added them as I kept adding new abilities so they make absolutely no sense (I think E, R, T, Y, G, V, Z, and L all have a use). I would recommend checking the settings. Though, unlike SC, at least I have the ability to rebind keys .
- There is no "success" state when you "beat" the boss dialogue. It's also really short currently. If you finish the dialogue and the floor looks all grey and wavy you have "beaten" the boss (if you fail the game will have the normal "wood" background). If you want you can shoot the boss after you "win".
- On lower resolutions the dialogue responses can overlap.
- When switching between fullscreen/windowed and switching resolutions, the menu sometimes gets messed up (draws incorrectly). Just go back into the graphics menu and exit back out of it and everything should fix itself. If you can't navigate the menu, quitting and restarting will work (you can alt-tab out and close it).
- If you go from the game back to the main menu, the music won't stop. If you then click start/continue game again (they are functionally the same button with no save games and only one level) the music that was playing will continue and another track (same music, there is only one right now) will begin to play. You have to quit the game to stop the music.
Things of note:
- There are a total of 8 unique dialogue screens currently. In those 8 states, 2 responses (of 16 total in all screens) will lead to the "win" state.
- You navigate the menus using the keyboard or the mouse. For dialogue, you currently can only use the up/down arrow keys and enter to select your response.
- You have 5 total hp. Each enemy has 2 and the boss has 3 (though he currently doesn't attack if you "fail"...just stands there doing nothing until you shoot him).
- The enemies can walk through windows, desks, and doors. Only walls stand in their way! They can't see through walls though.
- The melee enemy is completely harmless. If he manages to kill you, congratulations! You managed to die to an enemy that is incapable of damaging you.
- There is a rifle just inside the first door on the ground. It's worthless. There is currently no difference in accuracy or damage between weapons and it fires way slower than your revolver.
- You and the enemies have limited ammo (and an empty weapon that is dropped is still empty).
- You can't drop your primary weapon (the revolver you start with). Do you want to leave your personal revolver in a mob stronghold (yes, stronghold...with 3 guards)?
- Movement is janky. Walking is too slow running is too fast (L shift to run). But unlike in the Escapists you don't go faster when you run diagonally (I fixed that today!).
- If you want to reset the room, use 'P'.
I think that's it. Oh:
The music: 'Rollin at 5' by Kevin MacLeod (incompetech.com)
If you need royalty free music it's actually a great site. He has released all his music under the CC license. As long as you give credit you can use it however you like.
I guess I should mention the gun sounds are from The Free Firearm Library (freefirearmsfx.com) so that is a Ruger Single Six that you hear when you fire the revolver and the M1917 Enfield when you fire the rifle.
Now I gotta sleep. Enjoy the buggy, unfinished mess!
Posted 09 September 2014 - 11:34 PM
Awesome. I'll check this out later. Btw, I use Kevin MacLeod's stuff in a lot of my videos. We have a ton of his work in our Romantics web series too.
Well I hope you enjoy it, though it can hardly be called a game at this point. Pretty much everything is just a shadow of what it will be. The thing that is closest to what it will be in game is actually the dialogue (which is why I recommend not shooting the boss until after you talk to him).
It's also what was causing all the problems in my earlier posts. I was completely reworking the text files that hold the dialogue which means I can create the entire dialogue for a boss in a single ini file without needing the bulky and extremely time consuming code I had before. I need to stop having epiphanies on how to improve things/how to do something late at night. I haven't gotten to sleep before 3 in weeks now because of this.
I'm actually at a point where a basic form of everything I need for the game is actually created. Now I just have a long process of polishing everything ahead of me. There are still features to add (e.g. expanding the AI), but nothing that is a core thing I need for the game. Particle effects are really the only thing I haven't touched on at all.
Unfortunately there are so many things I need to do I'm not sure what I should/want to do next...first time this has happened with this project too! I'm thinking AI needs a lot of work so that will be the next task though. Unless you think I should focus on another area first after playing it!
Posted 14 September 2014 - 01:38 AM
This may not look like much, but it is a massive improvement to enemy AI. Enemies no longer overlap when chasing you. It's still a buggy but it makes things so much better.
Those numbers on each of the enemies is the "alert_scaling" variable that I am currently drawing to make sure it works correctly for debugging. Since it is 2, they currently have twice the noise detection and view distance than they have in the base "idle" state. Breakdown of the scaling:
- Alerted and Attacking are double baseline.
- Guarding and cautious (seen something that might be suspicious but unsure) are both 25% larger than baseline.
- Suspicious (knows something is probably wrong, but not sure exactly what) is 50% larger than baseline
- Retreating and Idle are at baseline.
From what I have seen, everything works correctly. Breaking windows and firing weapons alert nearby guards (a gun alerts them to your position and sets them to alert state while breaking window sets them to suspicious and has them investigate the broken window).
Posted 16 September 2014 - 07:51 PM
Looking good, I'm not just saying this because I like you, but I'd buy this based on what I've seen so far.
Well I'm glad to hear that! Thanks! I should manage to give a few copies away to streamers I know though...
I also have a couple updates for today. First is a video showing the improvements I have made to the audio. Sound now fades as you get further away and you can also hear which direction the sound is coming from. It also shows changes to AI, so you can see enemies actually open and close doors! You can also see that enemies no longer collide like I showed in the screenshot in the last post.
I also made a video showing a bit of the dialogue system and explaining some of the ideas behind it. If you tested the "demo" I uploaded, it isn't any different from that.
Posted 23 September 2014 - 09:48 PM
A couple new things! First, I did something with the AI...I kind of forgot what it was though...Oh yeah! I made the first steps so that enemies actually search for players! They will move to the player's last seen point (or the last point they heard a gunshot come from) and look for any nearby doors (in front of them). If they see a door, they will walk into the middle of the door frame and then stop and never move again at this point. I don't want a stealth system where the enemy will walk 5 feet forward, then back, and forward, and back, etc until they decide the person who just shot them with an arrow was "nothing" (just happened in Skyrim to me).
The second thing is I have been working on some more art assets. I'm reworking the player a bit, little things at a time so nothing really to show yet. I also decided there needed to be a better enemy sprite and here is the first sprite for a lowly enemy! Hope you enjoy it! The hat brim has grown a bit since then as you couldn't see it even if you squinted when it was placed in game as a 64 x 64 sprite. Here is how it looks currently in game.
I was looking at some of the old screenshots of the game recently. I'm surprised at how much better some lighting, color tweaking, and sprites make it look!
The other bonus is that this sprite took me at most an hour to create. Now I have an approximate body size, I can tweak body size and color a bit to get what I want. After tweaking the color and size, I just had to create a new hat, roll up the sleeves, and add some suspenders for this one!
Posted 28 September 2014 - 07:34 PM
Most of my recent work has been with polishing the game and completing a bunch of incomplete projects.
Things I have completed/gotten working a lot better:
- Flashlights no longer shine through doors when enemies stand right next to the door.
- Players and enemies no longer get stuck inside of doors...except in rare occasions (this is only when doors are open/closed, when moving the doors have no collision detection, made opening/closing doors really annoying when I did it that way...there's a reason many games have doors always open away from the player).
- Enemies no longer find doors suspicious when another enemy opens that door.
- Enemies no longer find doors that they have opened suspicious.
- Updated the grid for the A* pathfinding so it fits with the larger sprite size I am using now (enemies will no longer walk with half their body in a wall...usually). Though this has given enemies intermittent power to walk through walls.
- If you hold down the button to peek through a keyhole, you can now move around and still look through the door.
- Enemies now patrol with the ability to avoid other enemies who may cross their path.
- Enemies no longer teleport to their spawn point when they see a door is open/closed when it shouldn't be.
I think that is everything I have fixed up so far! Of course some fixes have highlighted other problems that I now need to handle (damn enemies walking through walls).
Posted 05 October 2014 - 01:38 AM
For today I have a few new bits of polish (screenshots and maybe a video to come tomorrow).
- I created the first of my tiles to spruce up the dark, dirty alleys you will spend some time in.
- First is a new dumpster sprite. Spent a lot of time getting it to look right, but I think it may be a bit too dark.
- Next, I have a puddle, a bunch of newspapers, and a crack.
- I also created an object whose sole purpose is to select a random tile from the puddle/newspaper/crack set and draw it (before the object deletes itself).
- I have 4 separate tiles for the alley ground. They are all dark grey with darker grey accents to help give a bit of depth. I created them so they will all match up without any annoying looking seams (cheery!).
- I started on the new revolver sprite, designed to be a Ruger Single Six with the 4 5/8" barrel. Of course, in game it loses all the detail that I put into it (it's 4 pixels wide in game, not much I can do there).
- I started on a new player sprite for when a rifle is equipped. No more magically levitating the rifle in front of the player! Of course, I haven't created a corresponding sprite for the enemies so now they have rifles growing out of their chests.
- I tweaked the placement of weapons in game and changed how they are drawn so it looks like the player actually holds the rifle and revolver.
- I tweaked how the weapon object turns with the player. The rifle and revolver will no longer "jiggle" as the player turns.
- Enemies are less likely to get stuck in an empty doorway and "vibrate" each time they hear a shot. It still happens, but I think (hope) I know the culprit for that. Stupid new search AI introducing more bugs to fix.
- I have a tentative design for the tutorial/intro level to the game. Nice and short, based on a real block in NYC, and will let me show off all the mechanics you will need for the rest of the game without taking a lot of time or being really in your face about it (you can also ignore the hints and do whatever you want to as well).
- My fiancee and I managed to be placed one or more watchlists since she has been researching violent serial killers (for grad school) and I have been searching alleyways, various firearms, and used a block of NYC that had a bank on it as inspiration for my tutorial level. Oh, and searching for mobsters for inspiration from pictures and names.
I think that is all I have done since the last update. The artwork isn't as annoying as I expected it would be (I figure the cutscenes/dialogue images will be a bit more of a pain). The level design and the story are my main blocks right now actually (I could actually start putting together levels at this point if I knew what I wanted to make).
Posted 09 October 2014 - 01:10 AM
I finally got around to having enemies search more than just walking to a nearby doorway in front of them. They now move to various points scattered across the level. I can set exactly where these points are when I create the level as well, meaning I can tailor each level for difficulty and make sure that when enemies are alerted they do a thorough search of the area.
It also has the capability, with pretty minimal coding changes, to allow for custom difficulty (something that I have kept in mind when designing a lot of the AI, even though I may never add it).
2 user(s) are reading this topic
0 members, 2 guests, 0 anonymous users