Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Final Project : Pac Man - Object Oriented Programming and Design | C SC 335, Exams of Computer Science

Material Type: Exam; Class: Object-Oriented Programming and Design; Subject: COMPUTER SCIENCE; University: University of Arizona; Term: Fall 2005;

Typology: Exams

Pre 2010

Uploaded on 08/31/2009

koofers-user-ox8
koofers-user-ox8 🇺🇸

4.3

(2)

10 documents

1 / 4

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
C SC 335, Fall 2005 Final Project: Pac-Man
Project Manager: Ken
Pacman This project allows you to implement the classic
arcade game Pacman.
Model The underlying bulk of your game’s code should
lie in its model—the code to represent the current state of
the game. This model should be independent of view or
graphical representation—it should not understand how to
paint panels or draw images, for instance. A portion of
your project grade will be based on how well you
understand and implement this model-view-controller
separation.
Game Behavior The behavior of your game must be
similar to the behavior of the Pac-Man arcade game.
Some groups choose to make their game as close to the
original arcade game as possible, while others try for
something unique and different. Either is fine, but in
either case, there are certain basic requirements for the
game's behavior. The following are the basic categories
of behavior that your game must model:
General Game Mechanics:
The game is represented by a maze filled with dots and pellets. The player is Pac-Man, and his
goal is to eat every dot in the maze. A dot is eaten by moving the player on top of it. When all dots
are eaten, the level has been cleared, so the player advances to a new level. (More on levels below.)
The Pac-Man player is chased by enemies. These enemies are ghosts, and there can be one or many
ghosts chasing Pac-Man in any given level. The ghosts come from a generator in each level. The
player starts with three lives; if one of the ghosts touches the player, the player dies and loses a life.
If the player loses all of his lives, the game is over.
Pac-Man has a weapon against the ghosts: the power pellet. Power pellets will be scattered
throughout each level. When Pac-Man eats a power pellet, he becomes temporarily invincible to
ghost attacks. The ghosts change appearance and become frightened, running away from Pac-Man
instead of chasing him. During the brief period (5-10 seconds) of the pellet’s life, Pac-Man may
touch the ghosts to eat them. When a ghost is eaten, it returns to its generator and is revived, then it
begins chasing Pac-Man again.
The object of the game is earn as many points as possible. Eating dots, pellets, and ghosts scores
points. Also, at random times, a piece of fruit appears in the game. Eating fruit also earns points.
pf3
pf4

Partial preview of the text

Download Final Project : Pac Man - Object Oriented Programming and Design | C SC 335 and more Exams Computer Science in PDF only on Docsity!

C SC 335, Fall 2005 Final Project: Pac-Man

Project Manager: Ken

Pacman This project allows you to implement the classic arcade game Pacman. Model The underlying bulk of your game’s code should lie in its model—the code to represent the current state of the game. This model should be independent of view or graphical representation—it should not understand how to paint panels or draw images, for instance. A portion of your project grade will be based on how well you understand and implement this model-view-controller separation. Game Behavior The behavior of your game must be similar to the behavior of the Pac-Man arcade game. Some groups choose to make their game as close to the original arcade game as possible, while others try for something unique and different. Either is fine, but in either case, there are certain basic requirements for the game's behavior. The following are the basic categories of behavior that your game must model: General Game Mechanics: The game is represented by a maze filled with dots and pellets. The player is Pac-Man , and his goal is to eat every dot in the maze. A dot is eaten by moving the player on top of it. When all dots are eaten, the level has been cleared, so the player advances to a new level. (More on levels below.) The Pac-Man player is chased by enemies. These enemies are ghosts , and there can be one or many ghosts chasing Pac-Man in any given level. The ghosts come from a generator in each level. The player starts with three lives; if one of the ghosts touches the player, the player dies and loses a life. If the player loses all of his lives, the game is over. Pac-Man has a weapon against the ghosts: the power pellet. Power pellets will be scattered throughout each level. When Pac-Man eats a power pellet, he becomes temporarily invincible to ghost attacks. The ghosts change appearance and become frightened, running away from Pac-Man instead of chasing him. During the brief period (5-10 seconds) of the pellet’s life, Pac-Man may touch the ghosts to eat them. When a ghost is eaten, it returns to its generator and is revived, then it begins chasing Pac-Man again. The object of the game is earn as many points as possible. Eating dots, pellets, and ghosts scores points. Also, at random times, a piece of fruit appears in the game. Eating fruit also earns points.

