Massive Update on SoundScape!

I have finally got to the stage where I have a working build of my Audio adventure game which I have called SoundScape. The lack of updates on here on the game was due to literally spending every waking minute developing the sounds, coding and finalising the levels so all the content was in and together!

The changelog will be massive so there will be a big wall of text! I wanted to export my project using unity web browser but I seem to be encountering a lot of errors with it and the game crashes from my knowledge a problem with onGUI being used, misused for web browser export. It is something I would like a more experienced coder to take a look at as I am unsure of the problem and how to remedy it currently without having time to read up on it!

Furthermore to running round like a headless chicken I have been very busy setting up a website for the game which can be found at this location  http://soundscapegame.com/  There is a limited alpha period on it where I will need testers and feedback in the next few weeks as I have an 8000 word report based around the entirity of this project I have been undertaking. It has been a very long and hard 9 months of development for this game on my own but I am very proud of what I have achieved, releasing my first full game to the general public and internet! I feel there is more development to come on this as I have plenty of ideas for new and exciting directions for the project too!

Changelog since 1.5 – Game client has been updated from 1.4 to 1.5 to 1.6 – 1.8a then split into three versions one for tablet, one for pc and one for Kinect.

Levels 4,5,6 were built in their entirity

Footsteps and feel sounds were recorded and added to levels 1-6 and the rifts

Some of the linking in the rifts have changed, the original documentation specified that the bad path in rift 3 would link to a beach level that would take you back to the same rift, I have changed this so it links back to rift1 now.

Slight tweaks to the character controller were made as a bug was discovered where you could activate triggers using feel but they wouldnt trigger other scripts only the audio

Slight tweaks to the height of trigger areas were made

Slight tweaks to the size of some artefact collection areas were made

A new flow system for the kinect version was created, There is now a calibration screen for FAAST, a holding screen which waits for a user to input a motion, a page that plays audio warning the user about movement that may uncalibrate the FAAST software therefore losing skeleton tracking, and the menu screen which was tweaked to fall in line with current input as the input key for hold left arm out was A as opposed to the game expecting W. An escape key feature has also been added to the PC build and crouch functionality has been added to the Kinect version for escaping the game.

There was an issue with audio on the beach level for the bomber which is triggered on artefact 1, the sound crackled and popped whilst in motion, this has been re-designed using soundtrack pro and turned into a 2D sound to remedy this issue.

There was an issue with a sloped surface in the marketplace level. The level design has been tweaked so that it is all one flat area now with no elevation unlike the original plans intended.

All tutorial speech has been recorded for all three versions, there is currently still an issue with one speech on the PC build as the wrong key was spoken in terms of directing the user about a feel button so a quick audio fix had to be applied i.e. chopping the incorrect audio out and stitching it together to say “you can click the button onscreen” as opposed to “you can either press the R key or click the onscreen button to feel…”

A suspend player mechanic was introduced which on the PC build disables the audio source on the foot for X seconds and disables the rotationscript for movement on the character for a set time. A suspend noise is played and then the game object is destroyed using a script which is Destroy after X seconds effectively.

The suspend player mechanic was introduced in the Kinect build by setting the rotation and movement speed to 0 for a set time then setting it to the defualt values after a certain time. The footstep animation is also disabled in this period.

A wrapup ending section for the game was created using soundtrack pro and a 2D arrangement this loops back to the main menu screen.

Size and style of text on main menu and holding screens were slightly modified

A lot of mixing tweaks and volume, panning, low end rollof settings were added and modified to simulate artefacts being muffled by walls and to improve player awareness of the location of artefacts and objectives.

Mixing tweaks on teleporters especially in level 5, 6 and 4 were done due to the size and shape of the levels the volume was upped on all of these.

Some footstep surface sounds were modified using the volume modifier variable setting in the game components on floor and wall surfaces, this was to adjust some footstep noises to realistic levels as some were too loud and quiet.

Dying mechanics were programmed and added, they basically turn off the animation and sound for the monsters and play a 2D sound on an audio object which was track layed in SoundTrack pro, they work on contact with the player object. Once you make contact with a foe the 2D noise plays then it resets the level you are currently playing. The initial intention for this was to have a screen come up which has an audio hint on and a choice of retry or quit. This has been dropped for now due to time constraints but may be looked at again in the future.

