Fundamentals of Computer Science II (CSC-152 2000S)

Game Descriptions

Bailey, Paul

Narrative assignment

Before I narrate, please allow me to argue for what I think our game should be. There exists a board game called civilization that has been turned into a computer game in the past but not one faithfully to the original board game, and why do we care anyway. The original board game was one that was particularly interesting because, like all great games, the rules are simple, there is no randomness added in the playing (i.e. no dice rolls), and every games starts with each player in about the same state.

Well, lets be honest with each other, the one thing about this game is that though the rules are simple, there are a lot of them and they are difficult to remember even during a single game, however most of them are commands like do this, do that... and that is why a computerized version that is not a distant modification might be a good project. Also, the level of graphics necessary is minimal.

A brief description of the game is as follows. Each player is in charge of a civilization that grows in population (terrain permitting) and builds cities and can commit to attacking the neighbors (who ever has more people wins). Cities form resources that are necessary to buy "civilization properties" which, in turn, are necessary to moving for progressing from the stone age to the bronze to the iron age to the final civilization.

The game is broken up into turns where players pieces double their numbers, move about, resolve disputes, build cities, et cetera. In the board game there are 14 or so steps, but as I said above, each is simple.

I think that we should make some model of civilization as our project.

Now, one interaction:

"At the end of a round a player is given resources (by the game, based on the number of cities she has) and is given the opportunity to use the resources to purchase 'civilization properties'. She decides not to and it is the next players turn."

An object might be player resources. There could be a number of different kinds of resources and so the object would need to know how many of each kind of resources the player has (these values would be fields). The resources would also need to know the value of these summed resources (for use in purchasing), so "getResourceValue" might be a method. Once resources were used they would need to be removed, so "removeResources" could be a method. When the appropriate time in the game came, resources would need to be added, so "addResources" could also be a method.

Bandukwala, Ammar

Nothing received.

Charnetski, Matthew

I envision a game in which Albert Einstein is chased through many floors of a maze by a rabid squirrel. Each level would be remade each session. If the player is not fast enough, the rabid squirrel catches him and he must go to the hospital to get many painful shots in the abdomen. If the player completes a pre-determined number of levels (based on difficulty) the user wins and Einstein jumps up and down. The user is then given a view of the naked squirrel brain and the rabies infestation that is there.

Methods that might be required would be MakeLevel, to actually create the levels; SquirrelRun, to determine vectors for the movement of the squirrel; and Move which would allow the user to control Einstein. There would need to be a method to keep track of the relative positions and speeds of Einstein and the squirrel. If the squirrel overtakes Einstein, then obviously they are caught and there would be a call to the end sequence. It might also be fun to add a method that lets Einstein spout little phases as he runs or is bitten.

Emmons, Jonathan

I was thinking that one neat idea for a game would be something along the lines of SimGrinnell. The player is a student here. He has some initial bank account and sets off to register for classes. He must buy books, pay for random things at WalMart along the way, etc. He also has 24 hours everyday which can be allotted towards sleeping, eating, socializing, studying, and, oh yeah, class. You can set priorities (must study 3 hours/day regardless, must socialize for 5 hours/week, etc.). Different classes mean different textbooks (i.e. different amounts of money), different profs mean less sleep, harder courses mean harder grades, etc. Students can start as a first year or pick up somewhere as a declared upperclassman. The goal is to finish in 4 years with a degree (have to take the right classes and do well enough). The occasional disaster (a virus hits all campus computers at mid-sems time) would add a random element to the mix.

One specific move could be asking the advisor. The player can click on this option bringing up a window. Depending on the current situation, the advisor will provide possible solutions. For example, if you come to your advisor and he sees you have a lack of sleep, he will suggest you increase your time allotted to sleep. If he sees you are going to run into scheduling problems (i.e. not enough classes in the major), he can suggest you look for more options. I think having the advisor being any member of the faculty would be interesting as well. Or perhaps having one advisor per department (with a randomly assigned advisor for freshmen, of course).

Consider the noun advisor. This object will need to be supplied with information on the student, such as his GPA, sleeping habits, etc. He will then need methods to yell at the student when he's doing something stupid, or perhaps suggest a research opportunity if the student is doing particularly well. This will involve analyzing the fields provided by the student and producing output accordingly. Having more fields could provide the advisor with a personality, perhaps a pushover or a liberal arts nazi.

