MS-DOS Version
DOSBox x86 Emulator can be used to run the executable file
Review of DOS version at Space Game Junkie
Adapted from TREK73.DOC File
T R E K 7 3
A Star Trek Battle Simulation
Trek73 is a computer-simulated battle based on the famous Star Trek television series and the board game Star Fleet Battles. Via computer terminal, you can clash with enemy battle cruisers, such as Klingon D-7‘s and Romulan Sparrowhawks, and use the same strategies that Captain Kirk has used. Like Kirk, you control a Federation vessel similar to the Enterprise; a computer program directs the enemy. Victory can fall into several categories:
Decisive Victory — You completely destroy or cripple the attacking force.
Tactical Victory — You out-maneuver the enemy using high-speed escapes, corbomite bluffs, `play dead’ tactics; or the enemy surrenders.
Moral Victory — You surrender or self-destruct and destroy each other.
All distances are measured in megameters, one million meters (abbreviated `M’). Speed is expressed in `Warp Factors’. Each warp factor equals 100M per second . All angles are expressed in common degrees from zero to 360, measured counter-clockwise from the x-axis, similar to reading a protractor. Only two dimensions are used .
Play is as follows:
- You issue one of a number of commands (fire phasers, change course, launch antimatter pods, surrender, etc.) by typing the appropriate code number into the keyboard;
- The enemy, under programmed instructions, issues a similar command;
- Both your commands are executed (phasers are fired, probes are launched, damages are assessed, courses changed, etc.) while the vessels move through space;
- Unless certain end-game conditions are met (you destroy the enemy, the enemy destroys you, your out-maneuver the enemy, you both destroy each other, or one party surrenders) the above steps are repeated.
The following is a list of codes which can be used while in the command mode aboard your ship:
- Fire Phasers
- Fire Photon Torpedos
- Lock Phasers Onto Target
- Lock Tubes Onto Target
- Manually Rotate Phasers
- Manually Rotate Tubes
- Phaser Status (does not use a turn)
- Tube Status (does not use a turn)
- Load/Unload Torpedo Tubes
- Launch Antimatter Probe
- Probe Control (Detonate, Redirect, Lock)
- Position Report (does not use a turn)
- Position Display (does not use a turn)
- Pursue An Enemy Vessel
- Run From An Enemy Vessel
- Manually Change Course And Speed
- Damage Report (does not use a turn)
- Scan Enemy (Damage Report Of Enemy)
- Alter Power Distribution
- Jettison Engineering
- Detonate Engineering
- Alter Torpedo And Phaser Firing Parameters
- Attempt Defenseless Ruse
- Attempt Corbomite Bluff
- Surrender
- Ask Enemy to Surrender
- Initiate Self-Destruct Sequence
- Abort Self-Destruct
- Survivors Report (does not use a turn)
- Print Version Number (does not use a turn)
- Save Game (does not use a turn)
- Reprints Above List (does not use a turn)
Detailed Descriptions of Each Command
What follows is a detailed description of each command. Each command is referred to by a number from 1 to 32. After the name of the command is given, a synopsis of the arguments the command requires is given, if any. These arguments can be entered on the command line, separated by whitespace, if you wish. For instance, to fire phasers 1 through 4 with a spread of 15, you could type ‘1 1234 15’ on the command line.
It should be noted that all numbers refer to parameters for the Heavy Cruiser Class ship, and that other ships have slightly different characteristics.
1. Fire Phasers.
[Phasers | all] [Spread]Phasers are pure energy units which emit a beam similar to lasers, but of a pulsating nature which can be `phased’ to interfere with the wave pattern of any molecular form. Phasers get their power from phaser banks, which in turn, derive their power from the ship’s engines. Each phaser bank is capable of holding a charge of 10 units. When firing, these banks discharge, similar to batteries, to spread their destructive power through space. After discharging, these banks are then recharged by the engines. Each phaser can be set to automatically track a target or can be manually rotated. Unless engineering is jettisoned (code 21), phasers only fire from 0-125 and 235-360 degrees, relative to the ship’s course. In other words, each vessel has a 110 degree blind side in back of it in which phasers cannot fire. If phasers fired into this blind side, they would destroy the ship’s engineering section.
The Captain also designates a wide or narrow phaser beam: a wide beam to disrupt many targets; a narrow beam to inflict maximum damage on a single target. The maximum spread of phasers is 45 degrees, the minimum is 10 degrees. The total beam width is twice the designated spread.
The firing percentage of each bank is preset to 100. In other words, the bank fully discharges when firing. This can be changed, however, using code 22.
The maximum range of phasers is 1000M; the maximum hit factor is 45 with a ten degree spread, 10 with a forty-five degree spread. Phaser hit factors are calculated by the following formula:
hit = (bankunits)(firing%)sqrt(1-range/1000)(45/spread)
Phasers fire in .2-second intervals starting with bank one. Phasers inflict heavy damage and casualties, but do not destroy shields as much as antimatter explosions do.
A phaser is unable to fire if damaged, if firing into your blind side, or if completely discharged.
2. Fire Photon Torpedos.
[Tubes | all]The Enterprise is equipped with six torpedo tubes, which, as phasers, can be set to automatically track a target or be manually rotated. Unless engineering is jettisoned, tubes only fire from 0-135 and 225- 360 degrees. Each tube fires all its antimatter pods, which are temporarily held suspended in a magno-photon force field. Photon torpedos can be fired directly at an enemy, laid out as a mine field, or scattered in an attacker’s path as depth charges.
Tubes must be loaded (code 9) prior to firing. Normally, torpedos are launched at warp 12 in .2-second intervals, beginning with tube one. Photon torpedos have a proximity fuse of 200M. All of these values can be changed by using code 22.
Torpedos must be launched with care since the antimatter pods which are fired can never be recovered. It is suggested that you not fire more than four torpedos at any one time, since a certain number of them do miss, or are destroyed by the enemy firing phasers at them. It is also suggested that you fire them at distant targets, beyond 1100M, to avoid the explosion radii of your own weapons. Hit factors resulting from antimatter explosions are calculated as follows:
hit = 5(#podscontained)sqrt(1-range/(50(#podscontained)))
The maximum hit factor of an antimatter device is five times the number of pods contained (in the case of torpedos, 50); its explosion radius is 50 time the number of pods contained (in the case of torpedos, 500). Antimatter explosions heavily weaken shields but do not damage equipment as much as phasers do. This formula also applies to vessels, engineering sections, and antimatter probe explosions.
A photon torpedo’s proximity fuse will not be activated by a cloaked ship.
Tubes are unable to fire if damaged, if firing into your blind side, or if unloaded.
3. Lock Phasers.
[Phasers | all] [Target Name]Phasers locked on an enemy vessel will automatically aim towards it. Although phasers may track a vessel which is in the firing blind side, they will not fire unless engineering is jettisoned. To fire at vessels in the blind spot, simply change course at least 55 degrees. Once a phaser is locked, it is not disengaged until the target is destroyed (in which case it is then rotated to zero degrees relative), relocked, manually overridden, or damaged.
Phasers can not be locked onto cloaked enemy ships as they can not find the target. Phasers that were previously locked onto a non- cloaked ship will track the enemy’s last known course and position when that ship cloaks.
4. Lock Tubes.
[Tubes | all] [Target Name]Tubes lock and unlock in the same manner that phasers do. Tubes suffer the same locking limitations that phasers do in reference to cloaked ships.
5. Manually Rotate Phasers.
[Phasers | all] [Bearing]Manually rotating phasers disengages any previous locks and positions them as directed, relative to your course. For example, if your course is 30, and phasers are rotated 45 degrees, they will hit a target bearing 75 degrees. Rotating phasers into you blind side is permissible, however, they will not fire.
6. Manually Rotate Tubes.
[Tubes | all] [Bearing]Manually rotating tubes is similar to rotating phasers.
7. Phaser Status.
Phaser status reports the control (locks and damages), deployment, levels, firing percentages (normally 100), and charge/discharge rates (normally +10) of all phasers. This command does not use a turn. Cf. Command 22.
8. Tube Status.
Tube status reports the control, deployment, tube levels, launch speeds (normally 12), proximity delays (normally 200), and time delays (normally 10) of all tubes. This command does not use a turn. Cf. Command 22.
9. Load/Unload Tubes.
[l | u] [Tubes | all]Each specified tube will be automatically loaded with 10 units or whatever remains in the engines, whichever is less. Tubes can also be unloaded if the need arises.
10. Launch Antimatter Probe.
[Pods] [Time] [Proximity] [Target | [ Course]]Probes are slow-moving devices equipped with internal guidance systems which allow them to chase an enemy vessel. Probes consist of at least ten antimatter pods which are launched from an undamaged probe launcher at warp three. As with torpedos, probes are set with time and proximity fuses, and use the same hit factor formula as do torpedos.
11. Probe Control.
[y | [n [Probe] [y | [n [Target | [ Course]]]]]]Probe control allows you to detonate or redirect probes which may have missed.
12. Position Report.
Position reports are vital since valuable information on courses, bearings and ranges are given to aid the formation of good strategy.
Each ship is listed along with its current speed, course, and bearing. Also listed is your relative bearing to that ship. A relative bearing of 0 means you are pointed directly at the ship, whereas a relative bearing of 180 means you are pointed directly away from the ship. Next is the reverse relative bearing, which gives the relative bearing of you with respect to the ship listed.
Cloaked ships show up with an asterisk (*) before the name, and the information displayed is the last available information on those ships. If no position report has been performed prior to the enemy ship engages a cloaking device, no information will be available on that ship. This order does not use a turn.
13. Position Display.
[Radius of scan]Position displays, similar to radar scans, show objects which surround your vessel. The Enterprise is indicated by a `+’, jettisoned engineering sections by a `#’, probes by a `*’, torpedos by a `:’, and enemy vessels by the first letter of their names. Enemy vessels that are cloaked appear as lower case letters and remain in their last noted absolute position.
14. Pursue An Enemy Vessel.
[Target Name] [Warp Factor]This order instructs the ship’s navigation to face an enemy vessel whenever possible. Obviously it is impossible to pursue a cloaked vessel.
15. Run From An Enemy Vessel.
[Target Name] [Warp Factor]This order, just the opposite of order #14, instructs the navigation to keep the stern of the Enterprise towards an enemy vessel whenever possible. Running from a cloaked vessel is not very useful.
16. Manually Change Course and Speed.
This order instructs navigation to maintain a fixed course and speed. The following information applies to the above three orders:
Your maximum rotation rate when turning is:
degrees per sec = 5 * (11 - current warp speed)
Accordingly, you can turn 55 degrees at warp one, 50 at warp two, and so on down to 10 degrees at warp nine. In other words, the faster your speed, the less maneuverable you are. You are also less maneuverable if your warp drive is damaged or destroyed. Your maximum speed is warp nine, the enemy’s is warp eleven.
17. Damage Report.
This report informs you of certain equipment status. A destroyed computer make orders 3 (lock phasers), 4 (lock torpedos), 14 (pursue), 15 (run), 27 (initiate self-destruct), and 28 (abort self-destruct) impossible to execute. You will be required to manually rotate phasers and torpedos, and manually change course and speed. Destroyed sensors makes orders 13 (position display) and 18 (scan) impossible. A destroyed probe launcher prevents you from launching probes. A destroyed warp drive slows your maximum speed to warp 0.99 and severly limits your maneuverability. See order 20 about jettisoned engineering section. When your crew of 450 dies, your vessel is as good as dead. There are 350 men aboard each enemy vessel.
All of the above systems can be partially damaged. A damaged warp drive (common) lowers your maximum speed and maneuverability. A damaged probe launcher (sometimes) may refuse to launch. Damaged sensors (rare) may not be able to return position displays or be able to scan an enemy. A damaged computer (very rare) will sometimes refuse to lock onto targets, and in addition, when damaged, may lose some of the locks held by the weapons or by the helm.
Shield percentage is calculated by its energy drain times its operating efficiency. Efficiency starts at 100 and declines with each hit. No damages of any kind are incurred when a shield absorbs its first hit, no matter how great the hit. Shield one is 1.5 times as strong as the other three shields.
`Efficiency‘ indicates the number of energy units being burned per warp-second. This number is initially one (.75 for enemy) and increases per hit.
`Regeneration‘ indicates the number of energy units being gained per second. Initially set at 10, this number decreases per hit.
`Fuel capacity‘ indicates the number of matter-antimatter pods a vessel has aboard. This number rapidly decreases with each torpedo or probe fired.
`Fuel‘ indicates the number of matter-antimatter pods which are filled with energy. This number rapidly decreases when maintaining high warp speeds or firing phasers.
18. Scan Enemy (Damage Report of Enemy).
[Ship Name | Probe id | #Ship Name]An enemy damage report is essentially the same as the Enterprise’s. Sensor reports can not be had for cloaked vessels.
By giving the id number of a probe, information about it can be gathered. The same information can be gathered about a ship’s (jettisoned) engineering by prepending a ‘#’ before the ship’s name.
19. Alter Power Distribution.
[Shld 1 drain [* | … Sh 4]] [Phsr 1 drain [* | … Ph 4]]The synopsis of this command can be confusing. The first set of numbers gives the drains for each shield. All four shield drains can be specified, but if a star is used immediately after a shield drain (eg, 19 0.5 1*), then the remaining shields will all be given a drain equal to the number preceding the ‘*’. (Thus, in the above example, shield 1’s drain is 0.5, whereas shields 2, 3, and 4 have a drain of 1). The same applies to the phaser drains.
The power circuits of all vessels are illustrated in Appendix 2. Dilithium crystals produce energy much like generators. This power is then used to maintain warp speeds, recharge antimatter pods in the engine reserve, recharge phaser banks, or maintain shield power. Your initial regeneration is ten, however, the shields normally drain four units and the engines require one unit per each warp-second.
Shields can be thought of as electromagnets. The more energy put into them, the stronger their force field becomes. Therefore, a shield’s overall percentage is calculated by the following formula:
shield percentage = (energy in)(effective %)
Notice that dropping power to a shield has the same effect as having it hit. Notice also that if your regeneration drops below four, you may have to discharge your phaser banks to maintain full shield power.
Phaser banks, similar to batteries, not only discharge (when firing), but also recharge. Initially, they are set to recharge fully in one second (+10) so that you can continually use them. However, they can discharge fully (-10) in one second to provide extra power to shields, warp engines, or engine reserve.
Under most conditions, you need not concern yourself with power distribution unless some special need arises. Distribution, for the most part, is automatic. Regeneration is calculated first; that power is placed in reserve, along with any discharged phaser units. Shield drain is calculated next, then the cloaking device, then phaser and engine drains.
Be concerned with wasting power by indiscriminately firing phasers and torpedos, maintaining speeds over warp three, or dumping scores of units onto antimatter probes. Huge power losses cannot be made up in battle.
20. Jettison Engineering.
Although this order was never executed in the television series, it is quite possible according to its producer. Jettisoning engineering has serious consequences, but it may be your only course of action.
One would jettison engineering if being pursed by vessels, probes or torpedos, or as a suicidal gesture.
The following things happen when engineering is jettisoned: A: You lose all your fuel and reserve capacity; B: you lose your regeneration; C: you lose your warp drive; D: your lose your probe launcher; E: you lose your shields until you designate phasers to discharge; F: the engineering section itself decelerates to a stop; G: a ten second time delay on it is set (hopefully, when it does explode, you are far from its effects); H: you lose your cloaking device; I: your phasers and torpedos are now free to fire in any direction.
21. Detonate Engineering.
[nothing | [y | n]]This order, issued after the previous one, manually detonates your engineering section. It may also be issued without the previous order, in which case you will be asked to confirm your (crazy) order.
22. Alter Torpedo And Phaser Firing Parameters.
[[y [Launch Speed] [Time Delay] [Proximity Fuse]] | n] [[y [Firing Percentage]] | n]This option allows you to change the launch speeds, time and proximity delays of all torpedos. At the beginning of play, torpedos are launched at warp twelve, have ten second time fuses, and 200M proximity fuses. Any vessel or engineering section which comes within the proximity range will cause the torpedo to explode.
Phaser firing percentages can also be altered. A phaser bank need not fire its full charge.
23. Defenseless Ruse.
[e | p]Another name for this tactic is `playing dead’. When issued, your shields are dropped to zero, and power is diverted to your engines or phaser banks. Hopefully, the enemy will believe you dead and come too close or break off their attack. You should then be able to fire or run in the opposite direction.
24. Attempt Corbomite Bluff(s).
There were two corbomite bluffs in the television series; one was against a midget operating a huge space vessel the other was against Romulan attackers. Both have been incorporated into this game. Whichever bluff issued is selected randomly.
25. Surrender, If Possible.
This order sends a message to the enemy, saying that you wish to surrender. The enemy will then decide whether or not take you alive. You will have difficulty surrendering to Romulans, who have never accepted one.
26. Ask Enemy To Surrender.
This order ends a message to the enemy demanding that they surrender. Please bear in mind that Romulans and Orions are the most suicidal.
27. Initiate Self-Destruct.
This order activates a twenty-second self-destruct sequence. Because final destruct does not occur until ten turns after initialization, it
is best to start it early, if at all. When you do explode, you hope that you explosive force will also destroy your attackers.
28. Abort Self-Destruct.
This order, issued after the previous one, halts the destruct sequence. Self-destruct cannot be aborted withing five seconds to detonation.
29. Survivors Report
This order prints out the number of survivors on board all the ships. This order does not use a turn. Cloaked ships are reported as having `???’ survivors.
30. Print version number
This command, which does not use a turn, prints the current version of TREK73.
31. Save game
This command saves the current game into a file. It can be restarted later by using the command line option `-r’. [DAS: Not yet implemented]32. Reprint Above List.
This command, which does not use a turn, lists code numbers and associated descriptions of each.
33 And Up.
Future options, currently being designed in Trek74, will include Dr. Daystrom’s paranoid, M5 multi-tronics computer which will take over while you relax; or battle someone else who is on another terminal; or battle in teams; or have a free-for-all against nine other players.
Command Line Options
The following is a description of the command line options:
-t Turns on terse mode. No initial scenario description is given. This is useful for terminals running at low baud rates. This option is normally off.
-c Allows the specification of the Federation captain’s name.
-s Specify the sex of the captain of the Federation vessel.
-S Specify the name of the Science Officer of the Federation vessel.
-E Specify the name of the Chief Engineer of the Federation vessel.
-C Specify the name of the Communications Officer of the Federation vessel.
-N Specify the name of the Navigator of the Federation vessel.
-H Specify the name of the Helmsman of the Federation vessel.
-f Specify the name of the enemy commanding officer.
-r Specify the race of the enemy. The race should be one of the following: Klingon, Romulan, Kzinti, Gorn, Hydran, Lyran, Tholian, Orion, or Monty Python.
-d Set the delay time for command entry. Higher times can be useful for novices or for playing on very slow terminals.
-y Silly option. Adds the Monty Pythons as a possible enemy race. This option is normally off.
-T Teletype option. Causes certain parts of the output to come out as they did on the original teletype implementation. Doesn’t do much for the game on crts. This option is normally off.
-n Specify the name of the Federation vessel. The default name for the Federation vessel is randomly chosen from a set of names.
-F Specify the class of the enemy vessel(s). Allowable classes are Destroyer (DD), Light Cruiser (CL), Heavy Cruiser (CA), and Dreadnought (DN). If the argument is none of the above, the program assumes that this is the name of a file where a player-designed ship is stored.
-l Specify the class of the Federation vessel. Available classes are the same as the enemy’s.
-R Restore the game from the savefile. It is assumed that the TREK73OPTS contains the name of the savefile, otherwise it is not possible to restart the game with the -R option. In case the savefile name is not in TREK73OPTS, the game may be restored by issuing the command with the path to the savefile as the first argument.
Appendix 1
Secondary Hull Primary Hull (engineering) ------- :-----------------------------------------\ | .5 | . . . . :: N C C - 1 7 0 1 |} |0 / 1|---< . . . . . ::________________________________________/ | | . . . . warp engines ^ | .5 | . . . . +++ |0 / 1|---< . . . . . ===== | fuel | | . . . . |+| + OOOOO reserve | .5 | . . . . |+| ---------> +++ ---> OOOOO --- +++ ---> |0 / 1|---< . . . . . ------- + ***** | | . . . . | | ***** shield | .5 | . . . . ------- | \ control |0 / 1|---< . . . . . dilithium * \ ------- . . . . crystal *** +++ shields generator * \phaser control | -------- : : : | |-10/10|-OOOO>. . : : : | : : <***: <[=====| <---+ |-10/10|-**OO>. . : : : : probe launcher | |-10/10|-****> V |-10/10|-****> =*******= -------- phaser banks photon =*****=== torpedo =**====== tubes =======****** ========= ******* ========= ******** + Energy unit O Matter-anti-matter pod * Filled matter-anti-matter pod ---+++---> Energy transfer ---***---> Pod transfer
Appendix 2
Shield 2 | 135 90 \\,,,,,,,,''-``,,,,,,,, ,,''\ .Phaser.Firing An``,, 45 ,' \ \125 gles`,/ ,' \. . Torpedo. . `, :------------------------\ \135_-----_ Fir . , :________________________/ _- 1 -_ ing . ` | || / 0 \ Angles . | Shield | ,_^^_____/| _ 7 | . . | Shield -180| [ { (o) 1 } . . |0- 3 | `-vv-----\| - C | . . | 1 | || \ C / . . | :-----------------------\ -_ N _- . . , :_______________________/ -_____- . . ' `, /225. . . . . . . ,' `, / . ,' \ ``,/ /235. . . . . . . . ,,'' 315 /`````````,,_,,'''''''' 225 270 | Shield 4
Appendix 3
Weapon And Vessel Specifications Enemy exceptions are enclosed within [brackets] Phasers Number of banks 4 Max range 1000 megameters Max spread 90 degrees (45+45) Min spread 20 degrees (10+10) Max hit with 45 degree spread 10 Max hit with 10 degree spread 45 Loss of shield 1 per hit hit/4.5 Loss of shields 2-3-4 per hit hit/3 Firing angles with engineering 0-125, 235-360 degrees Max charge per bank 10 units Min charge or discharge time 1 sec Tubes Number of tubes 6 Max range 12,000 megameters max launch speed warp 12 Max time delay 10 seconds Max proximity delay 500M Max explosion radius 500M Max number of pods launched 10 Max hit factor 50 Loss of shield 1 per hit hit/3 Loss of shields 2-3-4 per hit hit/2 Firing angles with engineering 0-135, 225-360 degrees Probes Number of probe launchers 1 Max range 3000M Max launch speed 2 Max time delay 15 sec Max proximity delay any Max explosion radius 50 times number of pods Max pods launched fuel available Max hit factor 10 times number of pods Loss of shields per hit same as torpedos Firing angles with engineering all Vessels Max turning rate 50 degrees Max speed warp 99 Min units burned per warp-second 1 [.75] Crew 450 d[350]
Appendix 4
Initial Settings Enemy exceptions are enclosed within [brackets] Crew 450 [350] Speed 1000 megameters Course 0 [0-360] degrees Engine Efficiency 1 [.75] Fuel Level 150 Fuel Capacity 200 Regeneration Rate per Second 10 Helm Lock None [Federation Vessel] Phaser Deployment 90, 0, 0, 270 Phaser Bank Levels 4 x 10 units Phaser Charge/Discharge Rates 4 x 10 units Shield Drain 4 x 1 units Shield Percentage 4 x 100 Torpedo Deployment 120, 60, 0, 0, 300, 240 Tube Levels 6 x Zero Total Charged Pods Available 190
Appendix 5
Designer's Notes When I was about 10 or 11, I would go to the Lawrence Hall of Science quite frequently. There, on their time-sharing system, I would sit at a Teletype Model 33 and play trek. Sadly, LHS replaced their system and trek went away. It was my intention that it should not be forgotten. I had had a copy of a slightly different version of trek written in BASIC, but it was sadly unimplementable on my Apple computer. When I learned of an implementation of trek written in C, I jumped at the chance to bring it to the systems here at UC Berkeley. At that time, the game was mostly a direct translation of the original BASIC source. Many of the commands and routines were either missing or faulty. With Peter Yee, we worked together to fix up the program and managed to get it running. Once it was running, the time came for improvements. I admit to pulling many concepts from the game Star Fleet Battles, most notably the different races (Hydrans, Lyrans, etc.) and the ship names. This version of the game represents many hours of thinking and debugging. I hope you enjoy playing it as much as I did coding it. -Jeff Okamoto My first experience with TREK73 was also at the Lawrence Hall of Science. I had been taking classes in Time-Sharing Basic and noticed that other people always talked about a game called $TREK that was a real CPU hog and was usually turned off. Naturally I was intrigued. Soon I was paying $2.00 an hour for the chance to play that game. Many long hours and quite a few dollars went into playing $TREK, so it was with a certain sadness that I learned that the DG Ecllipse on which $TREK ran was being phased out. I made several attempts to obtain the source before it went away, but I was unable to get it. Fortunately for me, Dave Pare at UC San Diego was also a fan of the game, and more importantly, he had an outdated copy of the source from an HP 2000. Dave had started to implement the game in C to run under 4.2 BSD UNIX. Expressing my interest to Dave, I was able to get a copy of Dave's code and thus the TREK Project at Berkeley was started. I spent endless hours tweaking with Dave's code, implementing some of the fifteen or so commands that he had not yet translated. At about this time, I learned that Christopher Williams, here at Berkeley, had also tried to implement the game in C. What is more, he had a copy of the source (in BASIC) from Berkeley High School, and had implemented most of the commands. Merging the work that Chris had done into my copy of Dave's work led to a fairly complete version of the game. There still remained a large number of bugs, poor ideas, and outright mistakes in the code, but it ran. Jeff Okamoto, being a fan of the game and a Star Fleet Battles player, was greatly interested in hacking on the game to bring up to par with the version that ran at LHS and to extend it even beyond that. Thus our partnership was formed and the current version of the game represents several hundred hours of our joint work (and play). Also represented are the suggestions, modifications and bug fixes we received from numerous people, including (to name a few) Matt Dillon, David Sharnoff, Joel Duisman, all at Berkeley, and Roger Noe at Rockwell International. It is hoped that this implementation of a classic game will bring joy (and perhaps fond remembrances) to all who play. Live Long and Prosper, -Peter Yee [DAS] I never knew any of the people mentioned above. I used to play Trek73 from 1977-1981 when I was in high school on our HP2000-F system. I always wanted a version I could run on my own computer, and when I got my first Apple back in 1980 I started converting the program from HP Basic to Applesoft. The Apple version ran so slowly it wasn't worth playing, and I stopped my conversion work. My brother, who for the two years before I entered high school used to play Trek73, called me up one day and told me that a version written in C had come across the unix network where he worked, which was Bell Laboratories in Naperville, IL. A week later I stopped in and downloaded all the files to a PC that was sitting around. There were quite a few differences between the version of C that ran under unix and the Lattice C compiler which I had for my PC. After much work and some cursing, what you see before you had been completed -- Trek73 which ran on the IBM PC as well as the clones. There are still some problems. The save game feature has not yet been converted, as the unix file calls were different from the calls I had under Lattice. The timer for your inputs has not been set up. Due to the fact that an integer under Lattice is 16 bits wide, it was possible to run off the edge of the universe. This has recently been updated to longer integers and should no longer be an issue. These problems will be cured as I find the time to cure them. There are still some references to Unix unique things in both the program and in this .DOC file. I released this in its current form to get people to start playing the game and giving some feedback. I will be making changes constantly, so the more feedback I get the better the game will become. In the original game, there was only one class of ship. This is the ship you will fly or fight if you do not specify any command line options. I suggest you play and master the original before you start experimenting with the options (especially I just finished converting the option parsing routines and haven't fully tested them yet). Please send any bugs, comments, donations, suggestions, etc. to me. If accompanied by a contribution ($20 suggested, but never required) I'll give it more attention than if it isn't ;) If the bug appears to exist in the original Unix code, I will forward the information to the original authors. I can be reached at the following address: David A. Soussan 368 Rimini Ct. Palatine, IL 60067 (708) 934-0905 - leave a message. davids@comm.mot.com I hope you enjoy this game as much as I did (and still do!) -David