Docstoc

Group 1 - Download as DOC

Document Sample
Group 1 - Download as DOC Powered By Docstoc
					       Hemp Creation

         (Group 1)

M-Type Game Design Document
Group 1                                                                     8/31/04
Abdool, Kevaad
Dull, William
Libaire, Jesse
Rinaldi, Francesco

                                M-Type Game Document


Game overview:
       The story is that Mario is sent out to buy some pie for Princess Peach and bring it
back to the castle; upon his return he discovers that the princess as well as Yoshi have
been brutally murdered. Thus your quest for revenge begins.

Game Play:
        M-Type is an R-Type style of game play with Mario as the main character who
goes on his adventure with his trusty cloud. You will be riding your cloud through steady
scrolling levels. Mario will gain the ability to throw fireballs and hammers, as well as
leveling them up during missions. Mario will also be able to leap from the cloud and
stomp on the enemies, doing this he better make sure that he lands back on the cloud to
stay alive. Hitting “?” Blocks will give you a power up randomly. You can either get
Fire Ball, Hammer, or Random points. When you die, you gain the ability of you backup
Power up. You obtain a Backup Power up by picking up a PU when you already have
one. Your old PU will be saved in your inventory, which will be displayed on top of the
screen. Plans for technology consist of our own created tile editor and incorporate a tile
engine. We plan on having our own particle engine. Levels will also have split paths
that you can choose but they will ultimately take you to the end.

Workload:
     William Dull:
     Tile editor – Start Date: 09/07/2004        End Date: 09/12/2004
     Purpose: to easily create levels for the game

       Tile engine – Start Date: 09/12/2004       End Date: 09/17/2004
       Purpose: to load up the levels that was created with the editor. It will contain
       enemy waypoints and player start points.

       Particle engine – Start Date: 09/17/2004   End Date: 09/20/2004
       Purpose: This will be mainly for Smokey’s Cloud effect as well as enemy deaths
Jesse Libaire:

AI: Start Date: 09/13/2004 End Date: 09/24/2004
Purpose: This is the AI for the Enemies and the boss. The workload is split up
between the different types of enemies and the bosses.

Collision: Start Date: 09/16/2004 End Date: 09/20/2004
Purpose: This tests all the interaction between the Player and the enemies as well
as the weapon attacks and the enemy.

Input: Start Date: 09/11/2004          End Date: 09/14/2004
Purpose: The way to interact with the player, it will have basic input, as well as
buffered input. Also the ability to plug in a joystick or controller.

HUD: Start Date: 09/16/2004             End Date: 09/19/2004
Purpose: this will show the stats of the player on the screen at all times. The score
of the player, the level that you are on, the number of lives, the remaining HP for
Smokey, the weapon you are currently using and the weapon you have as back up.

Class Hierarchy: Start Date: 09/07/2004            End Date: 09/10/2004
Purpose: this is the class list of all the entities in the game. Starts with a base
class and all other entities are derived from the base.

High Score Table: Start Date: 09/20/2004 End Date: 09/24/2004
Purpose: to keep a record of ranks for each person

Francesco Rinaldi:
Documentation: Start Date: 09/07/2004        End Date: 09/12/2004
Purpose: a detailed description of the game. Also includes the interactivity
matrix.

Scheduling: Start Date: 09/08/2004           End Date: 09/12/2004
Purpose: to keep the team on track of our goal

Integration: Start Date: 09/09/2004           End Date: End of Project
Purpose: to put all of the teams code into one solution to create the game. This
step is mainly done as soon as work load get done.

Bitmapped Fonts: Start Date: 09/07/2004      End Date: 09/09/2004
Purpose: to be able to use our own created font that is kept on a bitmap.

Menu System: Start Date: 09/11/2004          End Date: 09/12/2004
Purpose: create a menu system to display and select game options. Play, options,
and exit. In options you can choose to select the game difficulty.

Difficulty Selection: Start Date: 09/12/2004            End Date: 09/13/2004
       Purpose: to change the difficulty of the game, it will change the power of your
       attacks as well as the amount of points that you gain for killing the enemy

       Learn Direct Show: Start Date: 09/14/2004            End Date: 09/16/2004
       Purpose: to be able to include a movie intro and an outro.

       Kavaad Abdool:
       Animation: Start Date: 09/16/2004      End Date: 09/20/2004
       Purpose: to give the game life.

       Game Play: Start Date: 09/10/2004 End Date: 09/14/2004
       Purpose: this is the main game mechanics. All the moving, jumping, Smokey
       movements, and shooting the weapons.

       Cheat Codes: Start Date: 09/23/2004            End Date: 09/26/2004
       Purpose: 3 cheats: invulnerability, level skip, Kill every thing!

       Level Design (level 1): Start Date: 09/16/19         End Date: 09/19/2004
       Purpose: there are going to be 3 levels in the game. This is only for the first level.
       Level Design: Start Date: 09/21/2004                 End Date: 09/28/2004
       Purpose: the remaining level designs

       Power ups: Start Date: 09/14/2004          End Date: 09/16/2004
       Purpose: the two weapons, Fire Balls and hammers with them leveling up