A sequence of music samples and loops were tracklayed to give an impression of a shop music in the marketplace level

Original cave ambience was replaced with a newly edited one to improve the ambient feel of the level a technique involving reverb, sampling in FL studio and recording was involved for this

Rain was re-done in Level 2 using FL studio sampler DirectWave an alternative method of sound editing and creation

Voices were created using recordings from Rode NTG-2 and ZoomH4n mics, edited in SoundTrack with an equalisation setting for radio, slight bitcrusher and some cleaning and tidying up where necessary. Stiched together post render using Audacity simply for ease of work flow.

A speech sound was added for L2 warning players of potential enemies

A speech sound was added in L3 explaining the “metal detector” mechanic

A lot of low pass filters were added to binaural style market place ambiences to give a feel the player is really enetering a busy place

A new version of FAAST 1.0 was released which saw a re-making of the gestures needed for the Kinect version the current settings are a hold key for 0.2 seconds for walking, a hold key until action completed for turning if arms are out more then 30cm to the side, Feel is controlled by right arm out infront of body, exit is controlled by crouching.

New sound replacing the suspense sting was made in L2 – spooky harpsichord

New sound added to level 2 – weird suspense texture on right side of level

New sound added to level 2 – Wind blowing a shutter door at back of HH

Outside ambience and footsteps were added to level 2

All monster noises were recorded, edited and applied to them

Doppler was taken off most sounds barring the weird noise in rifts as it didnt fit at all and make sense.

Fixed all suspend player timings barring one in the first level on the “tutorial walk object”

New MazePlayerControllerII was added to all levels after level 1 and re assigned with all the appropriate coding, this size tweak was made to ensure the feet wouldnt trigger zones in the same way feel was breaking them

This pretty much wraps up the change list since the last update from ages ago, there is probably more content which I will add too when I think of, the next blog post I do will be a suggested changelist, future fixes and additions to the game I intend to make.

Small Update – SoundScape1.3

Just a quick update managed to put a build of my game onto my android tablet to test buttons, display size, general working status on another device with a lot of success! I had an issue with the script declaring that most of my scripts were undefined and weren’t recognised by the java parser for the android tools. I fixed this by finding a solution online that indicated I needed to insert var at the beginning so going from
script = GetComponent(Artefact2SoundOn);  to
               var script = GetComponent(Artefact2SoundOn);
This is so the java parser which has apparently become more stringent since earlier builds can recognise unitys script function as a type now to cut a long story short.
I also had to code the buttons for the player movement which I got a some info on from various places around the net the best source being at http://answers.unity3d.com/questions/143317/how-to-emulate-keyboard-keys-with-a-gui-button.html which was an answer a member of the community gave about emulating keyboard keys using GUI buttons. The actual solution came as telling the GUI buttons to emulate axis inputs. So the code basically said take Horizontal and Vertical as variables, Store these return values in the variables. Then if the GUI buttons are pressed and created basically Do axis corresponding to whichever set so move the player along an axis. I had to change the order for the W key (Walk forward) as the code was executing axis 1 before the animation which was playing the animation every frame so I called the other object with the walk animation for the collider first and moved the getotherobject.play.animation.walk to before the script was checking for input/existence each frame and voila working contorls!
Blurry shot of menu working on dev build
Working Dev Build Menu
So stuff to do today, Finish off level 6, Write an AI code – I MUST DO THIS! Start an asset spreadsheet of sounds needed per level. This must be completed by today/tomorrow latest as I need to get onto the sound design very soon.
Stuff to do in the immediate future: Change UI layout to be more user friendly, Add GUI skins, Add voice description of menus, Enlarge buttons in menu,

Post Christmas Development Work

