[Comp G] Nocturne
A nocturne (from the French which meant nocturnal, from Latin nocturnus)[1] is usually a musical composition that is inspired by, or evocative of, the night.
We spent a long time going back and forwards with ideas around using sound waves and ripples as a game mechanic. One thing that stuck, and is a very interesting area to dig into is what it must be to be blind.
At first I played with a basic ripple simulation, where the red cube sent out waves of ripples, visualised by thousands of cubes moving up and down

Then played with colors

I then got dynamic obstacles working, and the ripples interacted with walls, blockers, and each other

(note: The gifs below are pretty crappy, rather click on the link to watch the html5 video)
I decided I needed a more efficient way to both visualize and render what I was doing, so changed to effecting color based on wave height
https://gfycat.com/AppropriateFlimsyAmericankestrel

The way I was doing it meant that to make it look unpixeley, I needed to process more data, which I couldn't do without killing the CPU. Instead, I played with keeping the source data small, and blurring the visual
https://gfycat.com/IncompatibleElectricChuckwalla

Back to mechanics, we were talking about how our blind character would make their way around the environment without being able to see. The answer is that they can "see" sound. This means that where there is a wall, they don't see the wall, but they see the sound stopping. In this gif I show sending out a single wave, and then multiple to show how it effects visibility. We could allow the player to send out waves as they like, but if they create too much sound they'd alert enemies.
https://gfycat.com/AchingSpectacularAmericancrayfish

At this point we knew that we needed to decide on how the actual game would be played instead of playing with ripple simulations.
That is when we decided to switch to first person. Things would be visualized in the same was as before: player can "see" sound waves, so anything that makes a noise will send out waves.
We discussed how that would all work, and I pulled this from one of our skype conversations:

Green dot is player, red is enemy, and the enemies heartbeat sound sends waves out letting the player "see" the enemy behind a wall. The reason I post that ugly image is to make this next gif make more sense. I've found that when I'm using the mouse it is easy to see what is going on, but not knowing how the player moves makes it quite hard for a bystander.
In the gif I start at the green dot, and go around to the enemy (who has a table next to him)
https://gfycat.com/LongWhiteKob

Now that we know more how the game is going to work, Brandon writes up some story.
The game starts as you get out of a taxi.
Yay, time to make a taxi out of cubes, and see how it looks in sound.
https://gfycat.com/MiserlyRapidBinturong

Lets get some streetpolls and roads in
https://gfycat.com/DefenselessNeatFluke

And finally, when the player turns around I places an enemy with heartbeat on the park path.
https://gfycat.com/UnacceptableJoyousAgouti

The team is:
@brondin - Badass writer
@sash - Audio extraordinaire
me - Typist
We're now working on the gameplay mechanic (i.e. what you actually do, not just how you see yourself doing it), and we've got some cool story to tie in once we record some dialog.
The game is going to be very heavily audio-based, and @sash is working on a occlusion/obstruction system for sound.
I'd like to bring in the top-down 2d ripple stuff at some point, or at the very least use it for another game.
I also want to visualize enemies clearly. I think that would be done by highlighting their hearts, since that is the source of sound - and possibly showing a heartbeat indicator, which can cut out when you kill them.
I'm finding it very interesting finding the line between "WTF, I can't see anything, this is stupid", and "holy shit the thought of losing my sight is terrifying".
I do definitely think that it is much easier to know what is going on when you are holding the mouse (will post a build). Also, I really want to put this on a rift depending on how far we get.
We spent a long time going back and forwards with ideas around using sound waves and ripples as a game mechanic. One thing that stuck, and is a very interesting area to dig into is what it must be to be blind.
At first I played with a basic ripple simulation, where the red cube sent out waves of ripples, visualised by thousands of cubes moving up and down

Then played with colors

I then got dynamic obstacles working, and the ripples interacted with walls, blockers, and each other

(note: The gifs below are pretty crappy, rather click on the link to watch the html5 video)
I decided I needed a more efficient way to both visualize and render what I was doing, so changed to effecting color based on wave height
https://gfycat.com/AppropriateFlimsyAmericankestrel

The way I was doing it meant that to make it look unpixeley, I needed to process more data, which I couldn't do without killing the CPU. Instead, I played with keeping the source data small, and blurring the visual
https://gfycat.com/IncompatibleElectricChuckwalla

Back to mechanics, we were talking about how our blind character would make their way around the environment without being able to see. The answer is that they can "see" sound. This means that where there is a wall, they don't see the wall, but they see the sound stopping. In this gif I show sending out a single wave, and then multiple to show how it effects visibility. We could allow the player to send out waves as they like, but if they create too much sound they'd alert enemies.
https://gfycat.com/AchingSpectacularAmericancrayfish

At this point we knew that we needed to decide on how the actual game would be played instead of playing with ripple simulations.
That is when we decided to switch to first person. Things would be visualized in the same was as before: player can "see" sound waves, so anything that makes a noise will send out waves.
We discussed how that would all work, and I pulled this from one of our skype conversations:

Green dot is player, red is enemy, and the enemies heartbeat sound sends waves out letting the player "see" the enemy behind a wall. The reason I post that ugly image is to make this next gif make more sense. I've found that when I'm using the mouse it is easy to see what is going on, but not knowing how the player moves makes it quite hard for a bystander.
In the gif I start at the green dot, and go around to the enemy (who has a table next to him)
https://gfycat.com/LongWhiteKob

