The goal of this exercise is to install a software application
called Game2D. This game is a case study in Stiller &
LeBlanc's "Project-based Software Engineering" Chapter 6. Here is
a brief summary of the game features.
The author provides the source code in this zip file.
When I attempted to compile and execute the application I encountered several difficulties. Diagnosing and repairing these problems is very instructional. Submit a writeup describing the modifications you make as you follow the directions below. (Note: You may encounter different errors than I did. If you experience different error messages or other difficulties, just explain what you did to solve the problems).
1. When you unzip the distribution file you will find three files:
G2DLaunch.javaCompile the java files. They should compile without error.
Game2Dclient.html
Game2Dclient.java
2. Start the game server: java G2DLaunch
No messages are displayed, so it's difficult to know if things are
proceeding normally.
Terminate the server.
Modify the source code so that the server displays a message "Server
is running" when the application is successfully initiated.
3. Start the game server: java G2DLaunch
In a separate window, start the client: appletviewer
Game2Dclient.html
When the applet appears you will see a grid and a button. Click
the "Start Game" button.
At this point I received a run time exception:
java.security.AccessControlException: access denied
(java.net.SocketPermission
oz.plymouth.edu resolve)
Diagnose and correct this error. Don't forget to describe how
you solved this problem.
4. Begin again, starting the server and the client.
Click the "Start Game" button. On the console you should see
a message saying that Game2D is starting for player Blue.
The server console will show "Spawning Player #1"
Open another window and start a second client.
Click the "Start Game" button. Observe a message saying that Game2D
is starting for player Red.
The server console will show "Spawning Player #2" then immediately
throws an exception:
java.lang.NoClassDefFoundError: Cell (wrong name: cell)
Diagnose and correct this error. (Tip: note that Java is case
sensitive, but some other systems are not).
5. When you finally get the game to run properly you may find, as I did, that the dots appear on the grid at a very rapid pace. Perhaps my reflexes have slowed with age but I couldn't keep up with them. Modify the code so that a new dot appears about once every second.