What kind of game are you planning to build?

  • We will be developing a 4-player cooperative space travel game.

What are the goals of the game, how do players win, how do they lose?

  • The objective is to navigate to a specified destination, while overcoming obstacles by working together as the crew of the space ship. The ship is made up of various compartments, that can be damaged or destroyed while travelling to the destination. The crew must work together to maintain the ship as various events occur that hinder progress.
  • The game is won when the ship reaches the specified destination.
  • The game is lost when all players die or the ship's final compartment is destroyed.

What are the interesting or unique aspects to your game?

  • Rooms of the ship:
    • Navigation Room - contains captains chair, course map, radar, and ship stats
    • Medical Ward - can be used to revive dead shipmates
    • Gunner Room (3) - for shooting at obstacles outside of the ship
    • Workshop - generate resources to fight aliens / fix the ship / upgrades and what not
    • Engine Rooms (2) - Must be refuelled periodically
    • Access Bay - Location of escape pods and where Alien encounters begin
  • Encounters:
    • Asteroids
    • Black hole
    • Enemy ships
    • Re-fuel
    • Fire / hole (Oxygen level depletion) / fix broken ship stuff
    • Alien Invasion
    • Hyper jump fuel injection
    • Broken light bulb
  • Items:
    • Wrench - hit enemies to damage; hit the ship to repair
    • Mighty Wrench - better version of basic wrench (constructed at repair shop)
    • Lazer Handgun - salvaged from defeated alien invaders
    • Mighty Lazergun - better version of Lazer Handgun (constructed at repair shop)
    • Lazergun energy - ammunition for Lazergun and mighty Lazergun; salvaged from defeated alien invaders
    • Scrap Metal - used to repair the ship or construct new ship rooms (not equippable); global variable for all users; attained by breaking asteroids / destroying enemy ships; picked up by flying ship’s path of motion
    • Ship fuel - basic fuel for powering the engines
    • Mighty fuel injector - must be injected into engines simultaneously for a huge speed boost
    • Flashlight - press F to use

What are the list of features of your game? Prioritize them into at least three categories: "Must Have", "Would Be Really Nice", and "Cool But Only If Ahead Of Schedule".

  • Must Have:
    • Mouse & Keyboard controls for crew, ship navigation, and gunner position
    • Navigation, gunner, and engine rooms
    • Asteroid, re-fuel, hole in ship hull, broken lightbulb encounters
    • Wrench, scrap metal, ship fuel, flashlight items
    • Projectile hitscan functionality
    • Rudimentary UI
  • Would Be Really Nice:
    • 3rd person navigator perspective & controls
    • Enemy AI ships controlled by fixed path bezier curves
    • Workshop, medical, and access bay room
    • Black hole, Alien invasion, hyper jump
    • Projectile physics
    • Polished UI
  • Cool But Only If Ahead Of Schedule:
    • Model Animations
    • Gamepad controls for crew and ship navigation
  • Outside The Scope Of The Class:
    • Ship & crew persist across missions; Ship is upgradeable
    • MMO-style gameplay

What are the major roles in your group's management?

  • Space Deputy - Anish

How will decisions be made? By leader, consensus?

  • We will be making decisions by consensus.

How will you communicate? Email, meetings in the lab, discussion board?

  • We have a shared google drive to house more permanent information as well as a slack/messenger group for day to day communication.

How will you know when you're off schedule, and how will you deal with schedule slips?

  • We will have a calendar to keep track of milestones. Our Space Deputy will be keeping track of the schedule on this calendar.
  • We will deal with schedule slips by keeping open communication as far as deadlines so that we can plan for slips ahead of time and assign more resources to a particular task if needed.
  • Figure out why there was a schedule slip, person who slipped will work to make up the time, ask for group help if needed.

Who will produce the weekly group status reports?

  • Each week will be a different person, found on our schedule

What are the development roles and who will handle them?

  • Graphics: Guillermo
  • Graphics/Networking: Anish
  • Game Engine/Networking: Amanda, Huajie, Yuxiang, Michael
  • Art/Sound: Michael

What tools will you use?

  • Visual Studio, OpenGL, Blender/Maya, Protocol Buffers

How will you do testing?

  • Unit Testing
  • Black box testing

How will you do documentation (both internal group documentation as well as external player documentation)?

  • Class website

Define a set of milestones with a specific definition of what each milestone is, what it means to complete each milestone, and when you expect to complete them. Define the milestones at two scales, a high level set of key milestones like integration and design freeze, and a low level set of weekly milestones.