Skip to content

Latest commit

 

History

History
756 lines (483 loc) · 19.1 KB

UserGuide.adoc

File metadata and controls

756 lines (483 loc) · 19.1 KB

icon Dukemon - User Guide icon

1. Introduction - What is Dukemon?

Ui
Figure 1. Home screen of Dukemon.

Welcome to Dukemon , the Flashcard app of the future!

Dukemon aims to streamline and gamify the process of learning words or definitions through the use of self-created digital flashcards. Supercharge your learning with Dukemon!

2. Getting Started

2.1. Installation

  1. Ensure you have Java 11 or above installed on your system.

  2. Download the latest Dukemon.jar here.

  3. Copy the file to the folder you want to use as the home directory of Dukemon (this is where your data will be stored).

  4. Double-click the Dukemon.jar to run the app.

  5. Before getting to the quick start instructions, get familiar with our interface and appication modes.

2.2. User Interface

UserGuideCommandBox
Figure 2. Regions of the UI where commands are entered (via CLI) and feedback from Dukemon is shown.
  1. Click on the CommandBox as shown above (region in yellow box) and type commands in.

  2. Use Enter to execute commands.

    1. e.g. Typing help into the CommandBox and pressing Enter will open the Help window.

  3. Text-based feedback for each command entered is shown in the ResultDisplay (region in red box).

2.3. Switching Modes

There are 4 application modes.

UGModes
Figure 3. Application modes
RestrictedHomeMode
Figure 4. Mode Display

In the highlighed section above, you can see the current mode you are in and the available modes.

To transition between them you have to enter the SwitchCommand that represents each mode into the Command Box that says Enter command here...

  • open Enter
    to enter open mode

  • start Enter
    to enter game mode

  • settings Enter
    to enter settings mode

  • home Enter
    to enter home mode

Requirements before changing mode

  • A bank should be selected

  • No game should be running

ModesAvailable
Figure 5. If other modes are available, they would be displayed beside the Command Box

Yes, it feels like a steep learning curve >_<

But do not worry as we have the AutoComplete Bar that auto completes the available commands whichever mode you are in.

2.4. AutoComplete Bar

AutoCompleteBar
Figure 6. AutoComplete Bar

The highlighted section shows, what commands are currently available. You can click them to automatically fill it in for you. Each of your keystroke will dynamically update the AutoComplete bar, just like the keyboard on your smartphone.

2.5. Drag and drop

To enable sharing of word banks between friends, You can drag and drop a particular word bank out of the app into your computer. Likewise, you can drag and drop a json word bank into your app.

Try it!

ℹ️
The drag and drop feature works fine on Windows, but exporting through drag and drop may sometimes crash the app on Mac.
To avoid this on Mac, simply use the export command instead.

2.6. QuickStart

UserGuideFlowOverview
Figure 7. General program flow of Dukemon, showing how the different parts work together.

Lets select the sample WordBank and play a game to get familiar.

  1. select sample Enter

    • This would allow you to switch modes

  2. open Enter

  3. start Enter

  4. guess <your_guess> Enter

    • keep guessing till the statistics screen appears

    • you can switch modes now

  5. home Enter

Getting comfortable? Ready to master the application commands?

Some typical commands to get familiar with are:

  • create <NAME>: Create an empty WordBank with specified name.

  • select <NAME>: Select and switch to WordBank with the specified name.

  • add w/<WORD> m/<MEANING>: Adds a new Card with specified Word and Meaning into the current WordBank.

  • list: List all Cards in the current WordBank.

  • start <EASY/MEDIUM/HARD>: Starts a Game session with the specified Difficulty. Default difficulty in Settings will be used if not specified.

  • guess <YOUR_ANSWER>: Make a Guess for the current Word whose Meaning is shown on the UI.

  • stop: Stops the current Game session.

  • exit: Exit Dukemon.

2.7. Purposes of each mode

HomeMode
  • Create/Choose a Wordbank

  • View Global Statistics

