Lab 8

Working from Home

If you are working from home, you must download the new jar file named Classlibs.jar and place it in your

c:\projects\CSE115\Classlibs\Spring2006\
folder.


Introduction

As the legend goes, Adrienne, Mike, Clark, and Ben were just hanging out in a bar one Friday afternoon when who walks in, but Blinky, Inky, Pinky, and Clyde (friends of Clark's - of course). They sashay up to their table in their usual smarmy way and strike up a conversation with Clark, complete with a secret handshake that only members of their particular fraternal organization know. Who knew that Blinky, Inky, Pinky, and Clyde even had hands?

Anyway, Clark invites these well-known guests to join us and the conversation quickly turns ugly. It was really all Pinky's fault. He started in with us about the fact that OO had no place in their world. They had survived for 26 years without it and he even claimed that no one could even use OO to create their world! Blinky agreed and added that NGP was not up to the challenge. Inky threw in the last insult that there wasn't anyone in 115 this semester with the programming chops to complete the task. Clyde just said "uh-huh" and "yeah" a lot.

Needless to say, this enraged the 115 team and suddenly Mike jumps up to separate Adrienne and Inky (whom Adrienne had in a head-lock), and Clark pulls Blinky and Pinky away from the fray. What no one noticed is that Ben had snuck under the table (to hide) and suddenly emerges with his laptop and a completed implementation of the world using NGP and his OO skills. This did not satisfy the boys who insisted that of course the four of us could do it - we can do anything, bouncing balls, dizzy fish, etc. They wanted to see the 115 students step up to the plate.

The negotiations began and a set of ground rules was established with an agreement that the eight of them would meet again after May 1st with the results of the challenge. Now it's up to you, the 115 students to assure that the 115 staff doesn't have to foot the bill for a night of drinking with those guys. Clyde downed 10 beers and 8 shots in the 30 minutes he was at the bar the first time. Who knows what a whole night will bring? Don't let us (and our wallets) down.


New Concepts Covered

The following are the new concepts covered in this lab.


Hints/Advice

The new concepts will be covered in lecture and in recitation. If you do not attend both lecture and recitation, you will find this lab significantly more challenging. Lecture material will be presented in the context of this lab, or in a similar and related context. It is imperative that you start this lab right away. This is, by far, the most challenging lab of the semester, and it will be figured accordingly into your final grade. The instructors and TAs will be happy to help those who heed this advice, but will grow short-tempered with those who seek beginner's help just prior to the due date.


Lab Tasks

Create a new project in Eclipse

As with Lab 7, you should create your own project and name the project Lab8 and the package inside it pacman. Refer to the Lab 7 directions if you do not remember how to do this.


Assignment Specification

So, if you didn't know, Blinky, Pinky, Inky and Clyde are the ghosts made famous by the game Pac-Man. Your assignment is to write a somewhat simplified version of PacMan. If you have not ever seen or played the game Pac-Man, you can refer to a Wikipedia article on the subject, or google Pac-Man to find a version you can play online or even download for your cell phone.

In this assignment, you will be able to complete basic functionality for a possible score of 100, or complete basic functionality plus extra credit for a possible score greater than 100. It is most important that you complete the basic functionality before attempting the extras. Note that, even in the Submission Directions, you must submit a basic game separate from the game with extras.

Basic requirements (100 points)

The basic requirements are:

Extensions (215 points extra credit described so far - may be adding more!)

The following are possible extensions that you may choose to undertake. If you have an idea that is not on the list, send email to your instructor for approval of it as an extension and a point breakdown.


Submission Directions

You must include in the project a README file, as indicated above. This file must be a plain text file. You can create a plain text file in Eclipse by right clicking on your project and selecting New -> Untitled Text File. Now select File->Save As. Navigate to the Lab8 package within your Lab8 project (you should see "Lab8/lab8" as the parent folder location). Name the file "README" and click OK.

After you are finished writing your code, confirm that your .java files and the README file are located in the Lab8 package in your Lab8 project. Once you are certain that you have the correct set of files in your project, export your solution as a jar file, just as you did in previous labs, but name your jar file Lab8.jar.

VERY IMPORTANT NOTE- If you decide to do work beyond the minimum requirements, you must do the following:

You must follow all directions about filenames exactly, otherwise your work will not be graded.

When you are ready to submit your work, use the electronic submission program that corresponds to your recitation.


Due Dates

Due 11:59:59pm on Monday May1st for all sections.