N.N.N.
Carvey Hor . CSE 380 . Spring 2009
INTRO .
TECH .
STORY .
OBJECTIVE .
GAMEPLAY .
CONTROLS .
GUI .
ART .
SOUND .
STORYBOARD .
380
Introduction
The contents of this site constitute a design document for the game N.N.N.,
a 2D side scroller under development by Carvey Hor for his CSE 380 individual project.
N.N.N. will feature basic elements of game programming such as collision detection,
gravity, real time physics, artificial intelligence, and multi-threaded rendering.
Technology
N.N.N. will be developed for the Windows Platform using a custom-made game engine
developed by Carvey Hor. DirectX will be used as the underlying rendering technology.
XACT will be used for all music and sound effects management.
Artwork and sound design will be as elaborate as time allows.
Story
Evil denizens are polluting the earth!!! And it's come to a boiling point.
From your metropolitan candy wrapper criminals to major corporations pumping toxic
waste into our sewers, you must stop them before they bring about the death of
our planet.
Objective
This game is unique
in that it is not based on either a traditional Hit Point system or a Timer system, but a combination
of both. The environment itself has a base amount of hit points,
and enemies scattered about the area passively generate pollution, each
contributing damage to the environment thusly.
The objective of each level is to clear the area of enemies before they destroy
the environment.
Gameplay
N.N.N. is a 2D side-scroller featuring gravity and jumping. As Carvey, the protagonist, you will wield an arsenal of weapons
to dispatch the ecological infidels that roam the land. The weapons you will employ
include:
- Melee:
- Pooper scooper! Quick and light.
- Metal recycling cans! Slow and heavy.
- Solar Powered Light Saber! Does not work in shadows.
- Projectile:
- Recycled Pizza Boxes! Sharp corners.
- Throw a bee hive! Splash damage!!
- Vehicles:
- EPAcopter! For levels requiring flight.
- The Chevy Volt! Up to 40 miles before using gas! Fueled by rage afterwards.
With a possibility of summoning EPA minions.
As enemies represent the timer aspect on the environment's HP, game difficulty
would drastically decrease as your kill count increases. So naturally, enemies
will cause more damage as enemy count decreases. Enemies vary in strength (or damage dealt)
, HP count,
and some possess regenerative abilities. Touching an enemy will temporarily stun the player
or knock him down.
Aside from his weapon arsenal, the player can stem the damage caused by the pollutants
by planting trees and posting eco-friendly ads on walls. Ads generate a single boost of
HP immediately, whereas trees take a little while to sprout, and then contribute a small
but constant boost of HP. These abilities are limited, and players must collect resources
from defeating enemies in order to use these techniques. Tree seeds are rare, whereas
recycled paper is uncommon.
A note on weapons: Ideally, weapons dropped by enemies should be extremely rare.
Instead, enemies drop a currency, which the player can use to purchase and upgrade
weapons in between levels. However, for the sake of simplicity, an alternate weapon
system may be implemented. One possibility is the player starts out with a limited
amount of ammo for certain weapons.
Controls
Keyboard Controls:
Move Left: A
Move Right: D
Jump: W
Use Weapon: Space
Cycle through weapons foward: J
Cycle through weapons backward: K
Post Ad: L
Plant Tree: I
Summon EPA Minions (maybe): O
Pause: P
Graphical User Interface
The GUI will consist of:
- Splash Screen: Simply displays a logo of N.N.N. and a start button that the user
presses when they are ready to play. Pressing start button will play a brief
scripted sequence explaining the back story of the game. While playing
"Press space to skip" should be displayed at the bottom.
If pressed, the game should immediately start.
- Pause Menu:
- New Game: If a game is in progress, first we'll pop up a dialog to make sure the user really wants to quit the current game.
If we conclude the user really wants to start a game, then the game state is reset and begun.
- Display Controls: If pressed, the game will display an info screen that includes a description of all game controls.
- Toggle Sound: Allows the user to toggle sound on/off.
- About: If pressed, the game will display an info screen with information about the game author.
- Exit: If pressed, the program will exit.
- In-Game GUI: The following will be displayed at all times:
- The environment's HP bar
- Icons and numbers representing the weapon and items inventory.
- Remaining enemy count
In addition, enemies will have a mini HP bar hovering over their heads. When all the
enemies in an area have been cleared, the player will be notified of victory,
and possibly additional game statistics such as number of trees planted.
If the environment dies first, a game over screen will be displayed.
- Game-Over GUI:
- Restart: The game state is reset and begun.
- Exit: If pressed, the program will exit.
Art
All artwork in the game will be original to the fullest extent possible. Some images
may be borrowed. The following needs to be created:
- Carvey: The game's protagonist. Animation will be needed for:
- Walking Right
- Walking Left
- Jumping Right
- Jumping Left
- Jumping Up
- Collide With Floor at high speed
- Stunned by enemy
- Knocked down by enemy
- Winning
- Losing
- Idle
- Planting Trees
- Posting Ads
- Weapons: For each weapon, we must define the following animations:
- Enemies: For each enemy, we must define the following animations
- Walking Right
- Walking Left
- Jumping Right
- Jumping Left
- Jumping Up
- Collide With Floor at high speed
- Attacked by Carvey
- Defeated
- Idle/Taunt
- Ceiling, Floor, & Wall Tiles: Each area will have multiple floors and
platforms to jump onto and off of. Simple tiles will be used for all
walkable/collidable surfaces. These tiles will have to clearly define
where the walkable surface is.
- A Perception of Depth:
The game will feature three layers of scrolling environment to simulate depth.
-
The far background will scroll at the slowest rate. It will depict
noncollidable background-y stuff such as city building silhouettes, the sky, the sun, birds, planes.
This layer will peek through gaps in the foreground.
-
The foreground is where our character will make his stand. The foreground
will scroll according to the player's movements, and is where all colliding
elements are.
-
A super-foreground may be implemented with simple artwork such as grass or
street pollution for bottom margins, etc,
going past at a faster but proportional rate to the
foreground and background.
Sound
Sound effects will be created to coincide with the following events:
- Walking
- Landing on a Platform
- Attacking: individual sound effects for each weapon
- Projectile attack landings
- Enemy receiving damage
- Enemy producing pollution (may one single representative noise,
or a subtle, infrequent noise for each enemy)
- The environment dying
- Carvey clearing a level
- Pause
- Unpause
- Out of ammo