Feltovich, Anne

One player versus AI, taking turns, one computer.

The player places a piece on a playing board (a.k.a. grid). The computer places a piece on the board. They go back and forth until the whole board is full or until the player or computer gets five in a row. If the computer gets five in a row first, the game ends and a message pops up that says "HAHAHAHAHAHA! I win again!!!" If the player wins, a message pops up that says "Jack loses and feels as much shame as his wire brain allows."

Nouns that become Objects: piece, board, message(HA), message(shame) Verbs that become methods: place, pops up

An object, specifically a Piece

Ford, Alex

Imagine a board on the computer screen, an 8x8 square grid, with two black and two white game pieces placed on the 4 center squares, where no two pieces of the same color are adjacent. A player at the computer, let's say black, "makes a move," wherein a black gamepiece is placed on the board. In said play, the piece is placed on an empty square that is adjacent to at least one square containing a white piece. Further, this empty quare must be within a "queen's move" from a square containing another black piece, in the direction of the white piece(s). (A queen's move being a straight vertical, horizontal, or diagonal line of any distance or direction.) At this point, all white pieces between the two black pieces change to black and it is white's turn to play.

Nouns: board, grid, white and black pieces, squares.

verbs: imagine, placed, move, play, be adjacent, be within, containing, change.

objects: board, pieces (white and black), squares.

methods: piece places itself on the board, squares check the states (empty/non-empty, white/black) of other squares adjecent to them, other pieces change their color, squares change their states (empty/non-empty), board counts the number of empty/white/black squares.

French, Mark

Calvin runs along holding the ball, chased by Hobbes. He throws the ball, which bounces off a tree and into the goal.

Calvin would be an object.

His fields would include

His methods would include

Fuller, Greg

Poobie the Penguin Game

This game is similar to asteroids. There is a field of snow on which a main character, Poobie the Penguin, can move up, down, right, or left. He can also suspend himself above the plane in a seeming third dimension. This will be called flying. (this is difficult with our graphics, but I think it can be done if we simply use a graphic that looks like something above ground with a shadow underneath). When Poobie moves farther upwards than the top of the screen, he comes out the bottom, just like in asteroids. Poobie, however, is not the only character. There are also other penguins that are a different color, that walk around the screen from odd angles in a straight line. Poobie must avoid these other penguins, either by throwing snowballs at them, which makes them retreat, or by flying while they walk underneath him. Poobie can only fly for something like 5 seconds. If the penguins catch Poobie, he squeaks and loses a ribbon. He has three ribbons to start with. Once you last a certain amount of time, you win, or there is a boss man (something like a snowman) to throw snowballs at.

Verbs: move, walk, fly, throw, retreat, squeak

Nouns: field of snow (plane), Poobie the Penguin, other penguins, snowballs, colors ribbon



Gallagher, Ellen

Mr. Potato Head

The game begins with just a picture of Mr. Potato Head on the screen without any appendages on him. There are several options for the ears, mouth, nose, accessories, eyes, arms, facial hair, feet and hair. The user then moves the appendages onto the face. The user may use which ever appendages she wants in whatever location she wants. Once on appendage is placed in each available spot, Mr. Potato Head will do a little dance and go to sleep.

nouns (objects or attributes): Mr. Potato Head, appendages, ears, mouth, nose, accessories, user

verbs (methods): move, place, dance, sleep

Mr. Potato Head is a peachish colored big oval with some holes where appendages could go in the beginning of the game.

Each appendage is added by moving the appendages. This is done by first selecting (by clicking with the mouse) on the appendage the user wants to place and then selecting the desired location on Mr. Potato Head.

Mr. Potato Head and the moving method interact in that the moving method moves things to Mr. Potato Head, an attribute.


I think I took someone's idea about the rabid squirrel but the new game I would propose would be called Vaccinate the Rabid Squirrel. This would be a strategy-filled, action-packed and non-violent version of Scorched Earth or Worms. Basically this multiplayer game of intrigue and adventure consists of set terrain with a rabid squirrel(s) representing each player. Whoever "vaccinates" all the other squirrels first is the winner. Yes the winner remains a rabid squirrel but it's a small price to pay for saving so many others.

