David Reade 99755629 Tim Kelly 50221221
For our project we have decided to implement
a one player internet version of the popular strategy game Battleship.
We intend to present the game as a java applet using AWT technology
and to incorporate images and sounds to create a more realistic gaming
effect. We have decided to work together to program this game instead
of allocating specific programming roles because we have found programming
together to be very constructive over the past year.
The purpose of this document is to specify
exactly what we hope to achieve in this project. We will layout a
schedule that we intend to follow strictly and we will put forward
the ideas which we have finalized for the development of this project.
After analyzing our system further and researching implementation
options we have decided on a final layout on which we feel we can
develop this project.
The original objective of
this project was to develop either a one player or a multi-player
version of the game, so our first decision was to decide which path
to take. We had to choose whether to concentrate our efforts on developing
a smart computer player using artificial intelligence or to choose
the networks option and incorporate some client/server technology
to develop a multi-player version. The
reason we chose to develop a game was to introduce ourselves to some
gaming concepts and to gain some gaming experience. It is because
of this that we have chosen to follow the A.I route rather than the
networking route as both of our interests lie in artificial intelligence
especially related to gaming. Our original idea was to develop a java application and to incorporate and learn about developing GUI's but after some research we have found it to be much more feasible to implement the game as a java applet as the applet class will allow us more versatility when it comes to importing graphics and developing the GUI. Summary
of Objectives:
We
have researched the requirements of our project and because it is
an internet game, it wont require any installation. The only requirement
to run this applet will be to have Jdk 1.2 installed somewhere on
the machine. The project will be programmed entirely in java as it
is ideally suited to develop a small game to be run on the internet.
The
architecture behind this project will be relatively straight forward.
We intend to use what we have learned from OO programming to develop
a hierarchy of classes and objects. We wont require any specialised
hardware as we will be working solely with the jdk 1.2.2.
Developing the
architecture of our project can be broken into three specific areas.
These three areas layout how we intend to develop the project from
start to finish
This
is how we intend to implement our game. The main Battleship class
will deal with setting up and initialising the applet through which
the game will be played
This
is how we intend to display our game. The game will involve developing
a grid on which we can place ships and some interface for the user
to interact with.
For
the AI part of our game we will implement an agenda class which will
deal with generating children and storing data.
WEEK
1:
Research into developing a large scale project. We intend to develop
some class diagrams to represent the world which we are going to create
so that we can get an overall view of what will be needed.
WEEK
2: Research
into applets, graphics, sounds, games. Develop an overall layout of
the applet and decide on which features to use for the game. We also
intend to have a good understanding of the working and implementation
of GUI's
WEEK
3:
By the end of week 3 we intend to have developed a skeleton framework
of our project. We hope to have developed a working applet which will
display our final layout including the grids and the ships.
WEEK 4: By now we intend to have developed the framework on which we can build our computer player. We will be researching the best AI techniques to use and developing our own ideas and possible heurist ics. WEEK
5:
We intend to keep working on developing the AI for the rest of week
five.
WEEK
6 :
By now we intend to have our working version of the game either completed
or in its final stages and by the end of week six we plan to have
developed and produced all the documentation required for this project.
For research
in developing this document we referred to a number of books on developing
java applets over the web. It is from reading these books that we
developed the specifications of this project.
|
- |
Project Preparation
OO Models
Z-specification
1. Proposal
1. Functional
Spec.
1.
Object Oriented Metrics
1.
Object Oriented Models
|