From: El Nada <wombat@visi.com>
Date: Tue, 18 Nov 1997 20:02:05 -0600 (CST)

This program really worked well for me, so here goes...

PROGRAM LISTING
===============
Program    : Runner
Created by : SIC
Email      : wombat@visi.com
Date       : 11/18/97
Evaluation : Extremely agile OKE capable of dodging anything. Accurate
firing
             and obstacle/friend avoidance. Using only 2-legged OKEs, this
             program beat Europa and Gannymede without adding or upgrading
any
             production lines. Beat Callisto using 2-legged OKEs and
             Manticores with this program, with a few line upgrades.

Body       : Any 2-legged OKE, can also be used in 4-legged OKEs
Engine     : Any
Main weapon: Any Laser
Sub weapon : Any Missile or Large Missile
CPU        : any 144NC or higher (CP-588FX is available at start)
Fuel tank  : Any
Armor      : Any
Option     : Any (space for jammer at B4)

Acknowledgment
==============
This format was created by Arne Michaelsen (arne@cco.net).

You must view this file with a fixed width font, such as courier, or 
within a vanilla ASCII text editor (such as edit.com or notepad.exe). 
Proportional fonts will turn this file to hash.

     | |  These bars will line up  | |
     | |                           | |
     | |    in fixed width type.   | |


Legend
======
Chip sides with green arrows are open because they show the normal program
flow. Red arrows pass through closed chip-sides, since they represent a
divergence. 

      +  /\  +                +==/\==+
                              |      |
      <      > Chip with      <      > Chip with
               all green      |      | all red
      +  \/  + arrows         +==\/==+ arrows

Chips are read in the same way they are in the game.

         Red arrow

          +==/\==+
           Scan E|  <-- Scan for enemy
   Green  < 120m |  <-- At a range of 120m
   arrow   90 180|  <-- Bearing 90 (right), 180 degree arc
          +======+

Scan codes are as follows:
     E=Enemy         F=Ally
     P=Projectile    M=Missile
     N=Mine          O=Obstacle

Note on headings in Scan chips: 9o=-90 (-90 wouldn’t fit)

     A      B      C      D      E      F      G      H      I      J
  +  \/  +======+======+  /\  +==/\==+======+======+======+======+======+
  |  If   Scan F|Scan F| Count| Move |000000|000000|000000|000000|000000|
 1|  A=2 > 300m > 300m >  A+1 | Back |000000|000000|000000|000000|000000|1
  |       90 180|9o 180|      |      |000000|000000|000000|000000|000000|
  +==\/==+  \/  +  \/  +  /\  +  /\  +======+======+======+======+======+
  |      | Jump   Jump        |      |000000|000000|000000|000000|000000|
 2|  --  |Right > Left > Wait | Grap |000000|000000|000000|000000|000000|2
  |      |                    |      |000000|000000|000000|000000|000000|
  +  \/  +======+======+======+==/\==+======+======+======+======+======+
  |       Scan M        Scan P Scan E|000000|               Move |       
 3|  --  >  50m >  --  >  50m >  30m |000000|  --  >  --  > Left |  --  >3
  |        0 354         0 354  0 135|000000|                    |       
  +  /\  +==\/==+  /\  +==\/==+  \/  +======+==/\==+==/\==+======+======+
  |      |             |      |Scan E| Ammo  Scan O Scan F  Fire         
 4|  --  | Jam  >  --  | STOP | 100m > Sub  > 100m > 100m > Sub 1>  --  >4
  |      |             |      | 0 33 |  <1    0 39   0 39   0 39         
  +  /\  +======+  /\  +  \/  +  \/  +==\/==+==/\==+==/\==+======+======+
  |        Jump |      |Scan P|Scan E| Ammo  Scan O Scan F| Fire         
 5|  --  < Left | Duck <  20m | 200m > Main > 200m > 200m | Main >  --  >5
  |             |      | 0 354| 0 33 |  <1    0 39   0 39 | 0 39         
  +  /\  +==/\==+======+  \/  +  \/  +==\/==+======+  \/  +  /\  +======+
  |      | Rand        |Scan P|      |      |      | Heat        |000000|
 6|  --  | 1/2  <  --  <  50m |  --  |  --  |  --  <  >70 >  --  |000000|6
  |      |             | 0 90 |      |      |      |             |000000|
  +  /\  +  \/  +  /\  +  \/  +  \/  +  \/  +  \/  +======+======+======+
  |        Jump |      |Scan P|Scan E| Move        |000000|000000|000000|
 7|  --  < Right|  --  <  50m | 300m > Fwd  >  --  |000000|000000|000000|7
  |             |      |180 90| 0 33 |             |000000|000000|000000|
  +  /\  +======+======+  \/  +  \/  +======+  \/  +======+======+======+
  |        Jump |      |Scan P|Scan E| Turn        |000000|000000|000000|
 8|  --  < Back |  --  <  50m | 300m > Right>  --  |000000|000000|000000|8
  |             |      | 90 90|90 180|             |000000|000000|000000|
  +  /\  +  /\  +  \/  +  \/  +  \/  +======+  \/  +======+======+======+
  | Jump | Rand        |Scan P|Scan E| Turn        |000000|000000|000000|
 9| Fwd  < 1/5  <  --  <  50m | 300m > Left >  --  |000000|000000|000000|9
  |      |             | 9o 90|9o 180|             |000000|000000|000000|
  +======+======+======+  \/  +  \/  +======+  \/  +======+======+======+
  |000000|000000|000000|      | Move |000000|      |000000|000000|000000|
