Final Project Blog Post (Assignment due Dec. 4, 2017)

Background:

Originally, I had thought to recreate 3D Pinball for Windows – Space Cadet. However, after a weekend of reflection (and I just think pinball gets a bit boring, after a while), I thought about trying to create something original. It will still be a game, of course, but one more of my own design.

To start, the game will consist of 4 mini-games — small games without too huge objectives. To play homage to the idea which started this all, the level selector will be based off of pinball, so the level the player gets to play will be all up to their luck and skill at pinball. The four mini-games will be: Clear the Asteroids!, Dodge the Lasers!, Intergalactic Pong!, and Peaceful Negotiation!. Clear the Asteroids! will be a quick game where the player uses a ball and a paddle to clear the field of asteroids. Dodge the Lasers! will be a game where lasers will randomly spawn at the top of the screen and the player will have to dodge them. Intergalactic Pong! will be a game of pong against the computer — if I can figure out coding the AI properly. Peaceful Negotitation! will be a game where the player has to smooth-talk (using dialogue options) alien invaders.

The controller will resemble a kind of classic game pad with two buttons, but instead of a joystick, there’ll be a potentiometre. I don’t know how big I want it, but I definitely don’t want it to be too clunky.

Parts I’ll Need:

  • 2 Push Buttons
  • 1 Potentiometre
  • Acrylic or some other material for the controller’s casing

What I’ll Need to Learn:

I don’t think I’ll need to learn anything too out of the box. Mostly, I’ll just be learning a good way to integrate AI into my game and a way to integrate some sort of gravity system into my pinball game.

Sketch + Block Diagram:

Most Difficult Parts:

  1. Implementing gravity for believable pinball interactions.
  2. Implementing an AI to go up against the player in pong.
  3. Creating a well-designed controller.

Leave a Reply

Your email address will not be published. Required fields are marked *