With Vaccinate the Rabid Squirrel running the users are presented with some terrain with various obstacles and strategic locations. Upon this terrain are rabid squirrels representing players or AIs. In any given turn a player has an allotted amount of time where he or she may move and or perform an action. When the time runs out or an action has been performed the turn goes to the next player. A typical action could consist of anything from throwing a vaccine needle to calling in an antibiotic airstrike. To accurately perform a vaccination action on another squirrel a player must not only aim the projectile but must also consider the amount of force applied. With wind as a factor it can be quite tricky to effectively vaccinate your teammates. Another important option is the possibility of multiple squirrels per player which could drastically change the strategy of the game. In this case a player would represent a team of rabid squirrels trying to vaccinate other teams.

An important object in this game would be of course the rabid squirrels. These squirrels would need several fields. Some of these could be x and y location, RB(rabies points), and perhaps amount time left to move or perform an action. Some methods that this object might contain are a movement method and a large assortment of vaccination methods.

Gray, Arrel

I want to propose a snowfighting game. I got a small game over email the other day and I thought it was pretty simple and pretty fun, and thought we might be able to do something like it in 152.

The screen is divided into two (or more) sections, one for each team. Each player has a small team of kids, color coded by team. A player places the mouse pointer over one of his players and holds down and then releases the mouse button in order to throw a snowball. The longer the player holds down the button, the harder and farther the kid throws the ball. To move a kid, the player clicks and drags the kid wherever the player wants to take him, so long as he stays within his section. When one of the kids gets hit, he (or she) is dazed for a short while and can no longer move or throw snowballs. After a kid has been hit three times, he collapses out of fatigue, and a player wins when all of the kids on the other team have collapsed.

Assuming we're using the snowball fight game I proposed, we will need a class for each snowball-throwing kid. The kid's fields will need to include position on the screen, kept track of by coordinates, and a field to designate whether they are being clicked on by the mouse. Each kid will have a field for his color/team. They will need a field for how many times they have been hit. They will also need a field for whether or not they are dazed, and another for whether or not they have collapsed.

The kids will also need several methods. One method should move the kid around the screen when the mouse clicks and drags him. Another method should keep track of how long the mouse has been clicked on him to measure how hard to throw a snowball. We will then need a method to actually throw the snowball (which will be another class/object on its own). Each kid will need a method for becoming dazed and immobilized, and another to collapse after being hit three times. Perhaps after a team wins, the kids will need a method to celebrate.

Gu, Ming

Name of the game: Five Straight Through

Description of the game: It is a two-person or one-person-against-computer game played on an eight-by-eight board. We can enlarge the board when one of the player reaches close to the border. One of the two player uses black pieces while the other uses white. One places a piece each time onto the board by turn. They can only place the piece at the crossing point of two rows. The player wins the game when he creates 5 consecutive pieces horizontally, vertically or diagonally.

Description of an interaction: When a player creates 3 consecutive pieces, the computer has to close the row at one end of the pieces, because if the player has a 4 consecutive piece row, he can always place the next piece at the open end of the row.

Object: There has to be an object for board. It should has these fields: the next piece's color(Who's turn is next?), the closet piece's distance to the border. I think the board can also decide who wins, so it has to have another field for the highest number of consecutive pieces each color has. The board should have a method to display a black or white piece onto the board, a method to enlarge the board when a player comes close to the border, and a method to declare the winner.

It's not a very fancy game(black and white), but I think it is a good one for programming, which I think is pretty tough.

Hussain, Mustally

I think we should develop a game like "PacMan" (since PacMan is my fav game) Anyways this is the game plan:

Pacman is an object who goes through the maze or labyrinth (another object). Pacman's aim is to eat all the apples in the maze. once it eats all the apples, it will go to another level. Pacmans arch enemy is Mrs Papri (hahaahah). she owns the apples and does not want Pacman on her premises. so she goes after Pacman in order to kill him, the moment she touches him, pacman is dead. Ms Papri also has other servants who are after the naughty Pacman (who also want to protect ms Papri's apples)...(Ms Papri and all her servants are also objects)

The games rules will be determined by the fields. Eg as the levels increase, the game will get faster, also as the game progresses Ms Papri introduces hired killers to kill Pacman.

