CSE360 Honors Project: "Swarm"
By Walton Dell
Fall Semester 1999
June 25, 2006
Things NOT designed
by Walton Dell:
- Programmed in Visual
- Uses MS
DirectX 7.0 API, and the user must have DirectX
version 7 installed on their system.
- Note: The game is NOT
available for download.
- Uses example
animation code from the DirectX 7 Software Development Kit (SDK),
including image of rotating donut. Let me repeat, I did not
design the red
- Note: I did
not use any code from the "Donuts" game in the SDK, just
from a small animation example that includes the same donuts.
- Includes a
space image, courtesy of NASA.
by Walton Dell:
- A large
portion of the code is by me. All the "hit detection"
code, all the character AI (artificial intelligence) code, and more is
written by me.
- I did design
and the evil, donut-making creature (not seen in the screenshot).
Things I did NOT
have time to add (yet!):
- There are no
- There is no
- The game has
- The game does
not have multiple levels.
- I would have
liked to have added additional creatures.
- The blue
spaceship is the human-controlled player. See controls below.
- The red donuts
are called "hunters". They will pick a random location
on the screen, then they will head straight for that location.
When they get there, they will pick a new location and repeat.
Hunters can be destroyed by bullets.
- The ugly
multicolor creature is called a "chaser". (Not seen in
the screenshot.) The chaser will move toward the human player
and every once in a while it will create a new hunter (red
donut). If the chaser is hit by a bullet, then it will
"hyperspace" to a new location on the screen.
- The bullets
are fired by the spaceship and are also considered a type of
"character". The bullets accelerate upward.
- Press space to
fire a bullet. Do not hold down space or press it too
rapidly. If you do, your gun will overheat and you will have to
wait for it to cool down before firing more bullets. It is also
possible for a bullet to hit a recently fired bullet causing both to
- Press the
arrow keys to move the spaceship.
- Press escape
(ESC) to end the game and return to Windows.
- Press ALT+TAB
to switch back to Windows with the game still running.
Almost Real Screen Shot:
Note: I was not able to take a real screen shot, so I created this
composite image. The game only supports 256 colors, though.
Also, there is now a new character that creates the donuts. Other
than those things, this screen shot is accurate.
UML Class Diagram:
This diagram is not complete. Some of what is
missing is: There is an AddHunter() method in the Environment
class, which the chaser will call regularly. Physics now includes
"size", for calculating hit detection. There is much
more that is not on this diagram.
Environment contains an array of players.
"Player" class must be
subclassed, and each subclass must provide "Update()" and
Update() method is called on Environment once per frame,
which in turn calls Update() for each player.
If a player comes in contact with another player, then
the environment class will call Contact() for both players, with
the other player as the parameter.
Even bullets are considered players. If a bullet
comes in contact with a "hunter", it will change the hunter's
"alive" status to false.
Copyright © 1999-2006 by Walton Dell
Web Site: wdell.com