Asteroid Mayhem
(C) 1994 Ed T. Toton III
All Rights Reserved.
NecroBones Software (tm)
CONTENTS:
Contents: Right here.
Credits: Next thing.
Overview: After the credits.
Important info: A little further down.
Tech notes: Even further.
Getting started: Fairly far down.
The opposition: Pretty far.
Playing: Way down that-a-way,
Customizing: Way way away!
NecroBones: Wooohie! Tis distant!
About the Author: Way way way down near that end...
Legal Shtuffs: Way way down at the end, far far away.
NOTE:
To reset the human hi scores or the computer hi scores, delete
ASTEROID.HIS or ASTEROID.CHI respectively.
OVERVIEW:
Long long ago, in a star system far far away, there was a great war.
Back in those days, space travel was still limited to sub-light speeds,
and deflector technology was extremely limited, and therefore asteroid
fields tended to be an extreme nuisance.
To deal with this problem, it became quite common for ship captains to
order their fighter pilots to clear paths for them. Now that the war is
over, and technology has improved, these things are but a distant memory.
Or are they? As it turns out, this whole thing has developed into an
extremely popular form of entertainment in which pilots test their skills
by locking themselves into a duel with rocks as large as 40 meters in
diameter.
Do you have what it takes to pilot a fighter, blow up rocks, and avoid
being brutally annihilated by simulated alien creatures?
IMPORTANT INFO:
VGA AND 386+ AND 575,000 bytes FREE RAM REQUIRED!!!
486/33DX and SoundBlaster recommended!
And a keyboard too!! :-)
And a monitor! And a CPU!! :-)
Asteroid Mayhem requires slightly over 570k free DOS RAM in order to
load all of the sound effects. If not enough memory is available to
load all of the sounds, then AM will only load as many as it can. The game
currently supports the following sound devices: Adlib, Internal Speaker,
and Sound Blaster (in both the direct and DMA modes).
When selecting the sound options, here are a few tips to keep in mind.
If you use the DMA mode of the soundblaster, you may want to select 16khz
or 22khz for the DMA transfer, even if the mixing rate you selected was
considerably lower, since having a high DMA transfer gives better sound
quality, and uses practically no processor time. On my 486/33DX I've found
that a mixing speed of 11khz or so, DMA speed of 16khz or 22khz, and 8
channels seems to work fairly well (though it barely runs at the right
speed).
If you select Adlib, remember one thing: The adlib was never designed
for digital playback, and therefore the sound may be very quiet.
The internal speaker is supported, but the sound quality sucks rocks.
But since this game uses no speech (well, not much anyway), that is not
as much of a big deal...
If you ever want to reset the hi-scores, delete ASTEROID.HIS.
Remember, you can use "slow mode" on slower computers, details further
down...
TECH NOTES:
Excluding my usual libraries, this game is only 1600 lines of code.
(although the libraries add up to over 5000 lines amongst themselves).
I am also using a few 386 instructions in the game, and hence you should
not try running it on a 286 or lower.
For the most part, this game has been a 3-day project for me. At the end
of the third day I had the game working, with all of the menus, high scores,
demo mode, 11 aliens w/ sound effects, etc etc, and wrote this document.
The rocks were generated in a 3D rendering program, all other images
were drawn by hand. And of those, all were rotated by hand except the
player's ship (which was done with an algorithm since 32 images is a
bit much to draw for one character).
All of the vocals in this game were made by me, with my own voice, though
I changed the playback speed on a few of them. This includes "Boing",
"Most unfortunate", "Welcome to your doom", "Ya!", "Ow!" et al!
There are four different computer players programmed in for the demo
mode, see if you can figure out what they're styles are! I've watched the
Robot #3 complete 8 levels and accumulate over 22,000 points before
dying! (which is phenomenal since it doesn't do any fancy vector
calculations etc)... After seeing another run break that number of points
by several thousand, in only 4 levels, I decided to add the "Top Ten Robot
High Scores".
As of the time of the initial release of this game, my personal high
score was 133,910 points, ending on level 20 (without cheating). (By the
way, once you reach level 13 or so, the levels are all pretty much the
same from that point on, except for a few details). I certainly won't be
surprised if you beat that eventually. After all, I tend to spend more time
designing my games than playing them.
This is the first game of mine to support DMA (in one form or another)
for soundblaster output. This has the benefit of making the sound less of
a speed-bottleneck. If the game runs too slowly on your system, try
decreasing the mixing speed, or play without sound, or try "slow mode".
NOTE!!! - There are two numbers above your status bars on the right side
of the screen. The lower one is free memory. The upper one is
unused CPU time. You should never see this number go down to
1. If it goes down to 1, then your system is not keeping up
with the game's intended speed. Instead, the number should be
wildly swinging around (since the CPU usage depends on what
the aliens are doing, what you are doing, what sounds are
playing, how many shots/asteroids/aliens are active, etc).
If it goes down to 1, try "slow mode", details below...
GETTING STARTED:
Well, to get started simply run ACONFIG, choose the sound settings you
want, then run ASTEROID. The menu is pretty self-explanitory...
THE OPPOSITION:
01 BugFaces - These are slow and stupid, but deadly!
02 Tin Cans - These robotic cylinders are weak, but
travel at a good clique.
03 GreenBugs - Fast, evasive, hard to shoot.
04 Bouncer - These bounce around the arena at extreme
speeds, and they're just waiting to
bounce you out of existence! (boing!)
05 Throbber - Slow, shoots. (yow! take this!)
06 Saturn Ball - Little purple ball with a ring; Slow, shoots,
tough. (oooops!)
07 Spinner - Blue ball with cyan tentacles; Slow, shoots a lot,
very tough. (ouch! ouch! patow!)
08 Red Brooder - Slow, tough, and launches little aliens at you!
(Aieee!!)
09 Yellow Brooder - Faster, tougher, and launches nastier aliens!
(Banzai!!)
BiBrood - Slow, tracking, wimpy. Launched by Red Brooders.
TriBrood - Slightly faster, and they shoot! Launched by
Yellow Brooders.
Asteroids - Big massive rocks, need I say more?
You can see what these aliens look like by selecting the "aliens" option
on the game main menu. As with any non-game and non-demo screen, after
30 seconds a demo will start. If you do not wish this to occur, simply
press a key periodically so that the game knows you haven't walked away.
PLAYING ASTEROID MAYHEM:
Well, the game is quite straitforward. Use the arrow keys to steer,
thrust, and so forth (up arrow thrusts, down arrow is reverse thrust,
left arrow rotates left, right arrow rotates right). Spacebar fires,
and CTRL detonates a flashbomb. At any time you can press ESC or Q to
quit whatever it is you are doing.
To complete each level, you must destroy all of the asteroids. Large
asteroids break down into medium ones, mediums break into small ones, and
small ones break down into gems. Collecting the gems gets you extra points,
as does shooting alien creatures. Every 2000 points you will be rewarded
with a free life. Gems and aliens are worth 100 points, and you get 5 points
every time you break down a rock.
When you see a large crystal, don't shoot it, catch it. You will get 500
points plus some sort of bonus (such as a free life, some bombs, 20 to 40
seconds of invulnerability, or 20 to 40 seconds of limitless shooting).
The following keys can be used in the game:
ESC,Q = Quit
P = Pause
F1,F2 = Change sound volume
F3 = Toggle Friction
F4 = Toggle Reverse thrust allowed
F5 = Toggle Sound on/off
F6 = Add 10 seconds battery power (cheater!)
F7 = Die (makes up for that cheating... <grin>)
F8 = Toggle "slow mode" (turn this on for really slow computers)
F9 = Go up a level (need a challenge?)
F10 = Cheat mode (invulnerable, limitless shooting, infinite bombs)
What "slow mode" does is make the game only draw the screen updates half
as often. Internally the game is still running at the same speed, but the
graphics are one of the largest speed bottlenecks (sound being the other).
The sound settings can of course be altered in ACONFIG (slower mixing rates
will also allow the game to run faster). Please note that slow mode looks
rather ugly (what choppy animation!?), so a fast computer is preferable.
Note that while cheating you don't get any points for what you do.
Now what exactly changes from level to level? Several things. In levels
1 through 9, the aliens you encounter will be inthe range from 1 to the
level number (i.e. on level 5 you will encounter aliens #1 through #5 on
the list above). After level 9, the weaker aliens don't appear as so much
any more, up until about level 13 where you will only be facing the
nastiest 4 (mostly).
When aliens are generated, there is (on average) five seconds between
the charge-up cycles. When the charging is happening, you will see the
lights flashing on the generator, and a few seconds later the alien will
emerge. Starting on level 14, the time between charge cycles begins to
shorten until it reaches 0 on level 36. This means that aliens will be
pumped out every few seconds, but only if there are less than 8 active
already.
After level 17 the brood have an increased speed, and after level 20 they
take an additional point of damage to kill.
CUSTOMIZING ASTEROID MAYHEM:
Two programs have been included to help you to customize the sound of
Asteroid Mayhem. If you have played any of my other digital-sound using
programs, then you are already aware that I use my own file format for the
sound effects. By use of WAV2NSN, you can convert WAV sound files to my
NSN format. By using PLAYNSN (if you have a soundblaster) you can playback
these NSN files.
To replace a sound in AM, you must create the NSN file and give it a
specific filename in the form: AST##.NSN (where ## is a number from 00
to 22). Yes, the number must be two characters in size (ie '00', not '0',
and '01' instead of '1', etc). The following chart shows which numbers
correspond to what:
00: "Welcome to your doom!" 12: "awwman!" (greenbug killed)
01: Blast (shot rock, etc) 13: Saturn Ball hit
02: Clank for getting gem 14: Saturn Ball killed
03: Saturn Ball shoot 15: Spinner shoot
04: You shoot 16: Throbber shoot
05: "Most unfortunate!" 17: Spinner hit/killed
06: <redirected to 1, octave up> 18: Bugface hit/killed
07: Died or used bomb. 19: Throbber hit/killed
08: Boing! (bouncer bounced) 20: BiBrood launched
09: Alien created 21: Brood/Brooder hit/killed
10: You got hit 22: TriBrood launched
11: Got crystal, free life, etc
AM will automatically load these sound files if they exist.
WHAT THE HELL IS NECROBONES ANYWAY?:
Well, here's an interesting story. Here it is in a nutshell...
One thing I have noticed is that people tend to download games that simply
bear a name that they are familiar with from other games that they felt were
enjoyable. I wanted to have a logo that would be instantly recognizable,
something different and unique. Finally, in the fall of 1993 I decided that
my games had reached a certain level of quality that the time had come for
a name.
In the BBS world, and in role playing games, I had often gone by the
alias of Necromancer. In games and the like, I had always heavily used
undead stuff (for about as long as I've been playing games, the undead
were always my favorite nasty evil things).
About eight years ago I created a small comic series (for fun) called
Bones Comics (which I had continued to work on for about four years or
so), and decided to merge that name with "Necromancer", resulting in
"NecroBones". I wasn't sure (I'm STILL not sure) how well that name goes
over with most people, but I DO know that it will stand out.
So, what it all comes down to is this: NecroBones is me. Period. It's
a name that I put on my games (and related things) that I feel are up to
a certain level of quality. If I make something that doesn't meet those
standards, I won't put the name on it. I'm not going to try to use the name
to sell a smaller inferior product. The whole purpose of it is for you to
be able to recognize the work of mine that meets certain standards I have
set for myself.
ABOUT THE AUTHOR:
Well, It's not often that I talk about myself in my documentation, but
I'm sure some of you are curious (I know I'm always curious about the authors
of programs I download).
As of this writing, I'm a college student at UMBC (University of Maryland,
Baltimore County), majoring in Computer Science (big surprise eh?). I've
been programming as a hobby for about 6 years straight. I started out in
GWbasic, and finding it too slow and restrictive I quickly moved on to
QuickBasic, which I continued to program in until about 3 years ago.
I again switched at that time due to speed and size limitations in the
language, and have since been programming primarily in Turbo Pascal 6.0,
though occasionally in C as well.
Why haven't I switched to C altogether? Well, it's this deal with what I'm
most familiar with, and the fact that I have built up a huge collection
of routines for every possible situation that could take forever to convert
over to C, including my digital sound system, custom file accessing routines,
and my graphics library. Also, I tend to get extremely impatient, and I'm
quite happy with the fact that games such as this take no more than 3 or 4
seconds or so to compile on my computer in TP6. I've found pascal to be quite
sufficient for writing shareware... well, at least with a little inline
assembly language anyway (my graphics system, file system, and sound system
are all written mostly in assembly).
While programming, and other general computer topics (such as anti-virus
tactics, artificial life, digital music composing, etc) constitute my primary
hobby, I do have others. A number of years ago I used to perform magic at
childrens birthday parties, for instance. I used to be an avid Role Playing
and Strategic War-Gaming fanatic as well. More recently I have gotten into
some sculpting, and computer art.
Meanwhile, my game programming is finally getting afloat. I'm starting
to see some moderate success with my more recent games. I hope to continue
the trend, and release more and more exciting and detailed games as time
pushes forth...
** Job offers welcome **
OTHER NECROBONES PRODUCTS:
The following is a list of some NecroBones programs as of 8/4/94:
Dragon's Domain - While not specifically a NecroBones product, this
package or four games, Dragon's Domains 1 through 4,
has been received well in certain circles. All four
games are roughly based on the old Atari game
ADVENTURE, but with *slightly* better graphics. Each
game has graphics improvements over its predecessor.
DragDom1 is better in graphics over Adventure only
in the monsters and objects, while DragDom4 has
completely bitmapped walls and such. The basic
concept of each of these is to find your way through
mazes, some lit, some not, and find certain objects.
Along the way you will be presented with having to
find the keys to the various castles, which can
be a puzzle in itself. (sorry, no scrollie graphics,
it's all static backgrounds). The 1-year anniversery
package contains the entire tetralogy, plus a small
"dragon card game" called Drahkarin.
(yes, yes, yes, I know the graphics
stink, it was on purpose!!)
Skull Quest - Skull Quest I, The Cyan Sarcophagus, and Skull Quest
II, The Vortex, are two fairly recent games of mine.
They are side-view action/adventure games with
smooth scrolling parallax backgrounds, and adlib
music and sound effects. Can you save the crypt
(and the rest of the world)? Only time will tell.
Stellar Conquest II - This isn't so much a sequel as it is a revision of
SC1. It is a stretegy space wargame for 0 to 4 human
players (2-4 human/computer). It features full color
VGA, taking advantage of both the hi-res and
256-color modes (256 color for menus, ship
construction, etc, and hi-res for maps and the like).
Players have to mine star systems with which to get
resources to spend on more cargo ships, and weapon
ships to fight the other players. There are many
configurable options, and players get to design
their own ships during gameplay.
Stellar Conquest III- Like SC2, SC3 is more of a revision than a sequel.
It is the same concept as SC2, same equations and
numbers, etc. The interface has been greatly revised,
and many new options are now available for the
players. Ships can now have Jump pods, torpedo
launchers, minelayers, and a new type of cloaking
device. Since SC3 is basically the same game as SC2
but with so many more options and a much better
interface, I rarely even advertise SC2 anymore.
UFO, The Card Game - This one is quickly becoming one of my most
popular releases. UFO is an UNO clone in which
you play against a whole host of alien opponents,
each with their own playing styles and their
own voices! That's right, they talk! The game
rules can be configured, and you can even choose
your own mouse cursor. External aliens can be
downloaded seperately, as can replacement desktops.
Registered users can even make their own aliens
if they also downlaod the UFO-Utils!
Codex Arcana - The first chapter, "Gate Crystal", has been
completed. In this VGA/Soundblaster adventure,
you find yourself lost in a strange land ruled
by the elements. Can you find your way through the
mazes, avoiding and destroying elementals, while
surviving intense heat and cold, to reach the center
of the map and find a way out? Only time will tell.
As usual, digital sound, hand-drawn graphics, etc.
All of these games can be downloaded from my BBS. In fact, you can download
some of my older and more embarassing games as well! That's right, you can
even download some of the ones I wrote in QuickBasic several years ago, such
as Stellar Conquest #1!
LEGAL SHTUFFS:
This program is being distributed on the "shareware" concept. This means
that you can distribute it on BBS's, give copies to your friends, etc, as
long as you don;t turn it into a commercial venture. However, in terms of
its use, it is by no means completely free. If you think the program is of
use to you, or you use it for any reasonable amount of time, please send a
registration fee of $10 (US). If you think that is rediculous, then send
less (or more for that matter). If you hate the program or found too many
bugs, write me and tell me, and include a graphic explanation (but don't be
too harsh!! Heheheh). In any event, write to:
Ed T. Toton III
7101 Talisman Lane
Columbia Md 21045
(USA)
We accept cash, checks (ones that are paper, not rubber, if you catch my
meaning), or money orders. Please make sure all checks and money orders
are from US banks/postal-services, and all cash must be US legal tender.
We regret to inform you that we no longer accept the following forms of
payment: briefcases full of drugs, top secret documents, women, firstborn
children, slaves, work animals, crates of firearms, and thumbtacks. :-)
Please make sure you clearly spell out your name the way you would
like it to appear in the program. If you would like copies of some of my
other software, please send me a blank disk to send them to you on.
And WHY should you register it?
1. To support my continuing efforts to bring you some level of
functional programs. If I get no cash, you get no improvements
in these programs, and I won't be encouraged to make new and
better software!
2. To get that warm glow for knowing that you supported the author
of at least one of the many shareware programs you probably use.
3. To find out if there is a newer version. All you need to do is
ask! But letters with money take priority!
4. You could be sick and demented and thus register everything you
get your hands on.
5. It's the right thing to do.
---------------------------------------------------------------------------
This Program, Manual, and Data Files, are all protected by U.S. Copyright
Law (title 17 United States Code). Unauthorized reproduction, distribution
and/or sales may result in imprisonment of up to one year and fine up to
$10,000 (17 USC 506). Copyright infringers may also be subject to civil
liability. If you mess with us, we'll delete you!
The author of this program makes no warranties of any
kind, expressed or implied, as to the fitness, functionality,
effectiveness, or safety of this software and accompanying
documentation. Under no circumstances shall the author and
developer be liable for any damages incurred during or as a
result of the use of, or misuse of, or inability to use, this
software and documentation. All risk is assumed by the user,
and we hereby disclaim any implied warranties of fitness or
performance of this software. Use at your own risk.
The developer and author reserves the right to make
revisions and changes to the software and documentation without
warning at any time. Any and all changes and revisions will be
made without obligation to inform any person or persons of said
changes.
---------------------------------------------------------------------------
NOTE TO SHAREWARE VENDORS:
Please, feel free to distribute my program, so long as you charge no more
than $4 over the initial cost of the blank disk. If you charge more, you
will need to write to me to receive written permission to distribute this
game at your price. (You know, you guys sometimes make more money off our
software than we do?)
Under various extreme conditions (such as commercializing off-the-shelf),
royalties may be in order.
---------------------------------------------------------------------------
Disclaimer:
Before installing, backup your hard-drive. The program is harmless, but
if by some chance it blows up in your face, burns down your house, or attacks
your cat with a fake pickled trout, or incurs any other damage (to data or
otherwise), I am not responsible. If you can not accept these terms, delete
this package now and don't use it.
Welp, that's all! Have fun!!!
BTW- as usual, this and many other creations
of mine are available for download on my BBS,
the Sorcerer's Quarters, (410-290-3752),
24 hrs/day, 300 to 14400 baud.
I currently can also be contacted at
the following net-mail addresses:
1@8329 WWIVnet
etoton1@gl.umbc.edu Internet
NecroBones America On-Line
-Ed T. Toton III
"Necromancer"
NecroBones Software.