Pacman has only 5 lives (determined by yet another field) , after that the game has to be restarted. The game also an option of SAVE so that the user can save the game and come back to it later.

I think we can come up with more stuff if we decide to do this game which i doubt.

Kabra, Shiva

Nothing received.

Lofchie, Jill

One person starts out walking down the street. She has nothing in her hands to start out. She is in a tropical setting with lots of fruit trees lining the streets on both sides. There are sections of the street with lots of trees, but then there are also long barren stretches with no fruit trees. The person needs the fruit to eat to give her energy so she can keep walking to reach her destination of the circus. There are a variety of fruit trees and the different types of fruit give her differing amounts of energy. Therefore as she walks or runs along the street, she must jump up and grab the fruit from the trees. She must eat a piece of fruit every 10 seconds. If he is holding more than 2 pieces of fruit in his hands, she must start juggling them. If she drops a piece of fruit, she can not pick it up and she must eat another piece right away. She can walk forwards or backwards but the goal is to reach the destination. She must eat throughout the entire journey so she has enough energy to keep walking.

Nouns: Person, Fruit, Street, Trees, Circus

Verbs: Grab, walk, run, jump drop, eat

Objects:                Field (attributes of object)
Person-------------->  energy level
                        # of objects in hands


McNett, Amber

Game ideas, paragraph detail, etc.

Here's a webpage with more information on the game:

