Our game is a simple 2-D platformer with the goal of going from start to end of a level with a myriad of obstacles.
2D Platformer
A traditional 2D platformer with an emphasis on speed and exploration
GamePlay
The player must go on an adventure by running and jumping there way to victory.
Target audience & platforms
A casual audience looking for a modest, fun experience.
Look and Feel
The game is colorful and the controls are responsive.
How to Play
The player is controlled via the keyboard. The WASD keys are used to move through the levels, space bar is used for jumping, and left control is a sprint used to increase player movement significantly. The goal of the player is to go through every level, avoiding obstacles, collecting treasure, and reaching the end.
Story
A narrative
was never quite a priority for our game.We developed this game with gameplay as the top priority.The story we have as a baseline is based
around the player character trying to sprint across the world to safety, while
avoiding ghosts and Toastfighters.
Artwork (design)
The art is currently made from using assets from OpenGameArt.org. These are citations for the art.
CodeManu. (2015, February 26).
Orchestral Adventure. OpenGameArt.org.
https://opengameart.org/content/orchestral-adventure.
Surt. (2011, October 31). Generic
Plaformer Tiles OpenGameArt.org.
https://opengameart.org/content/generic-platformer-tiles.
ArMM1998. (2017, July 18). Zelda-like
tilesets and sprites. OpenGameArt.org.
https://opengameart.org/content/zelda-like-tilesets-and-sprites.
Heads Up Display (HUD)
The HUD currently only displays the character's health in the top left.
Player Character
The player character is an adventurer in a red shirt who is determined to return home. The player can move left
and right, as well as up and down by using the jump button. The player can also only jump when colliding
with something, this helps to avoid infinite jumps.The player can also sprint by holding the left
control key, this allows them to move much quicker.The player’s health is a value that changes
based on interactions the player has while playing the game.
Enemy 1: Toastfighter
The first kind are the Toastfighters,
who patrol a radius assigned to them.This
enemy sticks to its patrol and does not chase the player, they can damage the
player upon making contact, however.The
player will have to avoid the Toastfighters by jumping over them.
Enemy 2: Ghost
The other type of enemy is
the ghost.Ghosts are floating enemies
which can pass through walls and floors to reach the player.When the player enters their radius, the
ghosts will give chase to the player, until leaving its radius. These ghosts
cannot pass through the player and will instead give them a bump, as well as a
bit of damage when making contact.
Level Design
The scenes
for the levels were created using Unity’s tilemap editor and CCO sprites from
opengameart.org (sources for art are listed in references).The tilemaps have different layers for different
level mechanics.There are two layers
dedicated to background tiles which are there simply for decorative purposes.These layers have no collision and are behind
the player’s layer.The most important
tile is the ground tile, which has collision enabled meaning it is where the
player and enemies will be interacting.There is a layer made with the purpose of having a moving set of tiles
that move left and right, which the player will need to use to progress through
the level.Aside from the tilemaps there
are also invisible 2D box colliders that perform specific functions.One is across the bottom of the level that causes
the player to reset if they fall off the level.The other collider is at the end of the level and upon contact sends the
player to the next level.
Global Elements
The camera follows the player as they traverse the level, it is able to go left and right with the player throughout the level. The main boundary for the player is the risk of falling.
Player View
The game has a camera that follows the player throughout the level, allowing for backtracking and some exploration of the levels. The player has health displayed in the top left as mentioned in the HUD section.
Game Flow Chart
The player moves and gets used to their environment
-> encounters a hill they have to jump over (teaches them to jump)
-> upon jumping over the hill they see a moving platform with bottomless pit, if they fall they must start over from the beginning (teaches consequence of falling)
-> player encounters first enemy after the platform, has to jump over them
(player learns about enemy)
-> the player overcomes and learns from these trials and can complete the level
Technical
The game is currently slated to be played on PC. It is developed in Unity, with low specification requirements. It is controlled using keyboard and mouse.
System Requirements
The game will run on low specification requirements. It should be able to run on most platforms.
Game Architechture
The flow of the game is to go from level to level, exploring to find hidden areas. The game is over when either the player gives up or reaches the end.
User Interface (controls)
It is controlled using keyboard and mouse. WASD keys are used to move and can be combined to move diagonally when jumping. Jumping is done with the spacebar. There is also the sprint feature which utilized with the left control key.
Marketing
Explore great 2-D locations with hidden areas
Overcome obstacles and take on troublesome enemies
Challenge players to get through levels as quickly as possible
Development
As stated previously, the game is made in Unity so many of its systems are built in. However, we have created scripts to set up particular mechanics within the game, as well as improve its presentation. Our team is split into different roles to deliver different mechanics and systems.
Scripts for Mechanics/Features
Scripts set up for enemy behavior and movement. (floating, pursuing, and patrolling behaviors)
Scripts for camera movement and style (smooth movement with player)
Scripts for UI (Player health display)
Scripts for Player movement (sprinting, jumping, key mappings)
Scripts for level mechanics ( moving platforms, scene transitions, resets)