OpenMode
  • Create/Add/Modify Cards of your WordBank. (Each Card contains a Word and Meaning).

  • View Statistics belonging to a specific WordBank

GameMode
  • Guess Words based on each Meaning that appear as quickly as possible!

  • Finish the Game and view the Statistics for your game session.

  • Evaluate your performance

SettingsMode
  • Configure your preferred Settings. (change Difficulty, Theme etc.)

3. Commands

Command Format

  • Words in UPPER_CASE are the parameters to be supplied by the user.
    Eg. in add w/WORD m/MEANING, WORD is a parameter which can be used as
    add w/Charmander m/Fire starter pokemon.

  • Items in square brackets are optional.
    Eg. w/WORD [t/TAG] can be used as
    add w/Squirtle m/Water starter pokemon t/Water type or as
    add w/Squirtle m/Water starter pokemon.

  • 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/CS2040, t/CS2040 t/GRAPH etc.

  • Parameters can be in any order.
    E.g. if the command specifies w/WORD m/MEANING, m/MEANING w/WORD is also acceptable.

3.1. Switch Commands

(Available in all modes as long as WordBank is selected and game is not running)

3.1.1. To switch to home page: home

Welcome home.

Format: home

3.1.2. To open WordBank content: open

Opens the page to edit the WordBank selected.

Format: open

  • Use the select command to select a WordBank. Otherwise it won’t work.

3.1.3. Start the game: start

Start the game with the WordBank selected.

Format: start [DIFFICULTY]

  • Use the select command to select a WordBank. Otherwise it won’t work.

Examples:

  • start

  • start easy

ℹ️
Entering the start command after wordbank is selected will enter game mode. In event that there are fewer than 3 flash cards, the game would not run. You would have to go to open mode to add flash cards.

3.1.4. Customise game play: settings

Enters settings page, so that the user can customise the game play.

3.2. WordBank Commands load

(Available in Home mode)

3.2.1. Select a WordBank: select

Let Dukemon know what WordBank you have selected.

Format: select WORD_BANK
Examples:

  • select arithmetic

  • select sample

3.2.2. Create new WordBank: create

Creates a new WordBank with specified name.

Format: create WORD_BANK
Examples:

  • create CS2040

  • create Biology

3.2.3. Remove a WordBank: remove

Removes a new WordBank with specified name.

Format: remove WORD_BANK
Examples:

  • Remove Gen 3 pokemon

  • Remove Vocabulary

3.2.4. Import a WordBank: import

Import the WordBank from a specified folder path on your system.

Format: import w/WORD_BANK f/FOLDER

  • FOLDER is the folder where the WordBank file reside.

  • WORDBANK is the name of the file without the extension.

  • Dukemon can only read json WordBank files.

Examples:

(Use \ for Windows)

  • import w/cs2040_graph f/~/downloads

  • import w/fire pokemons f//Users/chrischenhui/data

ℹ️
We have a drag and drop feature.
You can drag and drop a file from your computer into the section which holds the _WordBank_s.

3.2.5. Export a WordBank: export

Export the WordBank to a specified file path on your system.

Format: export w/WORD_BANK f/FOLDER

  • FOLDER is the folder where the WordBank file reside.

  • WORDBANK is the name of the file without the extension.

  • Dukemon exports WordBanks into json files.

Examples:

  • export w/ma1101r theorems f/~

  • export w/biology definitions f/~/downloads

ℹ️
We have a drag and drop feature.
You can also drag and drop a WordBank out the app into your computer.

3.3. Card Commands card commands icon

(Available in Open mode)

3.3.1. Adding a flash card: add

Adds a new word-meaning pair to the WordBank.

Format: add w/WORD m/MEANING

Examples:

  • add w/Dukemon m/the Flashcard app of the future

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

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

ℹ️
There can be duplicate words, but duplicate meanings will be rejected.

3.3.2. Deleting a flash card: delete

Deletes the specified index from the WordBank.