Schedule:
      See Excel file: Group 1 Schedule



Component Interactive Matrix:
     See Excel file: Group 1 Interactivity Matrix

Character Backgrounds:




              Mario: Main character of M-Type. Also known for many other super
amazing side scrollers, but this new adventure is a lot different and more meaningful.
His main mission is to kill Bowser and avenge the death of Peach and Yoshi. It turns out
that Bowser wasn’t the killer but it was really Conker.
                       Smokey The Cloud: Mario rides Smokey on his adventure. He’s
able to move up, down, left, and right. As enemies hit Smokey he starts to disappear, in
order to regain his health you must pass over another cloud.




                 Princess Peach: Mario’s woman for many years. In this game she
was murdered by Conker.




              Yoshi: Mario’s best friend he was also murdered by Conker.




               Bowser: Mario’s Archenemy for many years and in this game he is
accused of murdering Princess Peach and Yoshi. Bowser is the boss in the second level.




                 Conker: First enemy in the Mario Universe. He’s extreamly angry that
the Mario games are selling more than his own, so he decided to kill Princess Peach and
Yoshi in order to deceive Mario in killing Bowser and then finally killing Mario. Conker
is the boss in the final level.



             Koopa Troopers/Goombas: Bowser’s foot soldiers that patrol the
Mushroom Kingdom creating mischief. These are the main enemies that you have to kill
in the game.



Paper Mockup:
      See Art Paper
Level Descriptions:
       Level 1: Normal day in the Mushroom Kingdom. You hop on your cloud and
head to the store to buy some pie for Peach. On the way there you encounter flying
Goomba.

         Level 2: After discovering the death of Peach and Yoshi. Koopas are the enemies
in the level and at the end of the level you fight Bowser.

       Level 3: you discover that Bowser isn’t the killer and he hints to you that Conker
has been around killing. So you now you play trough this level, and find Conker and kill
him. In this level you fight Flying Koopas and Flying Goombas.


Abilities:
        Stomp: it’s the weapon that you start the game with. You have the ability to jump
on to the enemies and kill them.

        Fire Ball: Fire Balls are shot and flown across in a straight line. This power can
be upgraded by picking up the item again. As the weapon levels up the size of the Fire
Ball increases.

       Hammers: When shot, the hammer flies in an ark fashion, killing anything in its
path. This weapon is also upgradeable. As it upgrades it increases the amount of
enemies it can kill.



Extras:



                        Item blocks: When hit, an item will be given randomly.

               Items:
                      1. Fire Ball power up/ upgrade
                      2. Hammer power up/ upgrade
                      3. Random points!
                          rand() % 500 + 1;
               *If you have a power up and get a new power up the old one get saved in
               you inventory. When you die you get to use the saved power up.

       Floating clouds: these are random clouds that float in the air, when Smokey
       collides with one of them his health is restored.
In Game character Specs:
      Mario: 5 pixels on the X
             7 pixels on the Y when jumping only
             1 HP
             3 Lives

      Cloud: 10 pixels on the X
             10 pixels on the Y
             100 HP

      Stomp: 5 pixels on the X
             7 pixels on the Y
                    Enemy dies on stomp

      Fireball: 15 pixels on the X
                0 on the Y
                Easy: 100 pts of Damage
                Med: 75 pts of Damage
                Hard: 50 pts of Damage

      Hammer: 10 on the X
              15 on the Y
             Easy: 200 pts of Damage
             Med: 50 pts of Damage
             Hard: 25 pts of Damage

      Goombas: 5 on the X
                3 on the Y
                Take 25% of Smokey’s Health
                100 HP
         Point Value for kill
            Easy:
                Stomp – 50 pts
                Fire Ball – 25 pts
                Hammer – 10 pts
            Med:
                Stomp – 100 pts
                Fire Ball – 50 pts
                Hammer – 20 pts
            Hard:
                Stomp – 200 pts
                Fire Ball – 100 pts
                Hammer – 40 pts
      Koopas:   3 on the X
                7 on the Y
                Takes 50% of Smokey’s Health
                200 HP
          Point Value for kill
             Easy:
                 Stomp – 100 pts
                 Fire Ball – 50 pts
                 Hammer – 25 pts
             Med:
                 Stomp – 200 pts
                 Fire Ball – 100 pts
                 Hammer – 50 pts
             Hard:
                 Stomp – 400 pts
                 Fire Ball – 200 pts
                 Hammer – 80 pts
      Health Clouds:
             Easy: 100 HP
             Med: 75 HP
             Hard: 50 HP