Wow It has been a while since I updated here. Currently I have picked up the development again for my Audiogameproject1.01 as it is referred to at the minute (I’m sure there will be many more versions.) I have made several additions to the current game in its state.
Changes I have made to the previous revision of audioproject1.00a
I have added a holding screen so that the motion tracking can actually wait to pick up detection and then wait for the player to perform an action. The secondary main menu screen is not really a menu but is a hub where players actions can determine the selection they want to make by using a gesture. I have decided to design the UI this way for now as it seemed like the simplest most logical way to develop it. Plus my knowledge is highly limited on how to make GUI text within unity. Click functions are not available to the player in this game in its current guise so I had to think of the most logical way to implement menu navigation choices and a static screen that has text and audio telling the user what to do seemed the best route. I had a difficult choice before coming to the conclusion that I needed both the holding screen and the menu due to if a player decides to move about too much while the motion detection is in operation before the game initiates. This will solve a few problems for me and generally help to ease the player in to the game as opposed to just chucking them straight in the game. It will also make sure the tracking is working properly before the game initiates and specific actions are required. I need to improve the GUI if i have time as it looks terrible from a design point of view but its functional.
I have extended the play area for the cave environment to incorporate 2D/3D designed sounds for things such as bats and a small piece of music to detail a mystical inside to a cave. I have fixed bugs in the cave area associated to level progression blockers and created a new script which waits for 5 seconds before destroying the target entity the script is associated to.
New play area Beach level is in the process of being built, Walls, floors and Basic environmental sounds/mixing has been added. Events and Gameplay need to be added/decided upon. Design changes may need to be made. Adaptations to the original level plan may incorporate an addition of a metal detector for one of the artefacts and story details such as hearing bombers overhead have been added to fit in with the theme better and improve narrative.
Player component SensoryPlayerController has been retired and changed in line with mazeplayercontroller. – this controller allows a player to feel surfaces and hear audio feedback if the hand object collides with a wall. Mappings to the motion tracking will need to be added for this extended functionality. This change had been made to Cave, Haunted house levels and added to beach level. This will become the new standard for the player character until/if a new version is made.
Crouch has been decided upon as a way to exit the game as it is a non deliberate motion unlike swaying about. This may be subject to change if crouch functionality is required. Players will be told about this using audio.
The woodenstairs sound has been used to test the wall sounds in each level that I have adapted the new mazeplayercontroller to.
Schedule
I was ahead of my schedule before christmas break my target is to get the levels built week by week allready 1/6 levels are playable and 1/6 rifts link. 3/6 levels have an available play space to walk in. I aim to have at least 2-3 levels playable by the end of the next week.
Functions I need to add/explore
Metal Detection – Pinging a sound back from a player action such as holding left arm forward
Understanding hold and destroy script in conjunction with playing a sound – Can I play a fade out sound for artefacts before they get destroyed. The current sounds are very choppy.
AI – This must be looked at even if not used. AI may be used for the monster in haunted house and Sentinel in underground level. Also may be incorporated to roboguards in futuristic level.
Holding screens before missions – Need an explanation of some missions before the mission. Speech inside the missions need shortening or moving to these as prolonged explanation causes audio to play over other audio and gets real boring for players.
That’s my update summary for this week I will start posting one of these per week or few days as needed. This is for the purpose of documentation for my final project text.

Feasibility Report Completed!

Finally finished the feasibility report for the Creative Practise Project and handed that in! Hopefully the plans go through okay and I can get the full support of audio project supervisors in order to start with the audio tutorials I need! I have been working in 3DS max a little bit to start creating assets for the video compositing work I have to do by the end of this year. I have had a refresher tutorial on video compositing looking at chroma keying and refreshing my mind on the basics inside After Effects. I have created a short fun video as a result of that entitled “Psychadellic Cat is Not Amused!” Now I need to start looking for more assets for the video project and start level designing  and drawing up questionnaires for my research for the final project.

Beginnings of the final project

I have started work on my audio game  by building a prototype in Unity I have currently learnt how to map controls, make a first person control system where the left and the right rotate and the forward controls for footsteps can be mapped to two buttons.
I have learnt from tutorials how to script and use triggers for footsteps and to activate audio cues.
I need to learn how to script simple AI that a player can interact with to take health off the enemy/player and be destroyed.
Currently the project is meeting schedule. The audio recordings will need to be planned in the coming week as well as the level design.