10|000000|000000|000000|  --  | Fwd  |000000|  --
|000000|000000|000000|10
  |000000|000000|000000|      |      |000000|      |000000|000000|000000|
  +======+======+======+  \/  +  \/  +======+  \/  +======+======+======+
     A      B      C      D      E      F      G      H      I      J

Hardware Decisions:
--Lasers are better than AP cannons or shotguns. AP cannons just plain
suck,
  and Shotguns do almost no damage unless they are fired at point blank
range.
  Lasers are powerful and have an effectively unlimited range.
--Rockets are bad. They are very easy to dodge and don’t turn into tons of
  explosions unless their target is just sitting there waiting to be
killed.
  Missiles can be jammed, but rockets don’t need to be jammed to easily
avoid
  them. Alpha missiles or Medusa large missiles are very powerful and
always
  hit.
--Putting this in a Prowler will let it take on tanks or 2/4-legged OKEs
  without trouble, but it may be wounded after 1 battle and having it
fight 2
  or 3 in a row is risky. Putting it in a JuJuman will let it fight 2 or
more
  fights without worry. Putting it in a Vipor will make it nearly
invincible.
  When I played the last map on Gannymede, none of my Vipors got damaged
at
  all.
--If you put this program in a 4-legged OKE, change all the projectile and
  missile checks to 60 or 70 meters (Ducking at 25) to compensate for
their
  slower jumps.
--4-legged OKEs fire more shots quicker than 2-legged OKEs, but they have
a
  harder time dodging. Experiment and see what kind of OKE is best for
you.
--Giving this OKE a missile jammer really helps. With one, this OKe can
dodge
  anything. If you really don’t care if a few of them get blown up, give
it an
  Armor Repair Device. It will quickly eliminate what little damage this
OKE
  takes.

Software Decisions:
--”Wasted Spaces” and “Wasted Time” are irrelevant. With a medium speed
chip,
  the OKE dodges almost immediately and tells it to dodge 3+ times while
it
  is already dodging.
--Dodge First, Fire Later.
--Change the Enemy, Obstacle, and Friend Detection range (E4, G4, H4) for
the
  sub weapon firing to suit your choice of sub weapon.
--Change the heat check at H6 to suit your OKE’s weapon

