Skip to content

Use Cases

Forns edited this page Dec 15, 2011 · 4 revisions

Use case diagram

Register

  • Description: An end user may register their account to begin playing K'tah.
  • Actor: End user.
  • Preconditions: None.
  • Flow of Events for Main Scenario:
    1. User inputs a desired username, password, and email address.
    2. Input is validated and server creates a new account ID for the player.
  • Alternative Scenarios:
    1. Pre-existing emails and usernames, as well as character restrictions / requirements may cancel the action.
  • Postconditions: A new account is created in the database.

Login

  • Description: An end user enters their K'tah account.
  • Actor: End user.
  • Preconditions: The user is already registered.
  • Flow of Events for Main Scenario:
    1. User inputs their account name and password, which is then validated and authenticated.
    2. Successful authentication results in a redirect to the main page.
  • Alternative Scenarios:
    1. User enters incorrect / non-matching credentials, in which case the login is rendered again with an error message depicting the problem.
  • Postconditions: Player's session is set to reflect their "logged in" status.

Create Game

  • Description: User hosts a new K'tah game-room.
  • Actor: End user.
  • Preconditions: User is registered and logged in.
  • Flow of Events for Main Scenario:
    1. User enters into the game lobby from the main menu and clicks the "Create Game" button.
    2. User enters a game name, which is then validated.
    3. Successful validation sends user to the game lobby, with them as host.
  • Alternative Scenarios:
    1. User does not enter a valid game name, and the action is canceled.
    2. User has created a game too recently (last 10 seconds), and the action is canceled.
  • Postconditions: Gamestate is set with defaults and adds host as the first player.

Join Game

  • Description: User joins a hosted K'tah game-room.
  • Actor: End user.
  • Preconditions: User is registered and logged in.
  • Flow of Events for Main Scenario: 1a. User enters into the game lobby from the main menu and clicks the "Join Game" button. 1b. User enters into the game lobby from the main menu and selects a game from the available list. 2a. User enters a game name, which is then validated. 3. Successful validation sends user to the chosen game lobby.
  • Alternative Scenarios:
    1. User attempts to join a game in progress, and the action is canceled.
    2. User attempts to join a full game-room (4 players already), and the action is canceled.
  • Postconditions: Player is added to the gamestate created by the host.

Play Game

  • Description: Players in a game room have "readied up" and are set to play.
  • Actor: End users.
  • Preconditions: Users are registered, logged in, and have successfully joined / created a game room.
  • Flow of Events for Main Scenario:
    1. User has entered a game room and has chosen a character class with which to play.
    2. User indicates that they are ready by clicking the ready button.
    3. Once all players are ready, the game begins.
  • Alternative Scenarios:
    1. Host leaves during the game loading / any time during the game, in which case it ends.
    2. Players lack the hardware or web-gl capacity to play, and are booted from the game.
  • Postconditions: None.