Format: delete INDEX

  • Deletes the word at the specified INDEX.

  • The index must be a positive integer 1, 2, 3, …​, and must be a valid index within the list.

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

Examples:

  • delete 2
    Deletes the 2nd word.

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

3.3.3. Editing a card’s content: edit

Edits a card.

Format: edit INDEX [w/WORD] [m/MEANING] [t/TAG]

Examples:

  • edit 1 w/new word m/new meaning

  • edit 2 m/new meaning with tag t/tagged

3.3.4. Searching for a card: find

Finds entry whose word or meaning or tag 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

  • Word, meaning and tag will be searched

  • Words contained within will be matched e.g. formal will match Informal

  • Cards 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 any entries containing long in its word or meaning or tag.

  • find mammal fish bird
    Returns any entries containing mammal, fish or bird in its word or meaning or tag.

3.3.5. Viewing a WordBank's content: list

Views the content of a WordBank.

Format: list

3.3.6. Clear a WordBank's content: clear

Clears the WordBank by removing all cards.

Format: clear

3.4. Game Commands game mode icon

(Available in Game mode)

UserGuideGameSessionDiagram1
Figure 8. UI regions that are relevant when a Game session is in progress.

This section covers the actions and feedback that are relevant to the Game mode. The general layout of the UI when a Game is in progress is as seen above.

  1. The timer will be activated to reflect the time left before the Game skips over to the next card. (region in yellow box)

  2. The Meaning of the current Card is shown in the region contained by the red box. Based on this Meaning you will make a Guess for the Word it is describing.

  3. Hints (if enabled) will be periodically shown as time passes (region in the blue box) in a Hangman-style. The number of hints given differs across each Difficulty.

3.4.1. Game Mode - Starting game mode icon

The relevant command(s) are:

  1. Starting new game session:

    Format: start [EASY/MEDIUM/HARD]

    • Starts a game session with the currently selected WordBank and specified Difficulty. (WorkBank selection is done in Home mode.)

    • If no Difficuty is specfied, the default Difficulty in Settings will be used.

3.4.2. Game Mode - Playing game mode icon

UserGuideGameSessionDiagram2
Figure 9. UI regions that show feedback during a Game session.

During a Game, the Timer will change colour according to the time left (region in green box). Feedback for each Guess is shown via the ResultDisplay (region in the red box).

The relevant command(s) are:

  1. Making a Guess for a Word:

    Format: guess WORD

    • Makes a guess for the Word described by the currently shown Meaning. (non case-sensitive)

  2. Skipping over a Word:

    Format: skip

    • Skips over the current Word. (is counted as a wrong answer)

3.4.3. Game Mode - Terminating & Statistics game mode icon

UserGuideGameOverDiagram
Figure 10. UI regions showing Statistics and results after a Game session has completed.
UserGuideGameStopDiagram
Figure 11. UI regions showing feedback when a Game is forcibly stopped.

A Game finishes when all Cards have been attempted. Statistics are automatically shown upon completion of a Game (see Fig. 6 above).

The user can choose to stop a Game before it has finished. This will result in all current Game progress being lost, and no Statistics being collected or generated (see Fig. 7 above).

The relevant command(s) are:

  1. Stopping a Game (before it has finished):

    Format: stop

    • Forcibly terminates the current active Game session (all progress will be lost, and no Statistics will be reported.)

3.5. Settings Commands settings mode icon

(Available in Settings mode)

Goes into the settings menu.
Format: settings

3.5.1. Changing the theme: theme

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

Examples:

  • theme dark
    Changes the UI theme to dark.

darktheme
Figure 12. Dark Theme
  • theme light
    Changes the UI theme to light.

lighttheme
Figure 13. Light Theme

3.5.2. Turning hints on/off: hints

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

Examples:

  • hints on
    Turns hints on.

hintson
Figure 14. Hints on
  • hints off
    Turns hints off.

hintsoff
Figure 15. Hints off

3.5.3. Changing difficulty: difficulty

Changes the difficulty of the game.
Format: difficulty easy/medium/hard

