###############################################################################
# #
# Copyright © 1989-1991 by Artificial Horizons®, Inc. All rights reserved. #
# #
# This material constitutes the trade secrets and confidential, #
# proprietary information of Bruce Factor and Curtis Priem, and is #
# under license to Artificial Horizons, Inc. The material is not #
# to be disclosed, reproduced, copied, or used in any manner not #
# permitted under license from Artificial Horizons, Inc. For more #
# information email "ahi-interest@ahi.com". #
# #
###############################################################################
CRAFTCAP(5A) FILE FORMATS CRAFTCAP(5A)
NAME
craftcap - craft capability data base
SYNOPSIS
/usr/games/aviator/craft/craftcap
DESCRIPTION
Craftcap is a data base describing crafts and weapons used by the
flight simulator aviator. Craft and weapons are described in craftcap
by giving a set of capabilities which they have and describing the
what they look like.
Each entry in the craftcap file describes a craft or a weapon, and is
a line consisting of a number of fields separated by ':' character.
The first entry for each craft or weapons gives the two names which
are known for the craft or weapon, separated by a '|' character. The
first name is the most common abbreviation for the craft or weapon.
The second name given should be a long name fully identifying the
craft or weapon. The first name should contain no blanks and are
always in lower case, for consistency in typing; the second name may
well contain blanks for readability. Entries may continue onto
multiple lines by giving a '\' as the last character of a line, and
empty fields may be included for readability. Comments in this file
begin with the '#' character as the first character of the line.
Comments can appear in the middle of a craftcap entry. To facilitate
handling collections of craft, aviator provides a file inclusion
feature. Any line that looks like
include "filename"
is replaced by the contents of the file filename. The quotes are
mandatory and the include files can not be nested.
Capabilities in craftcap are all introduced by two-character codes,
and are of three types:
Boolean capabilities indicate that the craft or weapon has some
particular feature. Boolean capabilities are simply written
between the ':' characters, and are indicated by the word
'bool' in the type column of the capabilities table below.
Numeric capabilities supply numeric information such as the location
of a point on the craft. Numeric capabilities are given by
the two-character capability code followed by the '#'
character and then one or more numeric values separated by
spaces. For example, :pt#-4.20 -0.24 0.24: is the numeric
entry representing a point at (-4.20,-0.24,0.24).
String capabilities supply a name of option such as the type of
missile used by the craft. String valued capabilities are
indicated by the word 'str' in the type column of the
capabilities table below. String valued capabilities are
given by the two-character capability code followed by an '='
sign and then a string ending at the next following ':'. For
example, :cn=heatseeking: indicates a heat-seeking missile.
CAPABILITIES
Name Type Description
ac str Entry of similar craft - should be first entry
av num Angle between views used in sorting polygons (degrees)
cl bool Close indicates the previous points define a polygon
cn str Controlled by (pilot|heatseeking|radarguided)
co num3 Color of the polygons that follow (Red, Green, Blue)
iw num Moment of inertia (Iyz) about the yz axes in slugft2
ix num Moment of inertia (Ixx) about the x axis in slugft2
iy num Moment of inertia (Iyy) about the y axis in slugft2
iz num Moment of inertia (Izz) about the z axis in slugft2
mc num Mean geometric chord of wing in feet
ms num Maximum speed in mach
pt num3 3D Point on craft, numbers (X,Y,Z) in feet
s[0-9] str Stations 0-9 and the weapons at each
sc num Service ceiling of the aircraft in feet
th num Maximum thrust of all engines in pounds
wa num Wing surface area in square feet
we num Unloaded weight of the craft in pounds
ws num Wing span in feet
Name Type Aero Coefficient Description
DB num2 Basic drag in stability axis
Da num2 Drag due to alpha: angle of attack (radians)
Df num2 Drag due to flaps at maximum position
LB num2 Basic lift in stability axis
La num2 Lift due to alpha: angle of attack (radians)
Le num2 Lift due to elevator at maximum position
Lf num2 Lift due to flaps at maximum position
PB num2 Basic pitching moment
Pa num2 Pitching moment due to alpha: angle of attack (radians)
Pd num2 Pitching moment damping
Pe num2 Pitching moment due to maximum elevator
Pf num2 Pitching moment due to maximum flaps
Rb num2 Rolling moment due to beta: sideslip angle (radians)
Rd num2 Rolling moment damping
Ri num2 Rolling moment due to maximum aileron
Rr num2 Rolling moment due to maximum rudder
Sb num2 Sideforce due to beta: sideslip angle (radians)
Sr num2 Sideforce due to rudder at maximum pos
Yb num2 Yawing moment due to beta: sideslip angle (radians)
Yd num2 Yawing moment damping
Yr num2 Yawing moment due to maximum rudder
Describing Craft
The polygons must be either triangles or quadrilaterals. Quads must
be planar. Surface normals are created by taking the cross product of
the first two edges (u,v) of the polygon. The normal is described as
(u /||u||) X (v /||v||)
where u=point2-point1 and v=point3-point2. The polygon must not be
degenerate; ||u|| != 0 and ||v|| != 0. Since back facing polygons
are rejected, infinitely thin objects must be described by two
polygons with the same points but opposite ordering to insure their
normals are pointing in opposite directions. Long polygons should be
broken into smaller polygons near where they intersect other polygons.
If the angle between views is negative, a very forgiving polygon
sorting algorithm is used. The craft should be oriented so that the Y
axis is pointing in the direction of flight, the X axis is pointing to
the right (starboard), and the Z axis is pointing up as viewed from
the cockpit. The origin (0,0,0) of the craft should be at its center
of mass.
Aero Coefficients
The Aero Coefficients are described as pairs of numbers. The first
number is the velocity (mach) of the aircraft along the relative
wind vector. The second number is the coefficient used in the
calculation of the dynamics for that velocity. If a coefficient is
not included in the entry then the value zero is assumed. There can
be more than one value listed for a given coefficient. The
coefficients must be listed in ascending order of velocity. The
dynamics program interprolates between the values depending on the
aircrafts velocity. If the aircraft velocity is less than the
smallest velocity listed, the coefficient associated with the smallest
velocity is used. If the aircraft velocity is greater than the
largest velocity listed, the coefficient associated with the largest
velocity is used.
Similar Craft
If there are two very similar craft, one can be defined as being just
like the other with certain exceptions. The string capability ac can
be given with the name of a similar craft. This capability should be
first so that the capabilities of the similar craft will be copied
into the current entry. The capabilities after this entry will
override the ones of the similar craft. Normally the first entry of
the craft does not have weapons, and the string capability ac
describes the different weapon configurations allowed.
Weapons Configuration
There are ten stations (0-9) for mounting weapons. The location is
defined with the point capability (pt) and then the armament at the
station (s[0-9]). The armament must be previously defined.
FILES
/usr/games/aviator/craft/*
SEE ALSO
aviator(6A)
BUGS
Only 256 characters are allowed for string capabilities and aviator
does not check for overflow of this buffer.
Only the following colors are supported for the single buffered GX:
Gray 0.620 0.659 0.824 (Specular lighting)
Light Gray 0.808 0.827 0.910
White 1.000 1.000 1.000
Black 0.000 0.000 0.000
Dark Blue 0.106 0.212 0.424
Transparent -1.000 -1.000 -1.000
Please email changes/additions to: aviator-bugs@ahi.com
Aviator Release 1.8 Last change: 25 December 1991