Top Banner
Tune Hopper Game Design v1.5 Tune Hopper Game Design v 1.5 Overview Game Design Overview Game Board Basic Game Play Game Difficulty Levels Game Difficulty Variables Rewards & Scoring Successful End of Song Unsuccessful End of Song Game Over Maximum Potential Score : Point Deductions : Wrong Notes Player Time Food Rewards : Game Sound Engine Song Notation This will follow a similar model to what we implemented in version 1.0 where music composer will deliver pitch files and sound sets to developer for integration into the game . Sprite Animation Engine Idle Loop Animations Animation Assets Needed Menu Design Main Menu Options Share Contact Us Credits Help Album Select Song Select Level Select In App Purchase Menus
21

Tune Hopper Design Document 1.5

Nov 01, 2014

Download

Tune Hopper

Here's the following design document which is closer to the Tune Hopper game currently available in the App Store.

As an upcoming developer for iPhone apps it would be best to read through this document and download the game here: http://itunes.apple.com/us/app/tunehopper/id466431933?mt=8#
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tune Hopper Design Document 1.5

Tune Hopper

Game Design v1.5Tune HopperGame Design v1.5

OverviewGame Design OverviewGame Board

Basic Game PlayGame Difficulty LevelsGame Difficulty VariablesRewards & Scoring

Successful End of SongUnsuccessful End of SongGame OverMaximum Potential Score:Point Deductions:

Wrong NotesPlayer Time

Food Rewards:Game Sound Engine

Song NotationThis will follow a similar model to what we implemented in version 1.0 where music composer will deliver pitch files and sound sets to developer for integration into the game.

Sprite Animation EngineIdle Loop AnimationsAnimation Assets Needed

Menu DesignMain MenuOptionsShareContact UsCreditsHelpAlbum SelectSong SelectLevel SelectIn App Purchase Menus

Page 2: Tune Hopper Design Document 1.5

In-APP Album StoreWireframe Mockup

Testing Plan

OverviewTune Hopper is a musical Simon Says Game that will offer players a rich sound scape with progressively more difficult game play. Version 1.5 of the game will be based on the previously developed 1.0 version. This document mostly describes the upgrades and changes from version 1.0.

Game Design OverviewGame play involves these primary components:

● Game Board (AKA “Tile Floor”)● Game Controller (Game Rules)● Game Sound Engine● Sprite Animation Engine (“Greg”)

Game BoardThe Game Board (also known as the “Tile Floor”) is comprised of columns of 8 rows. The number of columns will be determined by the number of notes in a song. In future versions the time signature of the songs may change, however for this version Common or “4/4” time will be the only time signature. As such columns will always come in groups of 4 in this version which we will call a game measure. The total number of game measures is variable. Easy levels will have 4 measures. Advanced levels can have more measures, up to 16 maximum. The number of measures will vary based on the needs of a song. The game board will always have exactly 8 rows, never more or less. Each of these 8 rows is associated with a specific sound on a scale, herein called a note. Different albums will have various instrument sounds used to represent each note. An iPhone screen is 320 Points Wide by 480 Points High. The previous version of Tune hopper had each note on the game board represented by a 40 x 40 point square which was chosen to fit 8 columns within the iPhone’s 320 Point wide screen. As the previous assumption that 8 notes needed to be visible at all times is not necessary and to enhance usability and engagement in game play we are increasing the size of each square to 54 x 54 points. This allows a about 6 note columns to be visible at any given point and an additional 48 points of space for menu buttons and other eye-candy. The majority of this space will be located at the top of the game board, only leaving a few points of eye-candy (the cupboard doors) on the bottom.

Page 3: Tune Hopper Design Document 1.5

As we are not currently creating an iPad optimized version of this game, discussion of the game board as it relates to the iPad will be skipped for now. Users can only ever interact with one column of notes at a time. Advanced levels of game play will introduce the possibility of users playing “chords” of two or three notes simultaneously within each column. Greg, the animated Character, who hopped along the bottom of the game board previously, will now hop along on the board as players play notes. He will start out in a blank column and then hop from column to column, landing on the correctly played note’s square. This means Greg will now need to hop with variable heights instead of the fixed height he used previously. In the case of chords, Greg will hop to the lowest note in the chord. As the game opens, Greg will hop from off screen left onto a blank column on the game board where he will idle and wait. As Greg hops onto the board, we will fade the numeric value of the current difficulty level in and out. In the upper left corner of the screen we will display the maximum potential score for the level. As deductions are made to the score during game play, we will animate the score’s display down.