Examples:

  • difficulty easy
    Changes the difficulty to easy. (Timer = 15 seconds)

difficultyeasy
Figure 16. Easy difficulty (15 seconds)
  • difficulty medium
    Changes the difficulty to medium. (Timer = 10 seconds)

difficultymedium
Figure 17. Medium difficulty (10 seconds)
  • difficulty hard
    Changes the difficulty to hard. (Timer = 5 seconds)

difficultyhard
Figure 18. Hard difficulty (5 seconds)

3.5.4. Changing Avatar : avatar

Changes the avatar in the home screen. The avatar is one of the 151 original pokemon, so pick and choose! (There is a secret avatar as well. See if you can find it!)
Format: avatar [0 - 151]
avatar 0 sets the avatars to random.

Examples:

  • avatar 0
    Changes the avatar to a random one everytime a new command is called.

avatarrandom
Figure 19. Random avatar, in this case, Porygon.
  • avatar 1
    Changes the avatar to 001 in the original Pokedex, which is Bulbasaur.

avatar1
Figure 20. Avatar number 1, in this case, Bulbasaur.
  • avatar 151
    Changes the avatar to 151 in the original Pokedex, which is Mew.

avatar151
Figure 21. Avatar number 151, in this case, Mew.

3.6. Misc. Commands

(Help is available in Home mode)
(Exit is available in any mode except Game mode)

3.6.1. Ask for help: help

Dukemon sends help.

Format: help

3.6.2. Take a break: exit

Dukemon says bye!

Format: exit

4. Statistics statistics icon

This section covers the statistics shown to the user.

4.1. Game Result

The game result is shown to the user every time they finish a game. It contains information of the finished game and some information of the WordBank.

We use a simple formula to calculate the score: floor of (Number of correct answers) / (Total questions) * 100.

annotated game results ui
Figure 22. Game Result UI.

4.2. WordBank Statistics

The WordBank statistics is shown on open mode and contains all information of the WordBank.

annotated wb statistics ui
Figure 23. Wordbank Statistics UI.

4.3. Global Statistics

The global statistics is shown on the main title page and contains all information regarding the user’s overall usage of the app.

annotated global statistics ui
Figure 24. Global Statistics UI.

5. FAQ

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

Q: How do I transfer my WordBank to my friend?
A: Export your WordBank to your computer, then transfer him the file. He can then import the file into his Dukemon.

Q: Do I have to save data?
A: Dukemon data are saved in the hard disk automatically after any command that changes the data. These commands are generally card commands. There is no need to save manually. Statistics are also stored automatically.

6. Command Summary

Command Type Command Keyword Parameter(s) (if any)

Switch Commands
(Available in all modes as long as WordBank is selected and game is not running)

home

open

start

[EASY/MEDIUM/HARD]

settings

WordBank Commands
(Available in Home mode)

select

WORD_BANK

create

WORD_BANK

remove

WORD_BANK

import

w/WORD_BANK f/FOLDER

export

w/WORD_BANK f/FOLDER

Card Commands
(Available in Open mode)

add

w/WORD m/MEANING [t/TAG]

delete

INDEX

edit

INDEX w/WORD m/MEANING [t/TAG]

find

KEYWORD [MORE_KEYWORDS]

list

clear

Game Commands
(Available in Game mode)

guess

WORD

skip

stop

Settings Commands
(Available in Settings mode)

difficulty

EASY/NORMAL/HARD

theme

DARK/LIGHT

hints

ON/OFF

avatar

INDEX

Misc. Commands

help
(Available in Home mode)

exit
(Available anywhere except Game mode)

7. Upcoming Features

7.1. Leaderboard [coming in v2.0]

View and compare your statistics with peers on the internet.

7.2. Reminders [coming in v2.0]

Smart algorithms to pop reminders for you to know which bank you have not visited and is most likely to forget soon.

7.3. User profiles [coming in v2.0]

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

7.4. Customizable Difficulty [coming in v2.0]

Create your own difficulties with customized time durations.