Skip to content

Latest commit

 

History

History
313 lines (223 loc) · 8.87 KB

File metadata and controls

313 lines (223 loc) · 8.87 KB

Dukemon - User Guide

1. Introduction

Our project is a game that requires the user to match a keyword to a given description. This game aims to aid students who are trying to revise concepts and definitions in their schoolwork.

The general flow of the program is as follows:

  1. Select and Edit Dataset

  2. Configure Settings

  3. Start and Play Game

  4. End Game

  5. Display Statistics

The user manually stores definitions / vocabulary into a word dataset. He can also pre-load a word dataset given to him from a file. During the game, you will be tasked to type the correct word given the description. Depending on the game mode, there may also be time restrictions. Answer correctly as quickly as possible and to score as much as you can! You can view your statistics afterwards to review your performance!

2. Quick Start

  1. Ensure you have Java 11 or above installed in your Computer.

  2. Download the latest dukemon.jar here.

  3. Copy the file to the folder you want to use as the home folder for your Address Book.

  4. Double-click the file to start the app. The GUI should appear in a few seconds.

    Ui
  5. Type the command in the command box and press Enter to execute it.
    e.g. typing /help and pressing Enter will open the help window.

  6. Some example commands you can try:

    • /list : lists all data sets.

    • /start : starts the quiz.

    • /stop : stops the quiz

    • /exit : exits the app

  7. Refer to Section 3, “Features” for details of each command.

3. Features

Command Format

  • All commands are typed with / in front of them to differentiate them from answers that the user puts in. ~ will be used as an escape character in case / is used as part of the answer.

    • Eg, ~/help will be intepreted by the computer as a string "/help" instead of the command /help.

  • Words in UPPER_CASE are the parameters to be supplied by the user e.g. in add n/NAME, NAME is a parameter which can be used as add n/John Doe.

  • Items in square brackets are optional e.g n/NAME [t/TAG] can be used as n/John Doe t/friend or as n/John Doe.

  • Items with ​ after them can be used multiple times including zero times e.g. [t/TAG]…​ can be used as   (i.e. 0 times), t/friend, t/friend t/family etc.

  • Parameters can be in any order e.g. if the command specifies n/NAME p/PHONE_NUMBER, p/PHONE_NUMBER n/NAME is also acceptable.

3.1. Viewing help : /help

Format: /help

3.2. Loading a data set : /load

Loads a data set from storage.
Format: /load DATASET_NAME

💡
Use /list to get all data sets currently in your storage.

Examples:

  • /load List of animals

  • /load All gen 1 pokemon

3.3. Listing all data sets : /list

Shows a list of all data sets currently in storage.
Format: /list

3.4. Viewing a data set’s content : /view

Views the content of a data set.
Format: /view DATASET_NAME

Examples :

  • /view Anatomy of the guitar

  • /view Steps in the krebs cycle

3.5. Editor mode : /editor

Opens the in-app editor for managing data sets. All changes made in editor is automatically saved in storage.
Format: /editor

3.5.1. Create new data set : /new

Creates a new data set with specified name. Will automatically be set in edit mode for that data set.
Format: /new DATASET_NAME

Examples:

  • /new Parts of the arm

  • /new All amino acids

3.5.2. Editing a data set’s content : /edit

Enters edit mode for selected data set.
Format: /edit DATASET_NAME

Examples:

  • /edit List of animals

  • /edit Teeth

Adding a word : /add

Adds a new word-description pair to the data set.
Format: /add /w WORD /d DESCRIPTION

ℹ️
Word can be more than just 1 word. Can consist of multiple words if term to remember requires it.

Examples:

  • /add /w Elephant /d Has a long nose

  • /add /w Newton’s third law of motion /d Every action will produce and equal and opposite reaction

  • /add /w Kopi Luwak /d Coffee produced from the coffee beans found in the faeces of a civet cat

Locating a word/description: /find