Game ControllerThis is what sets and enforces the rules of game play.

Basic Game PlayBasic game play will follow this pattern:

1. Computer will demonstrate a sequence of notes. a. Initially this sequence will only be one measure of a song.b. In more advanced levels of play this sequence of notes can span two measures.

Sequences will never be any longer than 2 measures in length.c. The computer will play back the sequence using proper timing/rhythm as

provided for by the game’s sound engine.d. Depending on the difficulty level being played, the visual representation of the

notes will change, starting with showing all notes in the measure to not showing any notes in the most advanced levels. (See discussion on difficulty levels for details)

2. The game will then wait for a player to repeat the sequence of notes the computer played. The game will always prompt a player which column on the game board notes will be played. The prompt will occur by a column highlight.

a. If a player plays an incorrect note, player can keep trying to play the correct note until they get it correct.

b. Each incorrect note played will deduct points from the player’s final score. Greg will also be disappointed and will react accordingly as specified by the Sprite

Page 4: Tune Hopper Design Document 1.5

Animation Engine.c. If the player’s score drops to zero at any point during game play then they

immediately loose the level and must begin again.d. If a player takes too much time to play a note then point deductions are made.

These deductions are based on the song’s playback BPM and the difficulty level being played.

e. The rhythm a user plays will be ignored by the computer. While we expect users to attempt to emulate what the computer played, their success or failure at following the song’s rhythm will have no effect on their score.

f. When a player plays a correct note the game will prompt and wait for the next note in the sequence and Greg will react accordingly as specified in the Sprite Animation Engine.

g. When a sequence is completed, Greg will celebrate as we loop back to # 1

Page 5: Tune Hopper Design Document 1.5

3. At the end of the song, Greg hops off the board. A refrigerator opens up and throws food at Greg. The amount and type of food is based on the number of points a player has received.

Game Difficulty LevelsThere will be 12 difficulty levels. Users must achieve at least half of the maximum potential score achievable on any level of game play before they can advance onto the next difficulty level. User’s will see level difficulty described as follows:

Easy Levels 1 - 4

Medium Levels 5 - 8

Hard Levels 9 - 11

Expert Level 12

We are providing multiple numeric levels within each difficulty level of easy, medium and hard so that users see a progression of difficulty instead of large jumps (except in the case of Hard to Expert where a bigger jump is made). Users will see both the numeric value and the text description of the difficulty level at the start of game play. Users will see the level number displayed in the song select screen where they will be able to play any level up to the maximum level number they have played for a given song. After users have passed a certain level on a certain number of albums, the ability to play at various levels will be unlocked (this gives users an incentive to buy more albums beyond just wanting more music, though there’s no reason users have to buy more albums to unlock more levels as they can always play through all levels starting at 1 for any album they have):

Passed Level 11 on 1 Album Up to level 3 unlocked on all albums

Passed Level 2 on 3 Albums Up to level 3 unlocked on all albums

Passed Level 4 on 6 Albums Up to level 5 unlocked on all albums

Passed Level 8 on 3 Albums Up to level 5 unlocked on all albums

Passed Level 8 on 6 Albums Up to level 7 unlocked on all albums

Passed Level 8 on 10 Albums Up to level 9 unlocked on all albums

Passed Level 11 on 12 Albums Up to level 12 unlocked on all albums

Page 6: Tune Hopper Design Document 1.5

When this “unlock” event happens, users will be congratulated with “Congratulations! You have now unlocked level 3 on all albums. Play more albums to unlock additional levels.”

Game Difficulty VariablesThe variables we will change to make game play more difficult with include:

● Playback BPM○ This is the speed at which the computer will playback the notes in a measure.○ 1 quarter note = 1 beat

● Visual Representations of the notes ○ This is what the user sees on the game boar as the computer plays each

sequence○ Starts at Highlight notes and stays lit and eventually goes to no highlights at all

● User Playback Time○ This is how long a user has to repeat the sequence before point deductions start

accruing. ● Length of Sequence

○ Either 1 or 2 measures. Varies up and down throughout the levels● Total Number of Song Measures

○ Starts at 4 and goes up to the maximum of 16. ○ Songs will be composed to be flexible enough that they can be cut off at 4, 8 or

16 measures. See the Tune Hopper Variables Spreadsheet for details on what these variables will be set at.

New Scoring SystemOn 2/19 we decided to change the scoring model so that the score is no longer based on a deduction system. Wrong notes have a deduction of

