0% found this document useful (0 votes)
37 views4 pages

W24 Project

The document describes a simulation of immortal warriors called Highlanders who can be good or bad and interact in a 2D grid. Good Highlanders try to escape bad ones, while bad Highlanders try to kill others to absorb their power. The simulation ends when one is left or a set number of turns pass. Users set up the simulation and results are displayed and stored in databases and log files.

Uploaded by

Hamid Baghernia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views4 pages

W24 Project

The document describes a simulation of immortal warriors called Highlanders who can be good or bad and interact in a 2D grid. Good Highlanders try to escape bad ones, while bad Highlanders try to kill others to absorb their power. The simulation ends when one is left or a set number of turns pass. Users set up the simulation and results are displayed and stored in databases and log files.

Uploaded by

Hamid Baghernia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Human beings have existed for many years on planet earth.

Moreover, there have been billions of


humans through out the earth’s history. But sometimes, every few hundred years , a few unique
humans are born. These humans have special abilities. They are stronger than the average human. They
are faster than the average human and their intelligence is far greater than the average human. But the
greatest quality that each of these special humans have is that, though they are born, they do not die, at
least not as regular humans do. First, they age for brief period, but after they reach their mid 30s,
though they age chronologically, they do not age biologically. Once they hit their mid 30s, their cells do
not break down as regular humans do. Moreover, they have a tremendous healing factor. They can heal
rapidly from gun shot wounds, from fires, they can withstand and recover from amounts of radiation
that are lethal to other humans and they can have a sword go through their heart and survive as if it was
nothing more than a paper cut. These special humans are known as Highlanders. They are immortal.
However they can die at the hands of another Highlander and only by decapitation (no one knows why
that is) !!! Should one Highlander kill another highlander, the one who does the killing absorbs the
power of the other Highlander!!! Unfortunately some Highlanders want to be the strongest there is and
will go around trying to kill other Highlanders. This act of Highlanders killing other Highlanders for their
power has been going on for thousands of years. However, there are some Highlanders who are
peaceful and wont kill other Highlanders.

For this PROG 32356 project you are to create UWP + database project, to create an OOP+COP based
simulator of Highlanders interaction with eachother.

You are to create an area of where Highlanders can traverse ( 2D array). The size of the area should be
provided by the user via the GUI . At the start of the simulation, your prgram will place some
Highlanders in the area. Initially, when the program starts, no two Highlanders can start in the same
location (I will ask during the project demo how you ensured this).

The user can provide:


• The number of good highlanders at the start and the number of bad highlanders at the start.

If the user doesn’t provide these there is an option in the GUI for the program to determine these.

As the simulation takes place in a loop, with each iteration, each Highlander can move 1 square in any of
the eight directions of the grid. Should any two Highlanders meet, some things may happen

• If two bad Highlanders meet, they will fight


• If two good highlanders meet, they will not fight
• If a good highlander and bad highlander meet, the good highlander will try to escape and the
bad highlander will try to kill them. Although a good highlander will try to escape, they will kill
the bad highlander if they have to. (In the final documentation please indicate how you
programmed this)

There are two ways a simulation can end, you must take into account each of them(this can be an
option in your GUI).

• There is only 1 Highlander left (Option 1)


• A certain number of simulation runs occur. So the user can select how many iterations it will
run. (Option 2)

At the end of the simulation, the GUI will display

• If option 1, who the winner is, who they killed, at what time step (iteration) did they kill them
and how much power they absorbed from each of their victims.

• If option 2, who is left? Who killed who, who escaped from who

The database should display

• If option 1, the winner for each game, the number of victims, their total power
• If option 2, how many good highlanders remained. How many bad highlanders remained.

There shall be a text file that traces each move of the simulation!

Your program must make use of inheritance for the classes you design.

You must make use of COP.

You must have files in folders that you create yourself.

You must use either array lists or lists in your program


Total Marks 170:

• 50 Marks for a functioning system


o By functioning system, I mean it does what it is supposed to. It does not crash. Your app
conforms to the above requirements.
• 50 Marks for a documentation (including class diagram) explaining your system.
o By next week, I will like to see mock ups of your system. The mock ups don’t need to
reflect the actual final design. Include the mock ups in the final document as well
o The final documentation must include the weekly progress reports
• 50 Marks for aesthetics
• 20 Marks for how you decide the winner of a fight.
o I am looking for more than simply randomly choosing a winner.
o The stronger high lander should have a greater chance of winning
▪ How would you address this. Include this in your final documentation
o What happens when more than 2 highlanders meet in a cell? How do you determine the
winner?
• Every Thursday I will meet with each group to see their progress.

Every highlander has a name, power level and age. The older a highlander is, generally the stronger they
are. At the beginning of the program, after the number of highlanders are determined you should
provide the characteristics for each highlander

Any changes made in class or announcements are binding on the project.

Due date (Code + demo): Week 14.

*Not everyone in the group will get the same mark

*You are required to evaluate each member’s contribution. Do not give anyone credit for work they did
not do.

* For each weekly progress report, state the contribution for every member. Only the group leader
needs to submit this. Please have it signed by each member. Only hard copies will be accepted.

You might also like