+ elite-cmdr [FILE] [-OPTION | ATTR | ATTR=VALUE | FILE] ...
+
+ A command-line Elite commander editor and viewer. With a single
+ argument, reads a commander file and displays its contents as a
+ human readable table. The arguments may be special options,
+ attribute names, attribute assignments, or filenames.
+
+ The special options are:
+
+ -show Write the commander data to standard output as a
+ human-readable table. This is the default if no
+ other output action is requested.
+
+ -load FILE Read the commander file named FILE.
+
+ -save FILE Write the modified commander data to FILE.
+
+ -reset Reset the commander to the default `JAMESON'
+ settings.
+
+ -dump Write the commander data to standard output in
+ the form of a script which can be read back by
+ the `-read' option.
+
+ -read FILE Read attribute/value pairs from FILE, and modify
+ the commander accordingly.
+
+ An attribute name on its own is a request to print the current
+ value of that attribute. An assignment ATTR=VALUE makes ATTR
+ have the requested VALUE. When requesting attributes, you can
+ instead give a pattern containing `*' and `?' metacharacters
+ (matching zero or more, or exactly one character) -- all
+ matching attributes are printed.
+
+ The attributes, their meanings, and the acceptable values are as
+ follows:
+
+ mission The commander's current mission. (0 is no
+ mission; 1 is searching for the Constrictor; 2
+ is killed the Constrictor; 3 is waiting for the
+ second mission; 4 is heading for Ceerdi; 5 is
+ heading for Birera; and 6 is all missions
+ completed.) Must be an integer between 0 and
+ 255.
+
+ score Current number of kills. Must be an integer
+ between 0 and 65535, or one of the strings
+ `harmless', `mostly-harmless', `poor',
+ `average', `above-average', `competent',
+ `dangerous', `deadly', or `elite'.
+
+ legal-status Current legal status. Must be an integer
+ between 0 and 255, or one of the strings
+ `clean', `offender', or `fugitive'.
+
+ credits Number of credits. Must be between 0 and
+ 429496729.5.
+
+ cargo Size of cargo bay. Must be between 4 and 255.
+
+ gal-number Number of the current galaxy. Note that this
+ doesn't affect which galaxy the commander is
+ actually in -- set gal-seed for that. Must be
+ between 1 and 8.
+
+ gal-seed Which galaxy the commander is in. May be any
+ galaxy-spec.
+
+ world Which world the commander is docked at. May be
+ any planet-spec describing a world in the
+ correct galaxy. (Note that, since the commander
+ file actually stores the location as an x, y
+ pair and chooses the closest world to those
+ coordinates, and there are coincident pairs of
+ worlds, it is not possible to have a commander
+ start at some worlds.)
+
+ market-fluc The market fluctuation byte. Affects prices at
+ the space station. Must be an integer between 0
+ and 255.
+
+ fuel Amount of fuel. Must be between 0 and 25.5.
+
+ energy-unit Strength of the ship's energy unit. May be an
+ integer between 0 (none) and 255 (scary cheat)
+ or one of the strings `none', `standard', or
+ `naval'.
+
+ front-laser, rear-laser, left-laser, light-laser
+ Strength of appropriate laser. May be an
+ integer between 0 (none) and 255 (scary cheat)
+ or one of the strings `none', `pulse', `beam',
+ `mining', or `military'.
+
+ ecm, fuel-scroop, enery-bomb, escape-pod,
+ docking-computer, gal-hyperdrive
+ Whether the ship has various bits of equipment.
+ One of `yes', `true', or `on' for yes, or `no',
+ `false' or `off' for no.
+
+ missiles Number of missiles carried. Must be an integer
+ between 0 and 255.
+
+ hold-ITEM, station-ITEM
+ Quantity of some item in the ship's hold, or at
+ the station. Must be an integer between 0 and
+ 255. ITEM must be one of `food', `textiles',
+ `radioactives', `slaves', `liquor-wines',
+ `luxuries', `narcotics', `computers',
+ `machinery', `alloys', `firearms', `furs',
+ `minerals', `gold', `platinum', `gem-stones', or
+ `alien-items'.
+
+ # A special attribute which is never printed. Its
+ value is ignored. This may be used to insert
+ comments in script files.
+
+ Anything else is assumed to be a filename, and loaded as for the
+ `-load' option.
+
+
+ elite-prices [-g GALAXY] [-s SORT] [FROM [TO]]
+
+ Shows minimum, average and maximum profit (in that order, in
+ credits per unit) for the various commodities, starting at one
+ kind of world and ending at another.
+
+ By default, the commodities are listed in standard order, and
+ the profits are computed going from a poor agricultural world to
+ a rich industrial one.
+
+ You can change the worlds under consideration by typing a pair
+ of planet-specs or economy types (as printed by `elite-find').
+ Any planet-specs are obviously taken relative to GALAXY. You
+ can also say `avg' for the average over all economy types
+ (though this takes longer to compute).
+
+ The SORT parameter may be one of `min', `max', or `avg' to sort
+ by minimum, maximum or average profit (highest at the top).
+
+ If only FROM is given, the average prices for the given world or
+ economy type are printed in the standard order (i.e., the SORT
+ parameter is ignored).
+
+
+ elite-salesman [-OPTIONS] GALAXY [START]
+
+ Solver for the Travelling Salesman Problem. Plots a route
+ around (a connected subgraph of) GALAXY. The START planet has
+ two related purposes:
+
+ * It identifies which subgraph to tour. If the galaxy is split
+ into mutually unreachable subsets, it's obviously impossible
+ to visit the whole lot.
+
+ * If you specify the `-nocycle' option (see below), then START
+ is the starting place for the tour.
+
+ The following options affect the problem to be solved:
+
+ -w WEIGHT Choose how to weight journeys. This has the
+ same meaning as in `elite-path'. The default is
+ to minimize the number of hops.
+
+ -d DIST Distance we can travel in one hop, in
+ lightyears.
+
+ -cycle Find a cyclic route through the galaxy (i.e., so
+ that when you finish, you come back to where you
+ started). You can use a cyclic solution to tour
+ a galaxy from any starting point. This is the
+ default.
+
+ -nocycle Find a route which begins at START, covers
+ all the planets, and then stops. Presumably you
+ use a galactic hyperdrive to get to the next
+ galaxy, or something.
+
+ The solution is displayed as a list of planet summaries. An
+ indented line indicates a world you have to visit just to get
+ somewhere else.
+
+ The program doesn't compute an optimal solution -- doing so
+ would be very slow indeed, since the Travelling Salesman Problem
+ is NP complete. Instead, it uses a technique called `simulated
+ annealing' to try to home in on a good solution. There are a
+ number of options you can use to tweak this process. The
+ default settings produce relatively good answers, but take about
+ five minutes to run. Try playing with them, and see what sorts
+ of results you get.
+
+ -temp The initial temperature of the system. The
+ temperature controls how willing the process is
+ to accept a move which increases the journey
+ cost -- a high temperature means that `bad'
+ moves are more likely to be accepted. The
+ temperature should initially be greater than the
+ maximum possible cost of exchanging two hops on
+ the route. The default is 1024, for no
+ particularly good reason.
+
+ -cool Cooling factor. Each cooling cycle, the
+ temperature is reduced by this factor. It
+ should be a little greater than 1. The default
+ is 1.001. Smaller values (nearer 1) take longer
+ but tend to produce better results.
+
+ -inner Number of swapping iterations to do each cooling
+ cycle. The default is 10000.
+
+ -dead The number of `dead' cycles (ones in which we
+ never make an improving move) before we give up
+ and accept the solution. The default is 200,
+ which seems to work OK.
+
+ Simulated annealing is an interesting technique which is
+ applicable to a wide variety of optimization problems. There
+ are some decent descriptions on the 'net -- try asking Google
+ about it.
+
+