Rewards & ScoringDuring song play, Greg will celebrate for every correct note played. Every wrong note played will be met with disappointment from Greg but he quickly gets over his disappointment and focuses on the correct notes users play. There are two components of rewarding users when they complete a song:

1. Points accumulated for levels and songs played2. Food that Greg eats based on the points a user scores.

Players will want to score more points to make Greg happier with the amount of food he eats.

Page 7: Tune Hopper Design Document 1.5

Scoring is based on the maximum potential score a user can accumulate for a given level. We will make deductions from the player’s score based on the number of wrong notes they played and the time it took to play those notes.

Successful End of SongWhen a user successfully completes a song, Greg hops off the board to a refrigerator. Displayed next to or above the refrigerator we see:

● Max Score: 0● Your Score: 0● Wrong Notes: 0

Greg is anxiously waiting for the score tally then...

1. Wrong notes animates up from zero to the number of wrong notes played by the user. a. If there are no wrong notes, then the zero flashes in green and Greg celebrates.b. Maybe some applause sound effects here?

2. The max score animates up and away from zero to the maximum potential score available for the level.

3. The refrigerator door opens (happens during 2) 4. Food is thrown at Greg. 5. Greg eats his food and the point value of the food appears and floats up to the players

score. 6. The point value fades out as the player’s score animates up in value7. Greg is done eating when all the food he will get from the Player’s final score.8. If a user has achieved a new record score we will display the text: “Congratulations, you

have achieved a new high score!”9. Once Greg is done eating, Greg will wipe his face with a napkin while the following

buttons fade onto the screen above Greg:a. Play harderb. New Song

If a user has played all difficulty levels, then the only option will be New Song.When a user picks one of the menu buttons, Greg will hop off screen right as the screen fades out and a new game board fades in. Various sound effects will play in sync with the animation, to include:

● Max score & Player Score Tally Animation Sound (2 notes & triplet?)● Wrong Notes Tally Sounds:

○ Applause if no wrong notes○ Tally sound as we animate up from zero

● Refrigerator Door Opening● Food throwing● “Ding” sound as food point value floats up to player score

Page 8: Tune Hopper Design Document 1.5

Unsuccessful End of SongWhen a user completes a song but hasn’t achieved a high enough score to advance difficulty levels, we follow a similar pattern as when players successfully complete a song but with the following changes:

3. The refrigerator door opens 4. A food scrap is thrown at Greg. 5. Greg eats the scrap and the point value of the food (the player’s score) appears and

floats up to the players score. 6. The point value fades out as the player’s score animates up in value to arrive at their

total score.7. We will display the text: “Score higher to advance.”8. Greg will beg for more food as the following buttons fade onto the screen above Greg:

c. Try againd. New Song

When a user picks one of the menu buttons, Greg will hop off screen right as the screen fades out and a new game board fades in.

Page 9: Tune Hopper Design Document 1.5

Game OverIf a Player’s score reaches zero at any point in game play, the game board will fade out (in future versions maybe the game board will crumble or some other cool animation) while an end of game sound effect plays. Greg will hop to the center/bottom of the screen and then cry.The following text & menu buttons will fade onto screen centered above Greg while he continues crying: (This happens together in 1-2 sec)

● Sorry, your score has reached zero.● Play Again● Pick New Song

When a user picks one of the menu buttons, Greg will hop off screen right as the screen fades out and a new game board fades in.

Maximum Potential Score:Each levels maximum potential score is the level number multiplied by 100 points. So level 1 has a maximum potential score of 100 points while level 12 has a maximum of 1,200 points.

Point Deductions:

Wrong Notes■ Easy Levels: Point deduction of 5 points * Level Number ■ Medium Levels: Point deduction of 10 points * Level Number ■ Hard & Expert Levels: Point deduction of 25 points * Level Number

Player TimePlayer Time is based on a threshold value, calculated based on the level of difficulty. The threshold value is used to determine the number of seconds a user has to complete a sequence before point deductions begin to accrue. The formula for determing is the threshold value is:Threshold = 60 / BPM * LV * N

○ BPM is beats per minute associated with the level’s playback speed○ LV is Level Value which is a variable we can tweak to change the amount of

time. For instance in easy levels, LV is set at 2 giving the user double the amount of time it took the computer to play the sequence or what works out to being about 6 seconds

○ N is the number of notes in the sequence. For instance 4, on easy levels. Any amount of time a user takes to complete a sequence beyond the threshold value will incur the following points deductions:

■ Easy Levels: 1 point * Level Number * Seconds past threshold■ Medium Levels: 3 points * Level Number * Seconds past threshold ■ Hard & Expert Levels: 5 points * Level Number * Seconds past threshold

Page 10: Tune Hopper Design Document 1.5

Food Rewards:Food will be thrown at Greg based on a user’s score:

● If a user has achieved a score higher than 0 but less than or equal to half the maximum potential points associated with a level, Greg is thrown a “token” scrap of food. He eagerly eats the scrap and then begs for more food. A player can then either play the level again or select a new song to play.

● If a user has achieved a score higher than half the maximum potential score, Greg is fed an increasing amount of food proportional to the score a player has achieved. A player can advanced to the next difficulty level or choose a new song to play.

Rewards will be randomly selected to throw at Greg. We will throw up to 3 pieces of food to Greg at level completion. We will round-off the player’s score and will loosely match the point value of the food items we throw at Greg:

Food Item Point Value

Food Scraps Score up to ½ the maximum level score

Candy/Cookie/Pretzel/Cupcake 100 points

Fruit 200 points

Vegetables 300 points

Pizza/Pumpkin/Cake/Eggs 400 points

Examples:Player Scores 650 points We could throw Greg (randomly chosen):

● 1 Meal Item, 1 Fruit Item● 3 fruit items● 2 vegetable items● 1 Meal Item, 2 Candy Items

Player is on Level 1 and Scores 43 Points. We would throw Greg a food Scrap Item.Player is on Level 8 and scores 350 points. We would throw Greg a food Scrap Item.(In both of these situations the player doesn’t achieve a score high enough to pass them on to the next level so Greg only gets a food scrap and then begs for more food).

Game Sound EngineThe game sound engine will be upgraded to playback notes and sound effects using Open AL. All music will still be played back using Apple’s AVAudioPlayer as it is the most efficient way to

Page 11: Tune Hopper Design Document 1.5

playback MP3 compressed music files using the hardware decoder provided in iOS devices. Open AL will allow us to play up to 32 sounds simultaneously, giving us much more flexibility with sound design and fading multiple note sequences. It also gives us the ability to play chords of notes. Tune Hopper Game Play will utilize these sound elements:

1. Music Files - encoded as MP3’s that are played back as rewards for users when they finish playing a song. These can be stereo files.

2. Note Sounds - 8 Mono sound files comprising an octave of sounds which will be mapped to each note on the game board.

3. Sound Effects - Noises Greg Makes & other miscellaneous sounds - Recommend Mono sound files.

The menus will have music and sound effects as well but these will be operated separately from the game sound engine and will fade in or out as we enter or leave the menu subsystem.Sound Effects will include:

● Button select sound● Loading sound● Creature sounds (based on user touch action)

Song Notation

This will follow a similar model to what we implemented in version 1.0 where music composer will deliver pitch files and sound sets to developer for integration into the game.

Because of the added complexity of chords and 1/8th notes, pitch files will have the following additions:

● All notes will be a half notes by default. - 4● A single * is placed after the note number (or chord) for a quarter note - 2● A double ** is placed after the note number (or chord) for an eight note - 1● A single ^ is placed after the note number (or chord) for a dotted quarter note -3● Multiple note numbers on a given line will be assumed to be a chord (up to 3 values per

line)● Note numbers in a chord can be separated by a /

Example Measure:

12*4/66*8

This will then be manually converted to the appropriate in game album file format.

Page 12: Tune Hopper Design Document 1.5

Sprite Animation EngineAKA “Greg” Greg has 3 major states of being:

1. Idle, waiting for action2. Reacting to Game Play3. Eating Rewards

Idle Loop Animations1. Menu Idle

○ A random selection of idle animations to include waving at users.○ When a user touches Greg he sticks out his tongue and then resumes idle loop.

2. Game Board Idle○ A random selection of idle animations while waiting for users to play notes or

while the computer is demonstrating sequences3. Waiting for Food Idle

○ While scores are tallying and in between food being thrown at Greg (like a puppy eager to get it’s dinner)

Animation Assets NeededHopping animation will have a mock up of the jump arch in pitch tiles to decide how this will look.

● Complete Waving Animation ● Dancing Hula Hoop (in game reward)● Dancing Jig (in game reward)● Somersault (in game reward, possible added to )● Cart Wheel (changed animation from sumersault)● Disappointed and begs for More Food (when he only gets a food scrap)● Waiting for food (excited, begging for food)● Wiping Face with a Napkin

Menu DesignSection to put everything associated with menus.Discussion:

● Ability for players to start at different difficulty levels.● Greg Hopping on and off of menu screens

Page 13: Tune Hopper Design Document 1.5

Main MenuGreg randomly hops on the bottom of the screen, from left to right and then loops back to left side of the screen. Options and share functionality integrated on this screen through separate pages for each. This change has happened since there is no room available for pop-up integration on the main menu

ShareFunctionality also leads to separate page due to no room available in main menu screen.

Page 14: Tune Hopper Design Document 1.5

.

OptionsRedoing functionality for Options to click to separate page with buttons, Contact Us, Credits, Reset Game in a row on this page with two ON / OFF switches below these buttons: switch to turn Greg’s sounds ON / OFF No Musical Scale switch in 1.5 now. Just Greg sounds switch.

Contact Us(click Contact Us button on screen after clicking options button)

Page 15: Tune Hopper Design Document 1.5

Credits(click credit button on Options page)Won’t have Greg on this screen.

Reset Game(button in Options page)(click reset button on Options page)Yes / No pop-upWon’t have Greg on this screen.

Help(click Help button on any page except Main Menu)(HELP TEXT) _________________________________________

Album SelectWill follow same model as currently implemented. See wireframe under in-app purchase for changesWon’t have Greg on this screen.

Song SelectRemove Stars.

Page 16: Tune Hopper Design Document 1.5

Aesthetic changes TBD, will follow basic model of current screen. When a song is selected, will go to the level select screen. If you’re on level 1 we will go straight to the game board and skip the level select. Will show score and the highest level user has played. If a user has not played a level, we won’t show the level played. When a user has played all levels with a perfect score, we will highlight the score and level # with a bold, blue (same color as bg of Play button) font. 4,560Level 12 Won’t have Greg on this screen.

Level SelectDisplayed when a song is selected to play

No level locking. Won’t have Greg.

In App Purchase MenusSee section on in-app purchaseWon’t have Greg on this screen.

Page 17: Tune Hopper Design Document 1.5

In-APP Album StoreThis is where users can buy more albums to play. Users will access the store using the “Buy More” button on the bottom of the album selection screen. For reference, Apple’s Server Product Model works as follows:

Page 18: Tune Hopper Design Document 1.5

Tune Hopper’s development server will use a combination of Amazon Simple DB, Amazon S3 and a PHP Store Script to be written for this application and run on a web server.

Page 19: Tune Hopper Design Document 1.5

Amazon Simple DB will store:● List of Product (album) Identifiers and a link to album icon located on S3 and song

preview file links ○ Plan to add additional data fields including description and artist name as well as

more graphics for v2○ Pricing information will be stored and configured in iTunes Connect.

● List of receipt data for all transactions (receipts will be verified with apple before insertion into the database)

Amazon S3:● Repository for storing albums to be downloaded by users● Secured so only our app can download files. App will only download if a valid

transaction receipt for the album is found in Simple DB. S3 login credentials will be secured inside the Application’s compiled code. A hacker would have to break Apple’s app encryption, decompile the app and wade through a bunch of machine code to find the credentials. (It’s easier to pirate music, movies and TV shows on the Internet) We could do something more robust but this provides an adequate amount of protection for content that is only usable within this game.

● Each album will be a zip file that includes song sounds, music XML files and icons that will be downloaded and uncompressed inside the app.

PHP Store Script:● Validates transaction receipts and inserts into Simple DB if a valid transaction● Recommend setting up a good PHP host at inappstore.tunehopper.com

All app downloads will happen in the background allowing users to continue playing the game while they wait for downloads to occur. If a user exits the game before the download completes, when the app next launches it will continue downloading album(s) in the background. Insertion of albums into Amazon Simple DB and S3 will be a manual process.

Wireframe Mockup

Page 20: Tune Hopper Design Document 1.5

The $0.99 button imitates the same functionality on the iTunes stores of turning into a green buy now button that then sends the purchase to the apple iStore. Basically it has the same look feel as all other app purchases.

We must indicate album difficulty thru max score on the album page preferable btn the .99 button and the album icon or under the album icon. Song should also list their max scores as well before the play button.

Page 21: Tune Hopper Design Document 1.5

Testing PlanThere will be 3 phases of testing

● Alpha 1 (Silona and Reuel to verify functionality, timing, etc.)● Alpha 2 (Add 5 users last week of Feb)● Beta (Add 10 - 20 users first week of March)

Bug tracking will occur using Bugzilla or similar to be setup on Eskieman.com