Now that we know more how the game is going to work, Brandon writes up some story.
The game starts as you get out of a taxi.
Yay, time to make a taxi out of cubes, and see how it looks in sound.
https://gfycat.com/MiserlyRapidBinturong

Lets get some streetpolls and roads in
https://gfycat.com/DefenselessNeatFluke

And finally, when the player turns around I places an enemy with heartbeat on the park path.
https://gfycat.com/UnacceptableJoyousAgouti

The team is:
@brondin - Badass writer
@sash - Audio extraordinaire
me - Typist
We're now working on the gameplay mechanic (i.e. what you actually do, not just how you see yourself doing it), and we've got some cool story to tie in once we record some dialog.
The game is going to be very heavily audio-based, and @sash is working on a occlusion/obstruction system for sound.
I'd like to bring in the top-down 2d ripple stuff at some point, or at the very least use it for another game.
I also want to visualize enemies clearly. I think that would be done by highlighting their hearts, since that is the source of sound - and possibly showing a heartbeat indicator, which can cut out when you kill them.
I'm finding it very interesting finding the line between "WTF, I can't see anything, this is stupid", and "holy shit the thought of losing my sight is terrifying".
I do definitely think that it is much easier to know what is going on when you are holding the mouse (will post a build). Also, I really want to put this on a rift depending on how far we get.
Comments
In the 2d version you have this cool bounce vision off of other objects are you going to put that in the 3d version too?
I'm so excited by compos, because stuff like this happens. Looking forward to your updates.
Probably not performant enough to make it into the final though.
https://gfycat.com/ClutteredImmenseEyas
I was actually playing with adding a grid texture to all our objects last night, but it makes things significantly more visible (just like in Devil's Tuning Fork) which takes away from the fact that you're blind.
Will definitely give this a play though and see where we can improve, thanks :)
I'm still not sure this is how I want it to end up looking, but I need to actually work on gameplay now so am forcing myself to commit the work and move on.
https://gfycat.com/UnsightlyYellowChrysomelid
Enemies also have life indicators.
I agree with the weirdness of a month long prototype. . I am going to be useless at work this week... :-P There are some long weekends coming up at least. The next month long jam will be brutal... no long weekends.
I like month long jams :P sometimes hard to find time for the shorter ones. With a month, I can afford to take a few days off and not feel like I'm going to drown. but focus is definitely important, a month can easily lull you into a false sense of security "I have lots of time, I'll do that later and do the cool stuff now"
Was trying to make a nice death animation and realized I can just use ragdolls!
When you kill enemies their little heartbeat indicator goes flat and they fall.
https://gfycat.com/ObedientGlamorousDrafthorse
I really enjoy a good stealth game.
Can't wait to see more!
Karl
Have you thought about being able to cause sound ? Like having a firecracker or something you can light and throw to force vision. Or if you could tie in a microphone... you could have the player scream into the mic to be able to see. Kind of like how bats see.
Firecrackers are a very cool idea for viewing a whole section of the level - but I'll need to see how it works with gameplay and if you need it.
Something we've talked about which I'm quite excited to see work is the enemies having grenades. When a grenade goes off your ears ring and you can't hear anything - meaning that you also can't "see". We could totally blow out the colors on-screen until your ears stop ringing.
Mic is also very interesting. I was thinking about doing a tap thing where you tap your phone and the accelerometer sends those values to the game. But this and the mic thing seem a bit tacked on unless there was a reason that it was better than having a "make noise" button.
https://gfycat.com/NextSaneCapeghostfrog
And I made a simple patrolling/waypoint system for the enemies that are guarding something
https://gfycat.com/ThornyWellmadeBackswimmer
Your sidekick, Ben, fumbling with his gun.
https://gfycat.com/InstructiveOblongAcouchi
A few days before the end of the deadline we came across a game called Perception:
This is pretty much exactly what we were attempting to build, even down to how you can make noise to "see" around you. They have a ton of polish and really great art style.
That put a bit of a damper on it because at most we were making a clone (unintentionally) with a different storyline.
If we break the game into parts, it would be:
1) The story we want to tell
This is the strongest part. We got as far as recording the voice acting for the entire first part, and the story was gripping as far as ending the first part and wanting to know more.
2) The visual
I spent almost the entire time working on this bit, which turned out to be a terrible idea because of Perception. Even without Perception, I was extremely focused on getting the visual perfect instead of working out the main game mechanics and bits of gameplay. That means that at the end of the month we basically just have what you see in the gifs, plus dialog. But not much gameplay.
3) Gameplay
This is where we should have spent time instead of the visuals. At the moment there are some small bits in where you can do things like pickup and throw a bottle, and if a guard hears it they will head towards it to investigate, and then go back to their original path if there was nothing there. But that is about it. None of the other planned stuff was done. There were going to be two attacks: stabbing your cane through their eye socket, and stealthily strangling them with the cane from behind.
Overall the game was probably within scope, but there should have been better focus. Instead of spending hours and hours of visuals, we should have worked on gameplay first.
That being said, I really like what we did, and am really happy with the stuff we did get done. I can't speak for the others but I learned a ton of stuff. At work I don't get to touch every bit of the game. For instance, when we're doing animations, it just goes to the animation guy. So I finally have a better grasp of the animation system, and a bunch of other areas.
I really like the story and world we had in mind. From here we will probably think of a way to change the game to not look like a cheap copy of Perception.