Skip to content
Tasnim Zotder edited this page Nov 26, 2020 · 7 revisions

Welcome to the int213- Word Hunt Game wiki!

Introduction

β€œWord Hunt Game” is an interactive game where users have to find the hidden words by selecting the words in the order in the word grid. This game is powered by python. Besides the GUI (Graphical User Interface) is made using a python shared library named Tkinter. For the packaging and dependency management Poetry is used which is available for both Windows and Linux. The configuration (rules) and data for the game are written in YAML (YAML Ain’t Markup Language) data-serialization language, which is similar to JSON excluding the curly braces. The game has four (4) levels, which are Mini, Normal, Pro & Pro Max. Each of these levels has different numbers of the word count (the number of hidden words). Mini has eight (8), Normal has thirteen (13), Pro has seventeen (17) and Pro Max has twenty-three (23). Besides, the game has a score counter. When the user gausses a correct word, his/her score increases by one (1).

The main features of the game are –

  • The user or player can select the level of difficulty of play of the game
  • The name of the player stores in the local file system
  • The score counter counts the score of the player
  • As the player finds the correct words, the respective word gets strike-through
  • The player can customize the game by adding or changing words in the int213-word-hunt-game/data/words.yaml file
  • The player can customize the number of words in different level by changing data in the int213-word-hunt-game/config.yaml file

Module Description

Project Folder Structure

int213-word-hunt-game
β”‚  LICENSE
β”‚  README.md
|  run.ps1
|  run.sh
|  _config.yaml
β”œβ”€ assets
   |  fizan.png
   |  game_play.jpg
   |  game_setup.jpg
   |  python.png
   |  souvik.png
   |  tasnim.png
   β”œβ”€ int213-word-hunt-game
      | .gitignore
      |  config.yaml
      |  gameUtils.py
      |  main.py
      |  poetry.lock
      |  poetry.toml
      |  pyproject.toml
      β”œβ”€ data
      |  |  words.yaml
      β”œβ”€ icons
      | x-48.ico

The folder structure of the project

  • The assets/ directory contains the static assets required for the project.
  • The int213-word-hunt-game/ directory contains the files for the game.
  • The data/ directory contains the data (words) for the game.
  • The icons/ directory contains the icons for the game

GUI development

The GUI is divided into different components (frames or layouts) –

  • Game Level Select Window: This component appears before the actual game starts. This contains input fields which allows a user to type his/her name and select the level for the game.
  • Word Grid: This matrix type component contains the grid of boxes. Each box contains a letter. A user can click those letters.
  • Word List: This component contains a list of all possible words in the word grid. When a user selects a correct word, the respective word in this word list gets strike-through.
  • Information Panel: This panel contains the user name, level, number of words and the score earned by the user.

Functionalities

  • Level Selector: This functionality allows a user to select the level he/she wants to play the game with. According to the level, the number of hidden words changes.
  • Word Selector: This functionality allows a user to select the words from the word grid is an order. The order can horizontal (towards left or right), vertical (towards top or bottom) or diagonal. Once a particular order is selected, the order cannot be changed till the desired word gets correct or wrong after check word button pressed.
  • Score Counter: When a user selected word gets correct, the score of the user increases by one (1). After exiting the game, the score becomes zero (0).
  • Local Storage: This functionality allows the game to store the game configurations, user name, score in the local file system.

Dependencies

Name Version Website
Python ^3.8 https://www.python.org/
Tkinter 8.6 https://docs.python.org/2/library/tkinter.html
Poetry ^ 1.14 https://python-poetry.org/

Setup & Getting Started

GitHub has been used from the beginning of the project for version controlling and team collaboration. The project can be found on the repository: https://github.com/tasnimzotder/int213-word-hunt-game

  1. Clone the repository
git clone https://github.com/tasnimzotder/int213-word-hunt-game
  1. Run the program
  • On Windows
./run.ps1

or

cmd /c "cd int213-word-hunt-game && poetry install && poetry run python main.py"
  • On Linux
bash run.sh

or

cd int213-word-hunt-game && poetry install && poetry run python3 main.py

References

Collaborators

Roll No. Regd. No. Name
30 11903295 Tasnim Zotder
29 11903286 Souvik Ghosal
54 11905580 Fizan Naik

Submitted to

Ishan Kumar

Professor
Department of Computer Science and Engineering
Lovely Professional University

Clone this wiki locally