Requirements Document (Version 2) - LayeredPlatformer/LayeredPlatformerUnity GitHub Wiki

Requirements Document Version 2

Requirements Document

Layered Platform Unity Project

1 Project Overview

This project’s purpose is to create a mobile game using the Unity3D game development tool.

The game will be developed as a 2D platformer game with an additional "layered" depth aspect. This game will be released to the Android and Apple mobile app markets.

2 Document Scope

This Requirements Document outlines the Functional Requirements for the Minimum Viable Product and a Semester Milestone goal.

3 Minimum Viable Product

3.1 Screens

  • 3.1.1 In-game Screen
  • This is the main screen where the game is played. It shows the player, controls, etc.
  • 3.1.2 Start screen
  • This screen allows the user to start and exit a game
  • 3.1.3 Pause screen
  • This screen appears when a user pauses the game and allows the user to resume or exit the game.
  • 3.1.4 Story screen
  • This screen serves as a mechanism to move along the plot of the story. This will primarily show dialogue and allow the user to skip it entirely.
  • 3.1.5 Ending credits screen
  • At the end of the game, ending credits are shown. The start screen will then load.
  • 3.1.6 Screen Assets
  • Graphic assets (animations, buttons, images, etc.) will be created for the screens. In many cases, these assets will be shared.

3.2 Player abilities and attributes

  • 3.2.1 Left/right movement
  • This movement will be comparable to left/right movement abilities in standard 2D platformers
  • 3.2.2 Jump
  • The player can jump when grounded.
  • 3.2.3 Basic attack
  • The player can attack enemies with a basic short range and a basic long range attack. These attacks will both be untargeted attacks that damage enemies within a certain radius.
  • 3.2.4 Health
  • The player has finite "health". When this health runs out, the player will die and return to the most recent game checkpoint.

3.3 Time Layers

  • 3.3.1 There are three layers
  • The level may not always show all three layers, but there will not be more than three or less than one layer shown at any time.
  • 3.3.2 Each layer represents a time period
  • These time periods are Ice Age, Industrial, and Apocalyptic. The details of these time periods are beyond the scope of this document.
  • 3.3.3 Layers are translucent
  • Future time period layers are visible as low opacity overlays displayed over the current layer
  • 3.3.4 LayerJump
  • The player can cycle through time layers using the "LayerJump" ability.

3.4 Shadow

  • 3.4.1 Shadow trail
  • The player has a time shadow that trails behind his or her onscreen character.
  • 3.4.2 ShadowBlink
  • The player can teleport to the layer and position of the shadow using the "ShadowBlink" ability.

3.5 Introduction Level

  • 3.5.1 Plot introduction
  • This level will introduce major characters and the basic premise of the game's plot (as described in 3.7)
  • 3.5.2 Control tutorial
  • This level will teach the player how to use the controls and how to meet basic objectives, such as pushing buttons.
  • 3.5.3 Level assets
  • This level will need music and images.

3.6 Full Level

  • 3.6.1 Minor enemies
  • This level will contain many minor enemies for the player to defeat
  • 3.6.2 Puzzles
  • This level will have a few puzzles for players to solve using the main player abilities.
  • 3.6.3 Level assets
  • This level will need music and images.

3.7 Story Summary

This game tells the story of a group of Watchers (beings that protect the sanctity of time.) The playable character and protagonist is an apprentice to the Master Watcher. This apprentice sees something wrong with the timeline on the planet Earth and decides to investigate.

This investigation reveals that the Watcher named Charity has altered the original timeline for selfish reasons. The apprentice follows the rogue Watcher’s "Clockwork Minion" robots into the past, defeats them, and encounters Charity herself. The apprentice defeats Charity and restores the timeline to its correct state.

3.8 Cross-Platform

  • 3.8.1 Android
  • This game will run on Google's Android platform and be released on the Google Play store.
  • 3.8.1 iOS
  • This game will run on Apple's iOS platform and will be released on the Apple App Store.

3.9 Assets

  • 3.9.1 Terrain
  • Each layer will have a unique set of terrain images which are used as the ground for the player and enemies.
  • 3.9.2 Player
  • The player will have associated images and animations
  • 3.9.3 Enemies
  • Enemies will have associated images and animations
  • 3.9.4 Background
  • Each layer will have a corresponding background image (to help keep layers distinct in a user's mind).
  • 3.9.5 Music
  • Each layer on each level will have music associated with it.

3.10 Enemies

  • 3.10.1 Basic Enemies
  • The player will have a number of minor enemies to fight before reaching the Watcher at the end of the level. Image assets are required for these enemies.
  • 3.10.2 Charity Watcher
  • This enemy will act as a "boss" and will have similar abilities to the apprentice Watcher. This enemy will have the ShadowBlink ability. Image assets are required for this enemy.

4 Semester Milestone

4.1 New levels

  • 4.1.1 Number of levels
  • There will be 8 total levels
  • 4.1.2 Final level objective
  • There will be an "End boss" to beat on each new level. This will be a Watcher, as described in requirement 4.2.
  • 4.1.4 Level theme
  • Each level will be thematically related to its Watcher. The specifics of these thematic details are beyond the scope of this document.

4.2 List of Watchers (Inspired by the 7 Virtues)

  • 4.2.1 Charity Watcher (See 3.10.2)
  • 4.2.2 Temperance Watcher
  • This Watcher is somber and uses its abilities sparingly, but its attack is very strong.
  • 4.2.3 Chastity Watcher
  • This Watcher is very conservative in appearance, with lots of clothing. It avoids all contact and has to be chased down to fight.
  • 4.2.4 Diligence Watcher
  • This Watcher has a very weak attack, but it is also very resistant to damage. It wins by attacking repeatedly and persistently.
  • 4.2.5 Patience Watcher
  • This Watcher tries to bait the player into traps and other unfavorable situations rather than directly attacking.
  • 4.2.6 Kindness Watcher
  • This Watcher's attacks actually enhance the player's abilities, but the enhancements are dangerous. For example, the player's jumps become too powerful and they accidentally jump off a cliff.
  • 4.2.7 Humility Watcher
  • This Watcher reflects all attacks back to the player. The player must determine how to make Humility defeat itself.
  • 4.2.8 The Master Watcher
  • This Watcher has a combination of the most powerful attributes of all other Watchers.

4.3 Player changes

  • 4.3.1 Special Abilities
  • As the player progresses through levels, they will pick up additional special abilities (such as the ability to temporarily freeze time). These special abilities are not yet fully determined and are beyond the scope of this document.

4.4 Story changes

The story's beginning and ending remain largely unchanged. The apprentice investigates earth, find problems, and ultimately restores the timeline to where it should be.

The difference is in the Watchers. Instead of one rogue Watcher, there are 8 total Watchers (described in requirement 4.2). As the apprentice defeats each Watcher, it becomes apparent that the Watchers are being controlled. As each Watcher is defeated, they are freed from slavery and begin to help the apprentice.

The final Watcher, the Master Watcher, is revealed to be the evil mastermind. With the help of the Virtuous Watchers, the apprentice defeats the Master Watcher to restore the timeline.

⚠️ **GitHub.com Fallback** ⚠️