home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / DOOR / BSIM2.ZIP / BSIM.DOC < prev    next >
Text File  |  1994-08-17  |  19KB  |  468 lines

  1.                             BSIM v2.00
  2.  
  3.   Hi,
  4.  
  5. BSIM is an universal battle simulator.
  6. It is able to set up battles and use VCR.EXE to show them visually and it
  7. can set up host data to simulate multiship battles. (VCR.EXE comes with
  8. VGA-Planets)
  9.  
  10. Note that BSVCR.EXE (VCR.EXE) is written and copyrighted by Tim Wisseman.
  11. You may not modify it without his permission.
  12.  
  13. BSIM.EXE is freeware. You may upload it to any bbs or distribute it
  14. on the internet as long as it serves no commercial purpose.
  15.  
  16. Please read the FAQ appended below, it may clear up some things a bit
  17. (I get a lot of questions about this simulator :-)
  18.  
  19.  
  20. Getting started
  21. ===============
  22. If you don't want to read the doc NOW then just start BSIM. At first it
  23. might be confusing that I keep separate data for both modes (multiship
  24. and visual) but it is, IMHO, necessary. Please read the doc before you
  25. report any 'bugs' that aren't really bugs :-)
  26. You can change the setup with ^C (Ctrl-'C' or Strg-'C').
  27. Make sure that you have no subdirectory named 'bsimdata'.
  28.  
  29.  
  30. Disclaimer of warranties
  31. ========================
  32. BSIM is not warranted in any way.  If you use it you use it at your own 
  33. risk. The author is not liable for any damage or loss of data that may
  34. occur during regular usage of BSIM.
  35.  
  36.  
  37. Release note 
  38. ============
  39. This is version v2.0 first public release
  40. New : multiship battles
  41.  
  42.  
  43.  
  44. Discrepancies between planets and this simulator
  45. ================================================
  46. In Multiship mode host generates the results and the vcr files,
  47. so there are no differences at all (at least as far as the combat itself
  48. is concerned, the combat order may differ between several host versions).
  49.  
  50. In Visual mode it works in the following way:
  51. The general battle algorithm is that host passes the ship stats (like mass,
  52. armament, ammunition etc.), one random number, and the two ID's to VCR.EXE
  53. (the number initializes the random generator, which decides the battle
  54. outcome.)
  55. I generate the stats the same way host does, and I randomize the ID's and 
  56. the number, so there should be no differences between BSIM and actual 
  57. battles fought in the game. (exceptions are possible bugs).
  58.  
  59.  
  60.  
  61. Requirements
  62. ============
  63. You will need all files described below, about 350k memory and a version
  64. of HOST.EXE in the directory where you start BSIM or in the path.
  65.  
  66.  
  67. Files
  68. =====
  69. BSVCR.EXE   : patched VCR.EXE (from VGA-PLANETS, written by Tim Wisseman)
  70.               (you need the version that comes with bsim2).
  71. BSIM.EXE    : battle simulator 
  72. BSHOST.EXE  : small exe that starts host.exe and returns to bsim afterwards
  73.  
  74. The following files come with VGA-Planets, and must be in the directory where
  75. BSIM is called :
  76.  
  77. HULLSPEC.DAT
  78. ENGSPEC.DAT
  79. BEAMSPEC.DAT
  80. TORPSPEC.DAT
  81. TRUEHULL.DAT
  82. RESOURCE.PLN
  83. TECH.MOF
  84. RACE.NM
  85. PLANET.NM
  86. XYPLAN.DAT
  87.  
  88. Note : bsim will generate a vcr file (VCR?.DAT), the path info (PATH.DAT)
  89. and a VCRINIT.TMP.  BSVCR.EXE will leave a TEMP.PLN file.
  90.  
  91. The old files, if they exist, will be renamed (to *.OLD). If you exit the
  92. simulator, they will be restored.
  93. However, if you leave the simulator by a system-reset, a power outage etc., 
  94. Planets might behave strangely because it finds the above
  95. mentioned files. BSIM shouldn't do any damage but if you have an unpacked
  96. result in the directory where you ran BSIM then you might need to rename
  97. the .old files back to .dat .
  98.  It isn't required that you run BSIM from your planets dir. You can just
  99. move all the files listed above into a seperate dir and run BSIM from
  100. there.
  101.  
  102. IMPORTANT :
  103. *********
  104. In the multiship mode bsim will create a directory with host data.
  105. The default name for the subdirectory is "bsiminfo" (but you can change
  106. the name). Any existing host data in this directory will be DESTROYED !!! 
  107.  
  108.  
  109.  
  110. BSIM details
  111. ============
  112. Bsim has two seperated modes. They will be referred to as
  113. 'Visual mode' (this is the mode where you can watch single battles)
  114. and 'Multiship mode' (bsim uses host.exe to determine the battle outcome).
  115.  
  116.  
  117. Visual mode
  118. ~~~~~~~~~~~
  119. In this mode you can enter any number of matchups. The ship on the right
  120. side will fight the ship on the left side. All stats in this mode will
  121. be used to generate a VCR.DAT file for BSVCR.EXE.
  122.  
  123.  
  124. Multiship mode
  125. ~~~~~~~~~~~~~~
  126. The main idea in this mode is to generate host data according to your
  127. needs and then run host. The problem is that different host versions
  128. may react different so you can select several parameters to make sure
  129. that you get the results you want to.
  130.  
  131. You can enter several 'matchups'.  Every matchup consists of a number
  132. of ships that fight each other. You can run every matchup as often
  133. as the 500 ship limit allows. Only one planet or one starbase is
  134. allowed per matchup (or did you ever see 2 planets involved in one fight :-)
  135.  
  136. The ID's of the ships will be chosen at random.
  137. The following switches will influence the Battle order, the ID's, ship
  138. missions and friendly codes :
  139.  
  140. (1) Battle order control :
  141.     If you select "Friendly codes" then the ID's will be totally random
  142.     and the friendly codes be set to numerical values according to the
  143.     way HOST3.1x uses the friendly codes to control the battle order.
  144.     They will be ordered in the way the ships are arranged (i.e. first
  145.     ship gets the lowest friendly code).
  146.  
  147.     If you select "ID's" then bsim will additionally assign the ID's
  148.     according to the battle order, i.e. the first ship gets the lowest
  149.     ID.
  150.  
  151. (2) Variable battle order
  152.        If you enable this switch then the battle order for the selected side
  153.        will be randomized. This is useful for situation where you know that
  154.        you have to fight against a fleet of different enemy ships but you
  155.        don't know in which order they will fight.
  156.  
  157. (3) Multirace mode
  158.     If this switch is off then only two races are allowed (one for each
  159.     side). All ships will get the Kill!-Mission. In this mode the battle
  160.     order works well (at least with host 3.14a).
  161.  
  162.     If you have more than 2 races involved then the battle order won't
  163.     work as you expect (at least with host v3.14a). In most cases the
  164.     first race will fight first (i.e. Feds vs. Lizards, then Feds vs. Birds,
  165.     ..., and last Rebels vs. Colonials).
  166.     In this mode you have the total control over all details (friendly
  167.     codes, mission, primary enemy and race). You can set up a scenario and
  168.     see how host reacts. Note : The 'randomize battle order' switch will
  169.     change the friendly codes if enabled.
  170.  
  171.  
  172. Multiship battle evaluation
  173. ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  174. After the host runs bsim will evaluate the host data.
  175. For every matchup you get a table with all ships (plus the planet/starbase)
  176. which shows you how often every ship survived or was captured plus a few
  177. statistical details. These statistics are calculated only for the survived
  178. ships, i.e. destroyed or captured ships won't influence the stats.
  179.  
  180. The columns have the following meanings :
  181. B      beam number
  182. BT     beam type
  183. T      torp number
  184. TT     torp type
  185. FB     fighter bays
  186. Fish   torps/fighters
  187. surv.  # how often the ship survived (captured means not survived)
  188. capt.  # how often the ship was captured
  189. dam    damage after combat, average/minimum/maximum (only survived ships)
  190. fish   fighters after combat, average/minimum/maximum (only survived ships)
  191.  
  192. You can print the results to a file or to a printer (stdprn). You can also
  193. watch single battles visually (n/a yet).
  194.  
  195. Bsim won't remove the host data so you can have a look at the generated
  196. results if you want to. To seperate the battles every ship gets a name
  197. extension with the format "| <matchup> <battle> <side> <shipnr>".
  198. The meanings of the parameters are 
  199. matchup : the number of your matchup
  200. battle  : indicates the battle-th run of the matchup
  201. side    : A means 'left side', B means 'right side' (in bsim)
  202. shipnr  : indicates the position of the ship in bsim. 
  203.  
  204. Example : "1 5 A3" means first matchup, 5th run, 3rd ship on the left side
  205. The "|" appears as an up-arrow in vcr.exe.
  206.  
  207.  
  208. BSIM configuration
  209. ==================
  210.  
  211. Engine tech shield bonus, Scotty Fed bonus :
  212.     The same as in host v3.14
  213.  
  214. Randomize sides :
  215.     It makes a difference if a ship fights on the left or on the right
  216.     side of the vcr screen. If you enable this switch bsim will place the
  217.     ships on random sides of the vcr screen (visual mode only).
  218.  
  219. Ask for battle convert :
  220.     Bsim remembers the data you entered seperately for multiship and visual
  221.     battles. While you enter the multiship data you can switch to visual
  222.     mode and watch a battle without damaging your multiship data.
  223.     However, if you accidentally chose the wrong mode then you can
  224.     enable this switch and convert the visual battles to a multiship
  225.     matchup and vica versa. The separation is necessary because there
  226.     are different restrictions in the visual mode (the same number of ships
  227.     on both sides in the visual mode etc.). You may lose some data if you
  228.     convert a matchup (for instance the missions and friendly codes if
  229.     you convert a multiship battle to a visual one).
  230.     I recommend to leave this switch OFF.
  231.  
  232. Delete init file :
  233.     By default bsim will save its data to a file (bsiminit.tmp). If you
  234.     disable this switch then bsim won't save that data that you entered.
  235.  
  236. Path to the host data :
  237.     This is the name of the subdirectory where bsim creates the host data.
  238.     Currently only simple names are allowed. Paths are not allowed.
  239.  
  240. Use 43/50 line text mode :
  241.         In the evaluation mode you can have a rather large amount of battles.
  242.         If you enable this mode then BSIM will switch to 43/50 lines
  243.         whenever it enters the evaluation mode.
  244.  
  245. Automatic race change :
  246.         This switch works only if the multirace mode is on.
  247.         Since I allow only one race per side you can select if BSIM should
  248.         automatically change the race of all ships if you enter a hull
  249.         of this race (convenient if you want to test ships of one race
  250.         against ships of another race). If the switch is off then BSIM
  251.         won't change the race if you enter a new hull.
  252.  
  253. For a description of the other options see bsim details.
  254.  
  255.  
  256.  
  257. Keys
  258. ====
  259.  
  260. The keys to enter ship/planet stats are self explainatory. Note that the
  261. shield settings have no influence in the multiship mode.
  262.  
  263. A few of the following keys are only allowed in certain modes.
  264.  
  265. "^<key>" means  Crtl + <key> (or Strg + <key>)
  266.  
  267.  
  268. (1) Battle Setup
  269. ~~~~~~~~~~~~~~~~
  270. ^T : List the current matchup
  271.  
  272. ^O : Copy current ship(s) "n" times. After the copy process you will have
  273.      n battles with the same specifications inserted, of course you can
  274.      edit them all seperately. The battle which is shown on the screen
  275.      is the last of the now n+1 battles with the same specs.
  276.  
  277. ^D : Delete current battle. If you edit the last battle you will jump
  278.      to the previous battle, but otherwise you jump to the next.
  279.  
  280. ^I : Insert a battle here (before the battle you are editing).
  281.  
  282. ^Y : Delete all ships on this side (or on both sides in the visual mode).
  283.  
  284.  + : Move to next battle. If it doesn't exist, create a new one.
  285.  - : Move to previous battle.
  286.  
  287. ^+ : Move to the next matchup (multiship only).
  288.      If it doesn't exist, Create a new one.
  289.  
  290. ^- : Move to the previous matchup.
  291.  
  292.  
  293. (2) Misc
  294.  
  295. ^C : Configure bsim
  296.  
  297. ^N : Chose the number how often bsim should run the current matchup
  298.      (multiship only). Select 0 to remove the matchup.
  299.  
  300. ^S : Change the item on the right side to a ship.
  301. ^P : Change the item on the right side to a planet.
  302. ^B : Change the item on the right side to a starbase.
  303.  
  304. ^R or cursor right : Edit right side
  305. ^L or cursor left  : Edit left side
  306. ^U or cursor up    : Up
  307. ^X or cursor down  : Down
  308. ^M or Return       : Edit blinking item
  309. ^V                 : View battles (visual mode)
  310. ^H           : Start host (multiship mode)
  311. ^Q                 : Quit bsim
  312.  
  313.  
  314. Notes
  315. =====
  316. (1) The documentation isn't very accurate regarding the base strength.
  317.     Assume that the starbase fighter number is f, the planetary defense is
  318.     p and the starbase defense is s. Then the base follows the stats :
  319.  
  320.     mass      = 100+p+s
  321.     fighters  = f+sqrt(p)
  322.     bays      = 5+sqrt(p)
  323.     beams     = sqrt((p+s)/3)
  324.     beamtype  = sqrt(p/3)
  325.  
  326.     Note that the beam NUMBER depends on both planetary and starbase defense,
  327.     while the beam TYPE depends only on the planetary defense (strange, but I
  328.     didn't write HOST.EXE so don't blame me :-)
  329.  
  330. (2) Here are a few notes from my tests with host v3.14a.
  331.     In the multiship mode the starbase damage won't influence the base
  332.     strength (!).
  333.     The damage that a starbase suffers in the battle will be added to the
  334.     damage of the starbase.
  335.     Example : A starbase has 100 planetary defense posts, 200 starbase
  336.     defense posts, 60 fighters and 40% damage. It will fight with a mass
  337.     of 400 kt and 70 fighters (so the damage won't influence it).
  338.  
  339.     If it gets 50% (new) damage in the battle then the defense posts will be
  340.     reduced by 50% and the total damage will be 90%.  If it gets 70% (new)
  341.     damage then the starbase will be destroyed (except Lizards ?) but the
  342.     planet will still belong to you.
  343.  
  344. (3) The 'Race' switch is only useful if you want to see a Lizard ship/planet
  345.     (150% damage) or a Privateer ship (3x kill). If you use the multirace
  346.     mode or if you enter several multiship matchups I strongly recommend
  347.     to use as few different races as possible to keep the number of generated
  348.     results (and stored messages) low.
  349.  
  350. (4) In the multiship mode I accept only one planet or base. If you enter
  351.     several planets then bsim will use the first planet that you entered.
  352.     If the planet is the first entry on the right side then bsim will give
  353.     that planet an ATT order. Depending on the host version the planet
  354.     should fight first in this case, but the ATT handling differs from host
  355.     version to host version so I can't guarantee what happens.
  356.     The planet will get a neutral friendly code and fight last in all other
  357.     cases.
  358.  
  359. (5) If you chose a planet or a starbase you can't enter a damage % (except
  360.     starbase damage which will influence the battle outcome only indirectly).
  361.     The battle specifications are given by the number of defense posts
  362.     (& base fighters). A planet _never_ starts a fight with damage in Planets.
  363.     If a damaged planet/base fights a second time, the number of defense posts
  364.     will be reduced (by the damage percentage) but the damage is set to 0.
  365.  
  366. (6) BSIM will correct you if you try to enter invalid stats (like more
  367.     torps than cargo room is available, etc.). There is one exception :
  368.     Some ships have a regular crew size smaller than 10. However, if one
  369.     of these ships gets captured they are equipped with 10 crewmembers.
  370.     That's the reason why BSIM allows you up to 10 crewmembers (of course more
  371.     if the regular crewsize is more than 10).
  372.  
  373. (7) If you select a new hull, and the hull has components that weren't in
  374.     the former hull (beams, torp tubes, fighter bays) BSIM will
  375.     pre-initialize the tubes with Mk7, the beams with XRays and the
  376.     full cargo with torps/fighters.
  377.     Why ? In most cases I wanted to simulate battles with fully operational
  378.     ships, that means I always had to input a high fighter/torp
  379.     number. Please keep in mind that the number of fighters/torps 
  380.     influences the battle outcome (somebody told me that a carrier fights
  381.     better if it has more fighters even if they are never used, i.e.
  382.     a Gorbie with 250 fighters is better than a Gorbie with 150 fighters).
  383.     I still use the maximum number because this influence is minor compared
  384.     to other parameters.
  385.     Why XRays ? In most battles beams are irrelevant anyway, so no need to
  386.     use certain beams. In some cases you set up the battle for a certain
  387.     upcoming battle in a real game, so you have to input the special
  388.     beam type anyway.
  389.     Why Mk7 ? Well, I found them to be the most useful torps. They are cheaper
  390.     than Mk8, and mostly do the same damage (2 or 3 percent to large ships,
  391.     and usually the same number of hits are required for smaller ship.
  392.     Take the Patriot - 3 hits, and the Patriot is history, Mk7 or Mk8 .
  393.     Therefore I rarely ever use different torps, so I chose them.
  394.  
  395.  
  396. Is this a bug ?
  397. ===============
  398.  
  399. Known problems :
  400. (1)  The battle outcome is strange, some beams weren't fired. 
  401.  
  402.      That's a 'feature' (or bug ?) of VCR.EXE. Weapons are prone to not
  403.      function _perfectly_ for ships that fight on the left side of the
  404.      vcr screen.
  405.  
  406. (2)  If you set up (multiship) battles involving several ships and a planet
  407.      it happens sometimes that the ships won't fight against the planet.
  408.      
  409.      I had this case several times and there was always some capturing of
  410.      several ships involved. Even worse, as I looked into the result the
  411.      planet didn't scan the ships that were in orbit (with 'V') although
  412.      they were still there and uncloaked.
  413.  
  414. (3)  The mission of captured ships is reset to no mission so they won't
  415.      fight.
  416.  
  417.  
  418.  
  419. FAQ
  420. ===
  421. Q: What host version do I need ?
  422. A: Any v3.x version. However, if you use a version that is older than
  423.    v3.13e you might need some tests with the 'battle order control' and
  424.    'multirace'  switches until the battle order works in the way you
  425.    want it.
  426.  
  427. Q: Sometimes I see a race symbol instead of the ship picture. In other cases
  428.    I see the wrong ship picture. What's wrong ?
  429. A: Nothing. A wrong symbol appears if the vcr file belongs to that race 
  430.    (i.e. vcr1.dat belongs to the Feds) but no ship of this race is involved 
  431.    in the  battle. In the visual mode bsim will assign the vcr file to the 
  432.    race that has the most ships. Since I don't know how the race affects
  433.    the battle outcome (except race bonuses) I will change no race setups.
  434.    The wrong picturesin the intro screen won't affect the battle outcome 
  435.    in any way.
  436.  
  437. Q: If I set a damage>0 the shields go down.
  438. A: That's automatic, if you have p% damage, the highest possible shield
  439.    status is (100-p)% (a feature of Planets).
  440.  
  441. Q: If the shields aren't at 100%, why do the beams start uncharged ?
  442. A: Another feature of Planets. If the shields aren't at 100% the weapons
  443.    need to recharge, even if it's the first fight for the ship in this turn.
  444.  
  445.  
  446. Multiship FAQ :
  447.  
  448. Q: Is it possible to reduce the number of generated results ?
  449. A: No. If I deactivate some of the races the ships won't fight or they
  450.    will fight on the wrong side of the vcr screen.
  451.  
  452. Q: What happens if I don't have enough memory to run host.exe from bsim ?
  453. A: The evaluation will show all ships intact.
  454.    Bsim uses a small program (bshost.exe) to run host, so if bsim reports
  455.    not enough memory you probably won't have enough memory to run host.exe
  456.    at all.
  457.    However, if bsim reports a lack of memory then you can quit bsim (the
  458.    'delete init file' switch needs to be ON), run host manually and start
  459.    bsim with the parameter /eval.
  460.  
  461.  
  462. Please mail any bug observations/criticisms/suggestions to me,
  463. internet -- spock@spoolbag.in-berlin.de (preferred) or 
  464. voigtgob@cs.tu-berlin.de (only if you can't reach me at spoolbag).
  465.  
  466. Enjoy !
  467.                Thomas
  468.