CS 428/528 Games and Virtual Environments Homework #2
Due: Thursday February 3, 2pm. EO students you get the prescribed extra
"lag time" but are encouraged to stay as close to the main class as possible
so that you can ask timely questions. Turnin is by e-mail attachment to
jeffery@uidaho.edu. Attachments should not have binaries in them, if I can't
compile from your source code, put your turnin on a web page someplace and
point me at it, or arrange to deliver binaries to me via CD-R or USB drive.
Remember to put your NAME in a comment at the top of your source code file(s)!
This can be considered a "warm up" assignment for the programming side of
the course.
PART ONE. Write a program that complies with the following specifications.
Although Unicon
is recommended, you can turn in an original program written by you in any
language that I can run on my hardware (Linux64, XP, Mac Snow Leopard, and
Win7 are at my fingertips, but mind the portability issues even on
same-platform machines).
Read carefully and do not underestimate this assignment. It is intended
to be do-able but to allow some of you to distinguish yourselves. If you
procrastinate, you will probably regret it. Almost every specification
below allows you to do more than what is required.
You may elaborate as you see fit, but are encouraged to complete the rest of
the specifications before investing here.
- Develop a PirateDuel game that pits a human player against a
computer-controlled celebrity pirate.
- The enemy pirate captain should have a name and should utter a range of
piratey trash talk intermittently during the battle, possibly in reaction
to how the battle is going.
- The game should have at least "rogue-level" ASCII-art graphics.
- Only one screen or "level" is required, possibly in the shape of a ship
or a treasure cave.
- The game should have at least "D&D basic" level of combat simulation.
This means: players have an inventory of stuff (weapons and armor),
along with intrinsic traits (strength, dexterity) and skill/experience.
- Character traits strength, dexterity, and "hit points" are to be 3d6.
- The game may be turn-based.
- Weapons are to include cutlass (1-6 points damage on hit; armor class
counts) and pistol (1-12 points on hit; 10 rounds to reload). You may
define additional weapons such as whips, or different guns or swords.
- Armor classes range from 9 (no armor) to 2 (plate mail and shield).
AC8 = shield only. AC7 = leather armor. AC6 leather and shield.
AC5 = chain mail. AC4 = chain mail and shield. AC3 = plate mail.
AC2 = plate and shield. Yes, conquistadores still wore plate mail,
and they were contemporaries of early pirates. Oh yes, each AC point
should probably cost the player a dexterity point.
- Base probability to hit is 55%. Against swords, armor class reduces
hit probability by 5% per point better than AC 9. Against pistols,
armor class reduces hit probability by 1% per point better than AC9.
- For swords, high strength or dexterity conveys bonuses to hit probability
(13-15 = +5%, 16-17 = +10%, 18 = +15%). For pistols, only dexterity
conveys this probability.
- How many weapons you can carry should depend on your strength; how
fast you can change weapons should depend on your dexterity. Strength
below 9 = 1 weapon. Strength 9-12 = 2 weapons. Strength 13-16 =
3 weapons. Strength 17-18 = 4 weapons. Dexterity below 12 = 2 turns
to change weapon. Dexterity below 18 = 1 turn to change weapon.
Dexterity 18 can change weapon with no loss of turn.
- Possible outcomes are: death, surrender, or running away. Running away
should not be automatic.
CS 528
Your PirateDuel game should be "real-time".
PART TWO. In order to study Virtual Environments, we must begin by
examining the technology first-hand. Our first technology study will
be "MMOs" -- Massively Multiplayer Online role-playing games in persistent
virtual worlds. If you have substantial MMO experience in the past, you can
skip this part of the assignment by writing a few paragraphs about the
virtual world you have spent time in. Describe the size of its world,
the range of character types and development possible, and what styles of
gameplay activities it supports.
If you do not already have substantial MMO experience, or would just like to
participate with the class, the preferred game this year will be "Lord of
the Rings Online". The reasons for its selection (over market leader World
of Warcraft) are unlimited free play, and arguably superior graphics.
Download the game and get an account setup and active by the due date.
We will conduct a session in-game in the near future.
You will need access to a Windows machine with decent 3D graphics; e-mail
or see the instructor if you think this will be a problem.