HUD
      Score: displayed on upper left hand corner
      Level: displayed on upper right hand corner
      Smokey’s Health: displayed on bottom left hand corner
      Active Power up: displayed on bottom right hand corner
      Back up Power up: displayed in between Score and Level display.
CLASS HIERARCHY
GAME CLASS

class CGameMain
{
private:
enum {GAME_INIT = 0, GAME_RUN, GAME_OVER, GAME_SHUTDOWN };

       static CGameMain *pGameInstance;
       // DX Manager Pointers
       ClassDirect3D *pD3dInstance;
       CBmpManager *pBmpInstance;
       CDirectInput *pInputInstance;
       CSoundManager *pSoundInstance;

       // State of the Game
       int iGameState;


       // BmpIDs
       int iFontID;

private:
        CGameMain(const CGameMain&);
        CGameMain &operator= (const CGameMain&);
public:
        static CGameMain *GetInstance(void);
        CGameMain(void);
        ~CGameMain(void);
        void GameInit(void);
        void GameRun(void);
        int GameMainMenu(void);
        int GamePausedMenu(void);
        int GameOptionMenu(void);
        void GameShutDown(void);
};

BASE CLASS
CBase      - used to create all ingame objects

CLASSES INHERITING FROM BASE
CFireball  - contains info on fireball powerup
CHammer            - contains info on hammer powerup
CPlayer            - contains info on player
CEnemy             - contains info on enemies
CBlock             - contains info on blocks
CCloud                 - contains info on clouds

/////////
//CBASE//
/////////
Enums
          eDirections{NORTH, SOUTH, EAST, WEST}
          eState{OFF, ON}
          eWeapon{NOTHING, FIREBALL, HAMMER}

Variables
       int m_iXPos - objects x position
       int m_iYPos - objects y position
       int m_iXVec - objects speed across x
       int m_iYVec - objects speed across y
       int m_iKey - bitmap key of the object
       int m_iDirection - direction object is facing

       bool m_bVisible - is the object alive/visible

Functions
       bool collided(CBase *object)
              - compares this and object and returns true if they collide

Accessors
       one for each member variable
Modifiers
       one for each member variable

///////////
//CPLAYER//
///////////
Variables
           int m_iCurItem - what powerup the player is currently using
           int m_iHeldItem - what powerup the player is just holding
           int m_iLives - how many lives the player has

       bool m_bGod - is the player invincible
       bool m_bCloud - is the player on his cloud

Accessors
       one for each member variable
Modifiers
       one for each member variable
///////////
//CENEMY//
///////////
Variables
           int m_iCurHP - the enemies current hit point total
           int m_iMaxHP - the enemies max hit point total
           int m_iDamage - how much damage the enemy does to smokey

        bool m_bFlying - is the enemy capable of flight

Accessors
      one for each member variable
Modifiers
      one for each member variable

///////////
//CHAMMER//
///////////
Variables
           int m_iHits - how many enemies the hammer can hit before it dies
           int m_iDamage - how much damage the hammer does to enemies
Accessors
           one for each member variable
Modifiers
           one for each member variable

/////////////
//CFIREBALL//
/////////////
Variables
           int m_iSize - how big the fireball is
           int m_iDamage - how much damage the fireball does to enemies

Accessors
       one for each member variable
Modifiers
       one for each member variable

//////////
//CCLOUD//
//////////
Variables
           int m_iCurHP - the clouds current hit point total
           int m_iMaxHP - the clouds max hit point total

Accessors
       one for each member variable
Modifiers
       one for each member variable

//////////
//CBLOCK//
//////////
Variables
           bool m_bOpened - has the box been opened/is it hittable

Accessors
       one for each member variable
Modifiers
       one for each member variable

/////////////
// CMENUITER //
/////////////////
Variables
           Int m_iIterState;
Accessors and Modifiers


Game Flow:

                                     Main Menu



                  Play                Options              Exit Game



           Main Game              Difficulty       Key
           Loop                   Settings         Binding



   (If Paused)
   In Game Menu


 Return         Exit
 to game        Game


 WIN              LOSE

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:11
posted:3/20/2010
language:English
pages:13