(looks like there's already a computer version - darn! Maybe we can make something a little different?)

SAMPLE PARAGRAPH (from Terrace):

The black player's turn begins. The player uses the arrow keys to move the large-sized black playing piece from the highest tier in the left corner to second square on the second level tier, capturing a medium-sized white playing piece. A message appears on player's screen: "Congratulations! You have captured the white opponents' marker! Number of black pieces remaining: 10. Number of white pieces remaining: 8." On the white player's screen another message appears: "Your medium-sized marker has been captured. Number of black pieces remaining: 10. Number of white pieces remaining: 8." The black player's turn ends.


Nouns: player, turn, arrow keys, playing piece, tier, corner, square, message, screen

Verbs: begins, uses, move, capture, appears, ends

Possible objects: turn(?how would this work?), playing piece, tier/corner/square (all of these are locations on the board - perhaps attributes of the actual object?), message

Possible methods: begins, move, capture, ends


Sample object: playing piece

attributes: color/player alignment, size, movement ability, location, capture status

capabilities: move, capture, be captured

Mehboob, Yasir


A gun moves sideways and is used to shoot at dummies. Different dummies are placed at different distances from the gun. Dummies the same distance away have the same color. Hitting each dummy yields points, which depends on the distance of the dummy from the gun. There is limited number of bullets. The player attempts to gain as many points as possible from one round of bullets.


Gun, dummies, distance, bullets


Shoot, move, yield point


Gun, dummies, distance, bullets


Shoot, move, yield point

The object gun should be able to move sideways (left and right) and shoot bullets at the dummies. A class of Gun can be created the has a method for shooting. This method should have attributes that is influenced by the position of the dummies and their distances from the gun.

Nordheim, Mark

What happens in the game: I have imagined a game in which the players control bees that fly around the screen racing to pollenate as many flowers as possible. Each successful pollenation would change the color of the flower to that of the player that did it. Pollenation would naturally require that pollen is carried from one flower to another. The game would end and the score would be calculated when all flowers are colored.

I'll develop the flower class. The class would probably have to be much larger for a complicated and complete version of the game.

some fields:

some methods:

That's all for now.

Ottesen, Elizabeth

Game: Scorched Earth

Narrative: One player begins their turn. They choose a target and guess angle and force for their shot. The program then calculates and draws the trajectory of their shot, and if the target is hit, evaluates the force of the impact and the cumulative damage to the target. If the target is destroyed, the computer awards points to the player based on the number of shots needed to destroy the target and the difficulty of the target. Unless that turn wins the game, play passes to the next player.

Possible object: Shot

Park, Rob

I don't know very much about the games that we have discussed in class, so I will roughly describe how a Checkers simulation might work. Each player would begin the game with the appropriate number of pieces placed in their beginning position on the screen. The player indicates which gamepiece he/she wants to move and tells the computer to move that piece to a different place on the board. The computer then checks the legality of this move and, if the move was legal, it will allow the other player to move one of his pieces. This process would repeat itself and the computer would store the information about the positions of all the pieces. If a jump occurs, the player whose piece is jumped loses that piece. The player to run out of pieces first is the loser and will receive a message that somehow humiliates him/her.

"Piece" is the noun that I've chosen to describe in greater depth. The object piece will have two integer fields. A checkers board is 8x8(I think), so the piece could be stored as a point (x,y), where x and y are between 1 and 8. Thus, the x-coordinate and the y-coordinate are the relevant integer fields. "Piece's" methods would involve changing its position in the x,y plane, jumping another player's piece, and being jumped (i.e., dying).

Thorne, Katt

My idea for the game is a search-style game similar to the Carmen Sandiego games, except with landmarks and buildings on the Grinnell campus as searchable locations and possibly rabid squirrels as the bad guys. The object of the game is to capture the squirrels before they bite everyone on campus. The player starts by receiving a clue about where the squirrel was seen last, and the player sends his rabid-squirrel-detective character to the site. There will be a number of these sites in the game, each corresponding to a different location on campus, and at each location, there will be a few people (3 or 4) to talk to, who will give hints about where the squirrel is headed. If the squirrel is in the same location at the same time as the player's character is, the player has the opportunity to capture the squirrel. If the squirrel did not travel to the area where the player is, however, the people who the player talks to will not provide clues on where the squirrel can be found. The player follows the rabid squirrel throughout Grinnell until he can catch it.

Some of the potential objects in this game include the player's character, the squirrel, the various sites the player can visit, and the people the player can talk to. The squirrel object would require a field for its current location, as well as a method that changed its location somewhat independently of the player's actions. The location of the squirrel would influence all the other objects, since all the possible sites would have fields that indicated the presence, or lack thereof, of the squirrel, and indicated what the other people (more objects?) would say about the squirrel's whereabouts.

Watanabe, Hisako

Only received in hardcopy.

Wells, Austin

Bubble Bobble

In the game Bubble Bobble the user controls a baby dragon. The baby dragon navigates its way around a small maze trying to fulfill its goal of ridding the small maze of all the enemies. The baby dragon achieves this by spitting bubbles in the direction of an enemy. The bubble travels a short distance and encases the enemy. After that occurs, the enemy is carried out of the small maze by the bubble. Another option for the baby dragon is to collect special items that will aid it in its goal. The baby dragon achieves this by popping the bubble that the special item is encased in. When the small maze has been rid of all the enemies the baby dragon advances to the next small maze. The game is over when an enemy succeeds in occupying the same square as the baby dragon. The enemies do this by roaming around the small maze in search of the baby dragon.

Nouns: dragon, maze, goal, enemy, bubble, direction, item, square.

Verbs: controls, navigates, fulfill, ridding, achieves, spitting, travels, encases, occurs, carried, collect, aid, popping, advances, succeeds, occupying, roams.

Objects: dragon, enemy, bubble, item.

Fields: maze, direction, square

Methods: navigates(dragon), spits(dragon), travels(bubble), encases(bubble), carries(bubble), collects(dragon), aids(item), pops(bubble), advances(dragon), occupies(item, bubble, dragon, enemy), roams(enemy).

The object bubble is a powerful object. It has the ability to disperse other objects. However it has a limit on how long it has to complete its task. If the bubble does not complete its task within the given amount of time, it terminates. The object bubble has several methods. It travels in a definite direction (vector). When it comes in contact with an enemy it performs its next method which is encasement. Encasement is almost always followed by the method of carrying. The bubble, which holds the enemy, travels off the edge of the small maze. When a bubble that encases a special item occupies the same square as a baby dragon, the bubble performs the popping method which is much like the termination method.

Wingate, David

Received as unreadable enclosure.

Disclaimer Often, these pages were created "on the fly" with little, if any, proofreading. Any or all of the information on the pages may be incorrect. Please contact me if you notice errors.

This page may be found at

Source text last modified Sat Feb 12 15:33:25 2000.

This page generated on Sat Feb 19 16:07:45 2000 by Siteweaver. Validate this page's HTML.

Contact our webmaster at