Levels: Your game may have multiple levels. This means that the game starts on a certain map with walls, dots, ghosts, and the player in certain locations. When the player eats all of the food, the game goes to a new level, which is represented by a different map. The walls and food items are in different locations. Observable / Listeners: Your model should be an observable object. This means that you can add listeners to it, and those listeners will be notified of important changes in the model’s state. Scoring: The original Pac-Man arcade game does scoring in the following way. You are not required to use these exact values, but something similar is preferred. Dot 10 Pellet 50 Ghosts 200, 400, 800, 1600 Fruit 100 (cherry), 200 (strawberry), 500 (orange), 1000 (apple) Extra life at 10,000 points High Scores: At the end of a game (when the player has lost all his/her lives), your Pac-Man game should check the player’s score against a saved list of high scores. If the new score is high enough, the score should be put into the high score list along with the player’s name or initials. Views / Appearance Your game must display a graphical view of its model on the screen. This view must be animated to display motion of the game in progress. The appearance of a view need not look like a genuine Pac-Man game except as an extra feature. Changing views should not modify the state or logic of the game; the underlying model is independent of how it is being viewed. You must write at least two unique views of your game. They do not need to be visible all at the same time. Instead, the current view should be selectable from your graphical user interface. No more than one view may be textual in nature. That is, only one view may just draw letters or Strings on the screen to represent the objects of the game. All other views must draw shapes, images, and other more genuinely graphical entities. To ensure that your views are appropriate and unique enough, please see your grader. Controller / GUI Your Pac-Man game must have a graphical user interface (GUI) sufficient to run and configure the game. Commands that must be implemented in your GUI include: New Game, Exit, View High Scores, About, View, Difficulty Level These commands may be implemented in any manner you choose: as buttons, menu bar choices, keys that are typed from a menu screen, et cetera, or a mix of all of these, as long as they are relatively usable and understandable to the average user. Controls:

This means that for Release 1, essentially your game's entire model must be completed, as well as minimal view, and the ability to run a game. Iteration 2 Due Tue 22-Nov 11:59 pm ( 30 pts) Iteration 2 should have most bug removed and have the following features  Second view use images that move. o The sprites move from one space to another as images, but not a fluid movement o Background must be images  Sounds added  Second Ghost Strategy that moves towards Pacman  Third strategy uses shortest path so ghost get back to the generator as fast as possible  Third Ghost Strategy uses shortest path that moves towards Pacman  Scoring works correctly  High score feature  Three different levels, each with its own map and increasing difficulty (TBD). Iteration 3 (17 points): Selected Features This iteration is your final release, which must include some of the selected features listed below. This is by no means an exhaustive list of extra features, but merely a list of suggestions for potential extra features. Some of these are much harder to implement than others, and are worth more accordingly (see points). Features not listed will receive extra points based upon their difficulty. Talk to your graders about your planned extra features to ensure that your extra features will receive the points that you expect. You may not receive more than the total of 17 points for selected features, however you are welcome to implement as many extra features as you like.  Plays, looks, and feels just like the original +  The player must also be able to pause and unpause the game, either through a key press and/ or through a graphical component like a button. +  Persistence +  Different view with a theme such as cats chasing mice) +  Fourth level +  Splash Screen +  About box an interesting page +  Others to be proposed by you or your project manager Wow Factor (20 points) 20 Points: We would buy it 15 Points: Really good 10 Points: Okay 5 Points: Hard to play and small bugs 0 Points: Hard to play and very Buggy Pac-Man   1980 Namco, All rights reserved.