home *** CD-ROM | disk | FTP | other *** search
/ Amiga Computing 68 / ac068b.adf / ArmyMiner / ArmyMiner.doc / ArmyMiner.doc
Text File  |  1993-10-16  |  12KB  |  304 lines

  1.  
  2.  
  3.                                  ARMYMINER v1.4
  4.  
  5.                                   July 26 1993
  6.  
  7.  
  8. Preface
  9. ~~~~~~~
  10.  
  11.      This program is freeware, binary only. You are free to use it as
  12. long as you leave my copyright notice intact. You can distribute this program
  13. as long as you don't ask any more money for it than a nominal fee for copying,
  14. and if you keep this document with it. If you want to include this program in
  15. a commercial package you need my written permission.
  16.  
  17.              "Copyright 1993 Alain Laferriere, All rights reserved"
  18.  
  19.      If you have suggestions or remarks about this program, or if you find
  20. any bugs, please let me know.
  21.  
  22.      You can reach me at the following address:
  23.  
  24.                              Alain Laferriere
  25.                              5190 Drolet #1
  26.                              Montreal, Quebec, H2T 2H2
  27.                              Canada
  28.  
  29.                              Telephone: (514) 277-6668
  30.  
  31.      If you have access to Internet, you'll be able to reach me at the
  32. following address:
  33.  
  34.                       E-mail: laferrie@iro.umontreal.ca
  35.  
  36.      Since this address may close in a few months, you can then try to reach
  37. me at this one:
  38.  
  39.                       E-mail: alain@softimg.softimage.qc.ca
  40.  
  41.      Please try to use the first address, the second one is at job and I don't
  42. want to mix personnal software developpment with my job.
  43.  
  44.              I read my mail everyday so you can expect a fast answer.
  45.  
  46.  
  47. Contents
  48. ~~~~~~~~
  49.  
  50. 1. Introduction
  51.  
  52. 2. Usage
  53.  
  54. 3. Bugs and history
  55.  
  56. 4. Future projects
  57.  
  58. 5. Special thanks
  59.  
  60.  
  61. 1. Introduction
  62. ~~~~~~~~~~~~~~~
  63.  
  64.   Of all the Amiga versions of Minesweeper or X-Mines I've seen so far, none
  65. was complete enough to satisfy me. I felt that a program that would integrate
  66. all of the good features I've seen in different programs was needed. Also,
  67. the program architecture itself was offering a really interesting challenge so
  68. I decided to write my own.
  69.  
  70.   Armyminer works under 1.3 and 2.0, either on PAL or NTSC. It requires
  71. no external libraries whatsoever.
  72.  
  73.   Armyminer was developped on Amiga 3000UX, with Manx Aztec C v5.2a, CED and
  74. Enforcer.
  75.  
  76.  
  77. 2. Usage
  78. ~~~~~~~~
  79.  
  80.   Armyminer can be started from the cli or by clicking its icon in the
  81. WorkBench environment. If first verifies if the stack is sufficient to
  82. handle worst case recursivity. If it's not the case then the following
  83. message is diplayed on screen (if run from CLI):
  84.  
  85.     Stack size is 12000 bytes
  86.     Stack must be at least 30000 bytes to run Armyminer
  87.  
  88.   When you start Armyminer from the cli, you can specify an initial seed
  89. value for the pseudo-random number generator. For example:
  90.  
  91.     Armyminer 25643
  92.  
  93.   That feature is really interesting for people who want to compete on the
  94. same boards, by setting the same seed value. Note however that when the
  95. "safe start" switch is enabled, the first clicked square will determine
  96. the board's initial configuation. So, if you want to compete with a friend
  97. you have to either turn that switch off (in which case the board's
  98. configuration will always be the same no matter which square is first
  99. clicked) or to both click on the same square to start the game.
  100. If no seed value is specified, the program calculates a new seed
  101. by using the current system's time.
  102.  
  103.   Armyminer possess 4 different game settings:
  104.  
  105.     BEGINNER MODE : 8 by 8 board, 15% (9) bombs
  106.  
  107.     ADVANCED MODE : 30 by 16 board, 21% (100) bombs
  108.  
  109.     EXPERT MODE   : 30 by 25 board, 24% (180) bombs
  110.  
  111.     CUSTOM MODE   : You select the board width, height and bomb percentage
  112.  
  113.   Armyminer starts in ADVANCED mode. These board settings are similar to
  114. the ones in the X-Window's XMines. You can start playing the game by
  115. clicking on any square, or choose a different setting by either selecting
  116. it in the menus (or by using the keyboard alternates) or by clicking on the
  117. corresponding gadget on screen.
  118.  
  119.   As you will notice, there is a PAUSE option which temporarily hides the
  120. board and pauses the timer. It's a very interesting feature as it lets you
  121. answer the phone (or eat a pizza slice) in the middle of a game, by example.
  122. That PAUSE options is only available when there is a game in progress. When
  123. it's not the case, the gadget is ghosted. When you select the "About" item
  124. when a game is in process, the timer is also paused so you can continue
  125. the game without loosing time. The PAUSE option can be activated by clicking
  126. on the PAUSE gadget, or by pressing the 'p' key on the keyboard.
  127.  
  128.   The UNDO option can be used when the user exploses by either directly
  129. clicking on a bomb or by cleaning the neighbours of an uncovered square when
  130. the bomb marks on its neighbours are incorrect. Each time you use the UNDO,
  131. you will get a 10 seconds penalty to the time counter. This is only to avoid
  132. people entering high-scores by finishing a game in UNDO.
  133.  
  134.   When the game window in inactivated, the counter temporarily pauses and
  135. restarts when the game is reactivated.
  136.  
  137.   Like in other minesweeper-type games available, you use the mouse in the
  138. following way:
  139.  
  140.   - Use left mouse button to click (push down) a square in the board
  141.   - Use right mouse button to toggle the state of a covered square
  142.   - Use right or left mouse button on an uncovered square to clean its
  143.     neighbours (when the number of marked squares in its neighbourhood is
  144.     the same as the number written on the uncovered square itself).
  145.  
  146.   In the OPTIONS menu, you'll find the following items:
  147.  
  148.   - Use question marks. Lets the user cycle the state of a covered square
  149.     (by clicking the right mouse button when the mouse pointer is over the
  150.     square) from unmarked, to marked (check mark symbol), to a question
  151.     mark ("?") to unmarked. When inactive, the square state is toggled from
  152.     unmarked to marked to unmarked. This option was available on the
  153.     IBM-compatible Minesweeper so I decided it would be nice to have it
  154.     here.
  155.  
  156.   - Safe start. Assures you that the first square you'll click when starting
  157.     a new game will have no bombs in its immediate neighbours. That way, you
  158.     are sure to clean a part of the board. When inactive, you have absolutely
  159.     no garantee to start a game safely and it's possible to explode on the
  160.     first click.
  161.  
  162.   - Auto mark. By clicking the left or right mouse button when the mouse pointer
  163.     is over an uncovered square, forces all its neighbours to be marked as bombs
  164.     when they are in equal number as the number written on the uncovered square
  165.     itself. That option makes the game a lot more easy.
  166.  
  167.   - Safe click. Forces the board squares to be treated as normal Amiga gadgets.
  168.     That means if you push a square and keep the left mouse button pressed,
  169.     then move the mouse, the square will return to its covered state. When this
  170.     option in turned off, moving the mouse will have no effect and the square
  171.     will be pushed anyway. The IBM-compatible Minesweeper reacts as having the
  172.     safe click option ON. Some players (like me) prefer to turn it off because
  173.     when you click squares rapidly (i.e. moving the mouse at the same time),
  174.     the gadget-like behavior will ignore some of the clicked squares and put
  175.     them back to their original covered state.
  176.  
  177.   - Sound effects. There is sound effects for pushing, popping, marking and
  178.     exploding a square, also there is a "good work son" played when your score
  179.     is good enough to enter the high-score table. You can turn them ON or OFF
  180.     with that option.
  181.  
  182.   The default settings of these options for each mode are:
  183.  
  184.       Mode     Use question marks    Safe start    Auto mark    Safe Click
  185.       ----     ------------------    ----------    ---------    ----------
  186.  
  187.     BEGINNER         ACTIVE            ACTIVE        ACTIVE       ACTIVE
  188.     ADVANCED        INACTIVE           ACTIVE       INACTIVE     INACTIVE
  189.      EXPERT         INACTIVE           ACTIVE       INACTIVE     INACTIVE
  190.      CUSTOM         INACTIVE           ACTIVE        ACTIVE      INACTIVE
  191.  
  192.   There are 4 high-scores tables (BEGINNER, ADVANCED, EXPERT, CUSTOM). The first
  193. three of those are ordered by timer values since the board dimensions remain
  194. the same in each. The custom high-score table entries are ordered in a
  195. different way. The "score" is calculated in regard to the board dimensions, the
  196. bomb percentage and the timer value.
  197.  
  198.   The SCORES menu possess the following items:
  199.  
  200.   - SHOW : Displays any of the high-scores table
  201.  
  202.   - CLEAR : Resets all the entries of any of the high-scores table
  203.  
  204.  
  205. 3. Bugs and history
  206. ~~~~~~~~~~~~~~~~~~~
  207.  
  208. v1.4:
  209. ----
  210.  
  211.   Modifications since v1.3 are:
  212.  
  213.   - Correction of a few bugs that were inserted in the version 1.3 release
  214.     (I'm really sorry, this release was done much too fast and the testing
  215.     part of the release was not sufficient). The most important problem was
  216.     the UNDO button in conjunction with the use of question marks.
  217.  
  218.   - Custom fonts won't cause a problem anymore in the CUSTOM board settings.
  219.  
  220.   - PAUSE button is now available after an UNDO.
  221.  
  222. v1.3:
  223. ----
  224.  
  225.   Modifications since v1.2 are:
  226.  
  227.   - Addition of the UNDO option.
  228.  
  229.   - The displayed values when moving the CUSTOM requester sliders were not
  230.     properly updated are that has now been fixed.
  231.  
  232.   - When you opened the CUSTOM requester while a game was in progress, the
  233.     timer kept on incrementing. This has also been fixed.
  234.  
  235.   - Initial board display speed and other board refreshes have been greatly
  236.     improved.
  237.  
  238.   - The default dimensions for the EXPERT board have been changed from
  239.     25 by 25 to 30 by 25 (maximal size) which offers an even greater
  240.     challenge.
  241.  
  242. v1.2:
  243. ----
  244.  
  245.   Modifications since v1.1 are:
  246.  
  247.   - ArmyMiner is now uncompressed. Many persons prefered speed of execution
  248.     when starting the game over the disk space it occupies.
  249.  
  250.   - Correction of a bug that happened with system fonts different than
  251.     "topaz 8".
  252.  
  253.   - You can now pause the game by pressing the 'p' key on the keyboard. You
  254.     unpause the game as usual, by clicking in the pause window.
  255.  
  256. v1.1:
  257. ----
  258.  
  259.   Modifications since v1.0 are:
  260.  
  261.   - ArmyMiner v1.0 did not work on the Amiga 4000 due to the fact that the
  262.     executable was compressed with the "TNM CRUNCHER v1.1" which crashes on
  263.     that machine. ArmyMiner v1.1 is compressed with PowerPacker which is said
  264.     to work perfectly on all Amigas.
  265.  
  266. v1.0:
  267. ----
  268.  
  269.   The only problem that remains is the string gadget behavior (when a user
  270. enters his name in the high-score table). Under 2.0, the gadget is
  271. autoactivated but under 1.3, the user must first click in it.
  272.  
  273.   Since I developped that program with Enforcer v37.25, there are no bad
  274. memory access problems for sure!
  275.  
  276.  
  277. 4. Future projects
  278. ~~~~~~~~~~~~~~~~~~
  279.  
  280.   This is my first official release of a program in the Amiga community.
  281. However, I wrote lots of other programs (tools, disk utilities, etc) for
  282. myself and friends and I am getting very comfortable with the Amiga computer.
  283.  
  284.   Even if I have a very fascinating full time job right now, I'm still
  285. interested in working on part time projects. I'm not sure what I'll do next,
  286. but I would be interested in working on a commercial shoot-em up game or
  287. anything that has to do with computer graphics (that's my field!).
  288.  
  289.   I know that lots of european magazines put public domain and freeware
  290. software on their cover disks. If my program happens to appear on such a
  291. disk, I'll be very thankful to receive a copy of the magazine and to hear
  292. from anybody who likes my program and wants to discuss about it.
  293.  
  294.  
  295. 5. Special thanks
  296. ~~~~~~~~~~~~~~~~~
  297.  
  298.   Special thanks goes to my good friend Daniel Beaudry, who made the
  299. "About" menu's picture and other graphics. Also thanks to Pierre Rioux
  300. who did a wonderful job at sending bug reports and suggestions.
  301. Philippe Hebrais, Lucie Jolicoeur, Eric Prevot and Jocelyn Cloutier
  302. also played many games and gave me very good suggestions that were
  303. later included.
  304.