Skip to content

seankruer/eecs-290-super-power-robots

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game Design Document:

Super Power Robots

Sean Kruer, Tom Dooner, Owen Bell, Ian Dimayuga

sak107, ted27, oab7, icd3 STORYLINE: Super Power Robots takes place in the fantasy world of Fantastica. Players begin as the son of a famous Super Power Robot Gladiator. Enthralled by the success of their father, the player decides to grow up to be a Super Power Robot Gladiator himself. One day, the king of Fantastica declares that Super Power Robot Gladiator matches are now illegal! The king sends his army of bots through the land to the homes of each of the gladiators in the dead of night, destroying their precious bots and killing them if they fought back. The player’s father fights back, but before he is executed, calls over to the player, telling him to look under the barn and “Avenge MEEEEEEEE!” The players father is then brutally murdered right in front of the players. Vowing that you will get revenge, you go to the barn and find a trap door. In that door, you find a small, weak robot and a tunnel that leads to an underground coliseum where Robot Gladiators still do battle in spite of the law, and where anything goes in fights. Swearing revenge on the king, you hop into the bot and go to the coliseum to hone your skills. Throughout the game, the player will battle opponents and upgrade his bot until he feels he is ready to launch his campaign on the king’s castle, overthrowing a tyrant and bringing Super Power Robots back to the masses. PRIMARY MODES OF GAMEPLAY: There will be 4 primary modes of gameplay in Super Power Robots. Each of these modes of gameplay pertains to a certain number of robots on the player’s team, and will correspond to a certain level of challenge in the gameplay. ONE BOT The simplest mode of the game has the player taking control of only one robot, so that the player’s robot is the only one on his team. The player begins with a small, simple robot with a weak chassis and only a melee weapon, and is fighting robots of similar strength; as the player wins battles, they get currency to upgrade their robot in the methods specified below. TWO BOT The player gets an ally after unlocking the “Two Bot” mode in Super Power Robots. They cannot control the character directly, but they can set certain modes of behavior for the second robot, such as “Aggresive,” “defensive,” “resourceful,” etc. The player can upgrade their first ally’s tank just as they would upgrade their own. THREE BOT The player gets a second ally after unlocking the “Three Bot” mode in Super Power Robots. In this mode, the player can only control one bot at a time, but can switch their control between the bots at will. For example, if the player is in their own bot and one of their allies is moving into the area of a very powerful attack, the player can switch his or her control to that tank and move it out of the affected area, leaving their bot under the control of its designated AI. As with the Two Bot mode, the second ally bot can be upgraded between battles at the shop. CAMPAIGN The player and his two allies launch their campaign against the king, fighting their way from the local military garrisons by the players house, through villages and towns that are under military control, and finally all the way back to the king’s castle. As you succeed, you’ll get gifts of money from the people you liberate and robot parts from the opponents you destroy. After toppling the king, the rewards from the coliseum matches will increase substantially, due to increased viewership (as people can again watch Super Power Robots on cable). FREE FOR ALL The player is again in charge of only one bot, but in a match of up to 8 other bots, each of which is on its own. This mode of the game is even more challenging and hectic as there are more bots in the battle and you need to destroy them all to win! You’ll fight your way through tons of bots in this mode, but if you can win, there are great spoils to be had. However, if you lose in this mode, you permanently lose a piece of robot gear that your robot had equipped chosen at random. ONE VS. ALL In the most difficult mode of the game, you are alone in your tank against as many as 7 opponents, all of whom are working to destroy you. You’ll need to fight hard and have a very well-equipped bot to do well in this mode. Again, as in the last mode, a loss in this mode results in the loss of a piece of robot gear (armor, weapons, etc.) and a substantial monetary penalty. ROBOT CUSTOMIZATION A key aspect of Super Power Robots will be the ability of the player to customize the loadout of their robots. This means that the player will be able to pick from a wide variety of different weapons, armors, motors, etc. By using these different pieces of equipment the robot will be able to perform different actions on the battlefield. A robot with a gun, for example, would be able to shoot an enemy from afar while a robot with a hammer or axe could do far more damage but would only be able to do so at close melee range. Likewise different motors would allow your robot to move at different speeds and changing armor could enhance the protection on a robot while at the same time slowing the robot down. All these different pieces of equipment have a dramatic effect on the way that different robots would behave in battle and the AI would be able to handle how it needs to act with different pieces of equipment. Some of this behavior would be pretty basic, such as a robot with a hammer moving into melee range to attack while a robot with a gun would stay back and fire at the enemy. These different AI’s could adopt far more sophisticated behaviors as well. An example of this would be a robot with heavier armor would actively try to shield the weaker robots on the team from enemy robots that could hurt them. As mentioned above, though, the AI is also driven by behaviors selected by the players. This means that not only will a robot be influenced by the equipment that it has but also by the AI behavior selected by the player. A great example of this would be a robot equipped with heavy armor. A robot with heavy armor, as mentioned above, would be an ideal tank in a competition. With its heavier armor it could withstand more damage and thus could shield its weaker allies from attacks by the enemy. This means that it would try and interpose between enemy robots and its own allies. In addition to this behavior, though, the player would also be selecting an AI type that the robot would adopt. For this example lets use Aggressive and Defensive as two possible AI types (these are not necessarily behaviors that will make it into the game and neither is any individual robot going to restricted to two different types of AI). If the player were to select the Aggressive AI type for the robot then that means that the robot should be actively attacking the enemy team. By combining heavy armor and an Aggressive AI then the player has created a robot that will both attempt to attack as well as defending its friends. This could result in a robot (say that it is equipped with a melee weapon) that will attempt to move towards an enemy while simultaneously blocking that enemy’s line of fire. Thus as the robot draws close to its target it will also be absorbing attacks that could have instead been hitting its weaker ally. If the robot were instead told to use a Defensive behavior then rather than moving to attack the enemy robots it would instead stay close to its allies. While it remained in this position it would shield the ally from incoming attacks. This robot would then only actually attack an enemy if that enemy were to draw close enough that it is in range of the Defensive robot’s attacks. Not only are these customization options available to the player but they are also available to the computer controlled opponent. Before each battle a team of enemy robots would be assembled. The computer would do this simply be creating an appropriate number of robots using random bodies, weapons, and AI types. This would be the easiest way to do this but there are also a vast number of different limiters and directors that could be added to this process based on where in the game the player is. For example if the player is just starting out the game than creating an enemy robot that has the most high powered weapons and armor would simply be unfair. The player would be crushed by this enemy easily and that would not be any fun. Instead the the creation process would be dictated by a number of variables such as where in the game the player is as well as the strength of the different robots at the players disposal. This would ensure that the game remains relatively balanced through out rather than being punishingly difficult one fight and incredibely easy the next. WHAT MAKES THIS GAME FUN? Let’s be honest, there are a lot of things. The action of fighting robots is great; everyone loves a top-down tank game. That’s just a fact. The continuity of the game (especially because of the save feature) is also a huge draw; the player feels connected to our protagonist as he struggles to avenge his father’s wrongful death. The “BeyBlades” style approach to robot customization is something that gives the player a lot of freedom in how they want to play; should the player want to have a minimal role in battles, they can put all of their money into the ally bots and sit back in the fight, shooting long-range attacks. Should the player want to be the hero, he or she can put all of their money into their own bot and become an unstoppable killing machine. He or she can play a melee bot with heavy armor, a slower, constantly damaging ranged bot, or a fast, heavy-hitting, and frail bot that runs away while hitting slower bots hard. The RPG elements of seeing constant improvement of your character as you play is a huge draw, and this addition to our game will be fun. GAME STATE (TRANSITION DIAGRAM): ALL GAME ENTITIES AND HOW THEY BEHAVE: Outside of the entities required to make the game run, we plan to have the following in-game entities:

Robot - The superclass of the various kinds of robots that will be featured in the game. We plan to have a few types of robots. Each robot will have intrinsic properties, such as horsepower (it will require more horsepower to move quicker with heavier weapons), power level (each robot can only have so much power to distribute amongst weapons), and perhaps other features too.
    ThreeSidedRobot - A triangularly shaped robot which has three sides that objects can be attached to. For example, a player may wish to outfit his three sided robot with such items as a Buzz Saw, a Flamethrower, or a Glue Gun. (More of these will be outlined below)
    FourSidedRobot - A square shaped robot that can be outfitted with the same items as the three sided robot.
Weapon - Robots maintain a data structure of which weapons they are currently using. The robot class is responsible for determining max move speed and other calculations based on the weapon type. Of course, this is a superclass which will be inherited by the individual subclasses for each weapon type.
    BuzzSaw - A rotary-saw which can be attached to an available bot opening. The saw can be used to deal massive damage to enemy players at close range.
    GlueGun - A weapon which will litter the playing field with sticky goop that will slow the opposing player down. (medium range)
    Laser -  A high-power item that will deal constant damage to the enemy robot as long as it is pointed at the enemy.

There will be additional classes which govern game flow (i.e. through the game state transition diagram), but those classes do not map to in-game entities. INVENTORY OF ARTWORK The artwork as a whole will probably be fairly simply (this is a group of programmers after all).

Robot bodies: the basic bodies on which the robot can be built.  These would be fairly simple and come in the two varieties described in the game entities: three-sided and four-sided
Weapons and Armor: these would be small models that would be attacked to the sides of the robots.  Since they should be fairly small their level of detail will not have to be very high so they should be fairly easy to create
Weapon effects: these would be the result of different weapons.  This would include things like the beam from the laser or the glue splat left behind by the glue gun
Other: the game is still a work in progress so it is quite possible that new needs for art will arise as the game is created.  This could include things like details for the battle arenas or art for the different menues

DESCRIPTION OF INTERACTIONS: Robots will obviously collide with each other and the game walls. The robots’ items will perform basic collision detection to see if they have been damaged by an opposing enemy’s weapon. If so, the player’s robot’s items will be destroyed. Other than the robot battle phase, there is not much to collide. WORK DIVISION: Work will roughly divided up as follows: Ian - Overall class structure & AI Sean - Main Menu & Game Flow Tom - Robot Arena Owen - Art & Weapon programming

FUTURE WORK SCHEDULE:

Layout the overall class structure & begin work on game art
Create a working robot arena with moving bots driven by rudimentary AI
Begin adding to the AI by included behavior states and start creating menus
Add in weapons and modify the AI to use them
Add in remaining content such as story, weapons, music, and any remaining art

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%