Memory Game is a Light & Sound Memory game to apply for CodePath's SITE Program.
Submitted by: Ashley Ajuz
Time spent: 3-4 hours spent in total
Link to project: https://glitch.com/edit/#!/confusion-thundering-pancreas
The following required functionality is complete:
- Game interface has a heading (h1 tag), a line of body text (p tag), and four buttons that match the demo app
- "Start" button toggles between "Start" and "Stop" when clicked.
- Game buttons each light up and play a sound when clicked.
- Computer plays back sequence of clues including sound and visual cue for each button
- Play progresses to the next turn (the user gets the next step in the pattern) after a correct guess.
- User wins the game after guessing a complete pattern
- User loses the game after an incorrect guess
The following optional features are implemented:
- Any HTML page elements (including game buttons) has been styled differently than in the tutorial
- Buttons use a pitch (frequency) other than the ones in the tutorial
- More than 4 functional game buttons
- Playback speeds up on each turn
- Computer picks a different pattern each time the game is played
- Player only loses after 3 mistakes (instead of on the first mistake)
- Game button appearance change goes beyond color (e.g. add an image)
- Game button sound is more complex than a single tone (e.g. an audio file, a chord, a sequence of multiple tones)
- User has a limited amount of time to enter their guess on each turn
The following additional features are implemented:
- List anything else that you can get done to improve the app!
Here's a walkthrough of implemented user stories: GIF: https://cdn.glitch.com/25130c66-ba37-4d08-87b8-572ac3d3f034%2FLightSoundGame.gif?v=1616294676664
-
If you used any outside resources to help complete your submission (websites, books, people, etc) list them here. [W3Schools Online Web Tutorials Website, Stack Overflow, CodePen.io]
-
What was a challenge you encountered in creating this submission (be specific)? How did you overcome it? (recommended 200 - 400 words) [I think the most challenging part of my submission was creating the video walk through gif. I had first tried to use QuickTime Player since it was already downloaded on my macbook, however I was unable to get the recorded video to save correctly so I decided to use a different recording application. I also had some issues at first with capturing the audio along with the recording, however I realized that my headphones might be messing with the audio. So once I had unplugged them the audio started working correctly and was able to be captured in the recording. The last challenge that I ran into was converting my screen recording into a gif. I had used a website called EzGif that allowed me to convert and save my screen recording as a gif but I was unsure how to link my saved gif to the README file. I solved this by inserting my gif into the assets file, where I was then able to create a link to the gif and copy it into the README file.]
-
What questions about web development do you have after completing your submission? (recommended 100 - 300 words) [After completing this project, one of my main questions is why is javascript used for web development and design over other programming languages. Javascript is very similar to languages like Java, C and C++ that are also very popular, so I’m curious to know as to why javascript is most commonly used in web development/design. I also had a similar question about if CSS is the only type of style sheet language. Are there any other style sheets that can be used in replacement or in conjunction with CSS? This also prompted a follow up question about if it is possible to create your own style sheet/customize or modify the styles provided by CSS.]
-
If you had a few more hours to work on this project, what would you spend them doing (for example: refactoring certain functions, adding additional features, etc). Be specific. (recommended 100 - 300 words) [Something I would have liked to add with more would be the inclusion of levels to the game. The game as it is now can get a little bit repetitive, especially if the sequence of cubes played by the computer doesn’t change, so I think that adding levels could make the game a little more challenging and keep the player engaged. With each level that the user gets to I would add some obstacles into the game as a way of making it more difficult to win the game. Ways that I would go about this would be increasing the speed, making more buttons and rearranging their order, and even adding some distractions at random times. I would also like to work more on the sound synthesis portion of code. I had worked a little bit with sound synthesis in my high school computer science class, however we never got the chance to go into more specifics, so with more time I would love to play around with the audio aspect of this program and try and add different sounds/tones.]
Copyright [Ashley Ajuz]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.