Snowman is a secret word game where the user needs to guess the letters of a word to find it. The user will be given specific lives to guess the letters of the word. If the user couldn't guess the word and lose all the given chances (lives). The user will lose the game otherwise will win the game.
This game was desingned purely in Python. Also, this game is fun to play and will help test the memory with secret letters and words. As our body needs excersie so does our brain. Therefore, this game can be a good excersie for the brain.
Visit the live website in here
- Purpose of the project
- User Stories
- Features
- Future Features
- Typography and color scheme
- Flow chart
- Testing
- Deployment
- Credits
- As visiting user, I would like to see a friendly message at the begining of the game and enter my number.
- As visiting user, I would like to check the rules of the game.
- As visiting user, I would like to see the already guessed words
- As visiting user, I would like to see error message, if i guessed the wrong or an already guessed letter.
- As visiting user, I would like to see the snowman being build if i guessed the wrong or already guessed letter.
- As visiting user, I would like to have five to six lives.
- As visiting user, I would like to see the correct guessed letter in to dashed lines.
- As visiting user, I would like to see the word, if i couldn't find all the letters of the word and lose all the chances (lives).
- As visiting user, I would like to start the game after checking the rules.
- As visiting user, I would like to have an option to re-strart the game if I lose or win.
-
Asking for the username
-
Menu options:
-
Game rules section:
-
Guess letter:
-
Correct Letter (Answer)
-
Wrong Letter (Answer)
-
Already Guessed Letter (Answer)
-
Game over
-
Win The Game
- Add levels to the game.
- Improve the game by displaying meaning of the words so the user could guess the word easily.
- Font family, 'Arial' was used for this project.
- Used Colorama library to use: red, green, cyan, magenta, white, yellow
- Python
-
PP8: Passed the code through PP8 validator and no bugs were founded.
-
Given invalid inputs: numbers when numbers were expected and out of bound inputs.
- PP8
- The code in run.py file was successfull and there were no errors
- The code in snowman.py file had a certain amount of trailing whitespace in ascii character which hasn't been fixed. The whole ascii character should have been modified to remove this syntax error. Due to limited amount of, I was not able to fix it. Although this syntax error doesn't effect the overall of the website.
- This site is not fully responsive in the mobile devices.
- You can run this site in a PC.
- PP8
-
Trailing whitespace:
- Trailing whitespace is any spaces or tabs after the last non-whitespace character on the line until the newline.
- I encoutred this syntax error, and solved it by deleting extra spaces from the end of the lines.
-
continuation line over-indented for visual indentflake8(E127)
- A continuation line is indented farther than it should be for a visual indent. source
- The characters in the line was greater than 79 therefore, I put the half of the code from that line to another.
- The error was due to one indtetion.
- Solved it by deleting the indentation.
- module level import not at top of file pp8:
- A comment was given between imports, which caused this error.
- Solved by removing the comment, source
This site was developed in Gitpod and deployed using Code Institute's mock terminal for Heroku.
- Steps for deployment:
- Go to Heroku website
- create a new Heroku app
- Settings -> set the buildbacks to Python and Nodejs consecutively
- Settings -> Create a Config Var called PORT, Set this to 8000
- Deploy -> Link the Heroku app to github repository
- Deploy -> select enable automatic deploy or |deploy branch -> Deploy|
- click open app from the menu to go to live website
Thanks to my mentor Rohit Sharma and Code Institute family who helped me throughout this project.
- The whole idea of the project was taken from video although the features and code has been changed according to the game.
- Ascii art was taken from the below website, but it was modified according to the need:
- The list of random words were taken from Stakoverflow
- The idea for time.sleep() was taken from freeCodeCamp
- Replacing dashed with letter were taken from stackoverflow2 stackoverflow2 and it was modifided.