MyGame

A game for the first assignment. I would like to credit professor Gregory Kesden for a picture of himself.

Goal

I wanted to create a casual game which people can vent their anger on. I had a concept of a reverse Space Invaders. In Space Invaders, you are the one who is trying to destroy the enemy craft. In my game, you avoid the lasers and hope that your ball hits Kesden by choosing to fire at appropriate times. The more times you hit Kesden, the angrier he gets, the faster he goes.

Method

This is just the experimental stage of the game. Firstly I came up with the idea of a simple casual game. It took me some time to figure out how the code and GIT repository work. Next, I tried drawing stationary objects on the screen. I then added play controls so that the player can interact with the game. I also added some physics and mathematics so that the ball actually moves. I added the scoring and life system so that the game will not continue indefinitely. After that, I added collision detection and laser motion. I then later realised that the game was a little too difficult and I tweaked the game a little to make it easier. Finally I tried the game myself.

Novelty

What I feel that is novel to this game is that I incoporated what students in CMU will probably feel during the course of the year, thus giving it a background to this game. I also added some difficulty in the sense that instead of a straight ball, the ball moves in a projectile motion, and the ball travels at different velocity all the time.

Results

I think that the instructions for my game is really simple. However, it does present a certain level of difficulty because it is difficult to control the ball in motion. The nudges to the ball doesn't work as well as I hoped.
I feel like it can be improved by adding more features. Some features that I have thought of was to add viscosity into the world such that the ball eventually stops. In fact, different viscosity can be applied to different parts of the screen. One corner representting wean may be of high viscosity, another corner representing the UC may be of lower viscosity. Another feature is instead of resetting the ball, a new ball generates and the old balls stay in the world. Collision physics can be added to make the game more interesting. But all these are not implemented because of the time constraint.