Finds entry whose word or description contain any of the given keywords.
Format: /find KEYWORD [MORE_KEYWORDS]…​

  • The search is case insensitive. e.g hans will match Hans

  • The order of the keywords does not matter. e.g. Hans Bo will match Bo Hans

  • Both word and description will be searched

  • Only full words will be matched e.g. Han will not match Hans

  • Persons matching at least one keyword will be returned (i.e. OR search). e.g. Hans Bo will return Hans Gruber, Bo Yang

Examples:

  • find long
    Returns entries containing elephant and giraffe.

  • find mammal fish bird
    Returns any entries containing mammal, fish or bird in its descriptions or words.

Deleting a word : /delete

Deletes the specified word from the data set.
Format: /delete INDEX

  • Deletes the word at the specified INDEX.

  • The index refers to the index number shown in the displayed person list.

  • The index must be a positive integer 1, 2, 3, …​

Examples:

  • /list
    /delete 2
    Deletes the 2nd word in the data set.

  • /find elephant
    delete 1
    Deletes the 1st word in the results of the /find command.

3.6. Start new game session : /start

Starts a game session with the desired data set.
Format: /start List of animals

3.7. Stop game session : /stop

Stops current game session (all progress will be lost) and returns to the home page.
Format: /stop

3.8. Viewing statistics : /stats

Views and compares statistics. Can be specified to view stats for specific data sets.
Format: /stats [DATASET_NAME]

Examples:

  • /stats
    Returns overall statistics for the whole app.

  • /stats List of animals
    Returns statistics for the data set List of animals.

3.9. Changing settings : /settings

Goes into the settings menu.
Format: /settings

3.9.1. Changing the theme : /theme

Changes the theme of the UI.
Format: /theme dark/light

Examples:

  • /theme dark
    Changes the UI theme to dark.

  • /theme light
    Changes the UI theme to light.

3.9.2. Turning hints on/off : /hints

Turns hints on or off.
Format: /hints on/off

Examples:

  • /hints on
    Turns hints on.

  • /hints off
    Turns hints off.

3.9.3. Changing difficulty : /difficulty

Changes the difficulty of the game.
Format: /difficulty low/medium/high

Examples:

  • /difficulty low
    Changes the difficulty to low. (Timer = 30 seconds)

  • /difficulty medium
    Changes the difficulty to medium. (Timer = 20 seconds)

  • /difficulty high
    Changes the difficulty to high. (Timer = 10 seconds)

3.10. Navigating back : /back

At any point in time, if there is a previous screen, navigates back to that screen. add home to navigate back to the home page.
Format: /back [home]

Examples:

  • /back

  • /back home

3.11. Exiting the program : /exit

Exits the program.
Format: exit

3.12. Saving the data

Dukemon data are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.

3.13. Leaderboard [coming in v2.0]

View and compare your statistics with peers on the internet.

3.14. User profiles [coming in v2.0]

Have more than one account to monitor statistics on the same computer

4. FAQ

Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous Address Book folder.

Q: How do I pronounce your name?
A: Think Pokemon.

5. Command Summary

  • Help : /help

  • Load : /load DATASET_NAME
    e.g. /load List of animals

  • List : /list

  • View : /view DATASET_NAME
    e.g. /view List of animals

  • Editor : /editor

    • New : /new DATASET_NAME
      e.g. /new Car brands

    • Edit : /edit DATASET_NAME
      e.g. /edit List of animals

      • Add : /add /w WORD /d DESCRIPTION
        e.g. /add /w Elephant /d Has a long nose
        e.g. /add /w Giraffe /d Has a long neck

      • Find : /find WORD [WORDS]…​
        e.g. /find long

      • Delete : /delete INDEX
        e.g. /delete 1

  • Start : /start DATASET_NAME
    e.g. /start List of animals

  • Stop : /stop

  • Stats : /stats [DATASET_NAME]
    e.g. /stats
    e.g. /stats List of animals

  • Settings : /settings

    • Theme : /theme dark/light

    • Hints : /hints on/off

    • Difficulty : /difficulty low/medium/high

  • Back : /back [home]

  • Exit : /exit