Explanation of Program:
At the start, the OKE jumps right twice if there are no friends on the
right, left twice if there are no friends on the left, or it stays put if
it is surrounded by friends. This results in a more spread out fighting
formation. Change the number in A1 if you want to change the number of
times it jumps. Once it is done with this, that piece of code is never
executed again. Next, It detects if there are any missiles near and jams
them. Notice how after jamming that the code flow continues after the
missile detection and not before it, so the OKE does not sit in one place
and jam missiles while they are near. If it detects projectiles near, it
stops whatever it is doing and avoids fire. If projectiles are very close,
it ducks. If projectiles are coming from the front or back, it jumps left
or right. If projectiles are coming from the sides, it jumps forward or
back. Notice how the probability of jumping forward is 1/5. This helps
avoid the OKE jumping toward an enemy that it is facing.
If no projectiles are coming, the OKE immediately checks for an
opportunity to grapple. Notice the Move Back chip right after the grapple.
Normally it does nothing, but if the target is about to explode, the
grapple is not executed and the OKE backs off to a distance of 30m. The
OKE then checks to see if an enemy is in front of it at a distance of 100m
for the sub weapon and 200m for the main weapon. If it is out of sub
weapon ammo it automatically diverts to main weapon firing instead of
moving forward (grappling is much more risky than just firing the main
weapon). If it detects an obstacle or friend in the way when firing it
diverts to sub weapon firing checks. This can result in sub weapon firing
at long ranges, but if you have missiles or large missiles it isn’t a
problem. If it detects obstacles or friends in both instances it makes the
OKE move left. Having it randomly chose to move left or right would just
cause it to rapidly switch between right and left movement, accomplishing
nothing. You could edit the program to have it randomly jump left or
right, but in my experience this causes the OKE to jump into mines and
enemy OKEs too often to be worth it. A heat check stops the OKE from
firing if it is too hot. This isn’t a problem for a Prowler, JuJuman,
Livewire, or Rouge, but it should be set at 70 or 75 for a Vypor and 60 or
65 for a Manticore.
If no enemies are within range in front of it, it starts searching. If an
enemy is in front but just too far ahead, it walks forward. If an enemy is
to the left or right, it turns left or right. If it can’t find an enemy
anywhere, it walks forward. The only weakness in this program is that it
has no chips for avoiding mines. I left it out even though I could have
fit it in because it would cut off the heat detection chips. If you want
it to avoid mines, have the “Move forward” at F7 changed to “no action”,
have the “no action” at G7 pointing left to a “Scan mine” chip set to scan
for mines right in front of it with red arrow up and green arrow right.
Above it place a “move right”, and to the right of that place “no
instruction” chips leading to the edge of the board. To the right of the
“Scan mine” chip place a “move forward” chip with “no instruction” chips
to it’s right leading to the board’s edge. This cuts off the heat
detection chips, change the firing chips so it goes directly to firing the
main weapon.

How to beat the game with this program:
--Mass produce OKEs. They are cheap compared to other costs.
--Have wounded units retreat to a base to recover.
--Send the stupid OKEs you start off with to an enemy base and swarm it.
It
  will easily fall. If you can give yourself a maufacturing advantage
early on
  in the battle, you can easily win.
--Play defensively untill you have enough OKEs to attack. This is
extremely
  important in Callisto and maps like the last one on Gannymede. Once you
have
  a manufacturing advantage, you can go on the defensive and not worry
about a
  horde of enemy OKEs coming up.
--Research The JuJuman and Manticore ASAP. They are much better than
Prowlers
  and other 4-legged OKEs. A mixed group of JuJumen and Manticores make a
very
  good team.
--The Vypor is probably the best OKE. It is very fast and fires triple
shots.

Just for Fun: The  Manticore has a VERY powerful physical attack, so give
a
Manticore this program and replace the main weapon and sub weapon firing
chips
with move forward chips. It will advance towards the enemy and smash it to
kibbles.