132 lines
5.2 KiB
Plaintext
132 lines
5.2 KiB
Plaintext
[This is Riley's original README file]
|
|
|
|
acm Flight Simulator version 2.0
|
|
|
|
What is acm?
|
|
------------
|
|
|
|
Acm is a LAN-oriented, multiplayer aerial combat simulation. My main design
|
|
objective was to provide source code that could be easily compiled and
|
|
executed on a wide variety of platforms. To that end, acm is written entirely
|
|
in C, exploiting the programming features of Unix, X11, and the BSD socket
|
|
interface.
|
|
|
|
Players engage in air to air combat against one another using heat seeking
|
|
missiles and cannons.
|
|
|
|
Acm exists as two programs. The first, named "acm", is a small program
|
|
that, when invoked, starts a flight session on a given workstation. The
|
|
second component, named "acms", is a server process that manages the
|
|
multiplayer environment. It also manages the flight simulation and
|
|
display management that is required. Most players will prefer to run the
|
|
acms process on a back-end server system on their local area network. Players
|
|
at client workstations can then invoke the acm program to begin play.
|
|
|
|
I play acm using a server that is a Mips RC3240 (rated at roughly 18.5
|
|
SPECmarks). I get very adequate display performance using a Mips RS2030
|
|
color workstation (10.0 SPECmarks) or an NCD monochrome X terminal. My
|
|
choice of servers is probably overkill. I suspect that an 10+ SPECmark
|
|
system could handle a typical mutiplayer load.
|
|
|
|
This is the second release of acm. The original version has been ported
|
|
to a variety of Unix derivatives and system architectures.
|
|
|
|
Riley Rainey
|
|
riley@mips.com
|
|
January 26, 1991
|
|
|
|
|
|
|
|
What's different with revision 2.0:
|
|
-----------------------------------
|
|
|
|
The flight simulation model has been substantially revamped.
|
|
|
|
Rudder controls have been added.
|
|
|
|
Monochrome support has been added with the generous help of Glen Dudek
|
|
(dudek@ksr.com).
|
|
|
|
Filenames have been shortened, where required, to get along with System V
|
|
conventions.
|
|
|
|
Substantial corrections and enhancements to the portability of this code
|
|
were provided by Johnathan Kamens (jik@Athena.MIT.EDU). imake can now
|
|
be used to build the entire product tree.
|
|
|
|
Sun-specific changes were provided by Dave Safford (auvsaff@auvsun.tamu.edu).
|
|
|
|
A bug that prevented acm from operating with certain window managers
|
|
has been corrected.
|
|
|
|
Lead Computing Optical Sight (LCOS) support has been added to the
|
|
cannon weapon display. A reticle (sight) is displayed on the HUD, showing
|
|
a good aiming sight for the cannon.
|
|
|
|
Cannons will now inflict damage on other aircraft.
|
|
|
|
Aircraft can now be damaged, but remain airworthy.
|
|
|
|
|
|
|
|
GENERAL NOTES
|
|
-------------
|
|
|
|
This software is divided into two major parts: the 3-D graphics routines
|
|
and the flight simulator itself. The 3-D stuff is contained in the V
|
|
directory. V/lib holds the library itself. V/test contains a program
|
|
that can be used to test your port of the V library.
|
|
|
|
Fsim contains the remainder of the flight simulator. imake and make files
|
|
have been provided. The code has a Berkeley tilt to it in many
|
|
places, so people with hybrid OS's will probably want to lean that
|
|
direction when selecting compiling and linking options.
|
|
|
|
Acm binaries can be installed in your standard games directory. In addition
|
|
to running "make install" to install the executables, you must run the
|
|
"install-objects" script.
|
|
|
|
The acm server, acms, must currently be started manually. It's intended
|
|
that it will eventually be managed automatically by inetd, but that's
|
|
not in the code yet. I have access to a network that includes a 16+ SPECMark
|
|
server and 12 to 18 SPECMark workstations (i.e. a MIPS 3240 along with
|
|
MIPS 2030 and Magnum workstations) (translate SPECMarks into millions of
|
|
instructions per second by whatever formula you like ..). I generally
|
|
rlogin to the 3240 and start the acms process on it and leave that xterm
|
|
window hanging around; then, from another xterm window, I'll fire off
|
|
the acm command that starts my flying session. Other players enter the
|
|
game by simply firing off an "acm servername" command.
|
|
|
|
I'm not saying that acm is a particularly accurate flight simulator. I'm
|
|
not an aero engineer, but I did spend a fair amount of time studying
|
|
several college-level texts on the subject while I was designing this
|
|
software. This probably doesn't resemble real-time flight simulators
|
|
too much but, again, that's not my line of work. Comments and
|
|
suggestions to improve this software are welcome.
|
|
|
|
Several "features" in this revision of the software:
|
|
|
|
* landing gear is ignored. Raise it, lower it; it's
|
|
not handled by the software.
|
|
|
|
* flaps can be lowered at rediculously high speeds.
|
|
|
|
* you can fly through mountains.
|
|
|
|
* engines do not flame-out. Fly really high (and fast enough)
|
|
and you can just about get into orbit. Non-afterburning
|
|
engine performance does degrade as altitude increases, but
|
|
afterburner performance gives the extra kick needed to fly
|
|
much higher than you should be able to.
|
|
|
|
|
|
CREDITS
|
|
|
|
In the original release, I overlooked several important credits. The
|
|
input routine at the heart of the acm server is based on code from xtrek
|
|
that was written by Dan A. Dickey, he has provided some valuable help in
|
|
improving the robustness of this code. The 3-D routines were written by
|
|
me, but are based closely on two valuable articles from the March and
|
|
April 1981 issues of Byte Magazine titled "Three-Dimensional Computer
|
|
Graphics" by Franklin C. Crow.
|