home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 216 / 216.d81 / t.quibble < prev    next >
Text File  |  2022-08-26  |  6KB  |  230 lines

  1. u
  2.             Q U I B B L E
  3.  
  4.    Program and Text by Dave Moorman
  5.  
  6.  
  7.     Ready for a nice, friendly family
  8. fight? Then boot up QUIBBLE -- a game
  9. guaranteed to get on your nerves! It's
  10. a two-player game, but one or both of
  11. the players can be the computer,
  12. playing at three different skill
  13. levels.
  14.  
  15.  
  16.  QUIBBLE - THE GAME
  17.  ------------------
  18.  
  19.     The object of QUIBBLE is to move
  20. your piece (an open square) to your
  21. goal (a multi-pointed star of the same
  22. color) before your opponent moves to
  23. his goal. The only problem is: you can
  24. only move in selected directions, and
  25. those directions are chosen by your
  26. opponent! To be fair, though, you get
  27. to choose his.
  28.  
  29.     The QUIBBLE board is an 8x8 grid
  30. of squares, with each square
  31. containing randomly selected ARROWS,
  32. showing which directions are
  33. accessible from that square. Since
  34. there are eight possible directions
  35. (diagonal moves are allowed) a
  36. joystick in Port #2 is required.
  37.  
  38.     You and your opponent's positions
  39. are shown by big square cursors, white
  40. for one player and black for the
  41. other. When it's your move, the border
  42. will be in your color.  Your possible
  43. moves will have green backgrounds --
  44. the computer won't allow you to make
  45. an illegal move. Just push the
  46. joystick in the direction of the green
  47. square you want to move to and press
  48. FIRE.
  49.  
  50. IMPORTANT! The QUIBBLE board "wraps
  51. around", so you can get to the top of
  52. the board by moving off the bottom.
  53. You can also get to the left by moving
  54. off the right. Keep this in mind.
  55.  
  56.     The key to QUIBBLE is that each
  57. player's move dictates the possible
  58. moves for the opponent. For example,
  59. if you move onto a square with an
  60. up-down bar only, your opponent will
  61. only be able to move up or down. The
  62. possible-move tiles are randomly
  63. generated each game. You cannot move
  64. onto the same square your opponent is
  65. occupying, but you CAN move onto your
  66. opponent's goal. Because the goals are
  67. multi-pointed, this allows your
  68. opponent to move to any of the eight
  69. squares on his next move.
  70.  
  71.     The strategy of QUIBBLE is
  72. therefore to force your opponent to
  73. move to a square that will help you on
  74. your next move. But since he just
  75. about always has a choice of squares
  76. to move to, you can depend on him to
  77. be ornery and try to keep you away
  78. from your goal.
  79.  
  80.  
  81.  SET-UP
  82.  ------
  83.  
  84.     At the beginning of each game, use
  85. the CRSR keys and RETURN to select
  86. each player. QUIBBLE can be Human vs
  87. Human (sharing the same joystick), or
  88. the computer can be your nemesis! The
  89. computer can play at three skill
  90. levels. "Dumb Computer" does a
  91. drunkard's walk. "Smart Computer" is
  92. constantly striving to reach the goal.
  93. And "Clever Computer" is mostly a
  94. spoil-sport, choosing the move that
  95. least helps its opponent.
  96.  
  97.     You also may choose to have Random
  98. locations for the goals and/or the
  99. starting places for each player. Use
  100. the CRSR keys and RETURN to choose Yes
  101. or No to each prompt. Player 1 is
  102. always White and always moves first.
  103. Player 2 is Black. Sometimes, Random
  104. set-ups result in quick wins. But
  105. that's just another reason to QUIBBLE!
  106.  
  107.     Press "R" now to play the game, or
  108. stick around for some technical stuff.
  109.  
  110.  
  111.  TECHNICAL STUFF
  112.  ---------------
  113.  
  114.     The "intelligence" for the
  115. computer player(s) is handled by the
  116. lines beginning at 10000. The variable
  117. SM(pl) holds the SMartness value (0 -
  118. Dumb, 1 - Smart, 2 - Clever). Dumb
  119. just chooses random directions until
  120. one is found that is legal. Smart
  121. tries three times to find a random
  122. direction that is both legal and
  123. beneficial.
  124.  
  125.     The Clever Computer works harder.
  126. An array [WT(x,y,p)] holds a weighted
  127. board for each player. The location of
  128. the Goal has a value of 8. Moving away
  129. from the goal, the values decrease.
  130. Clever Computer goes through each
  131. possible move, finds what moves this
  132. move allows for the opponent (VV =
  133. PEEK(MP+VX+VY*8). Then it goes through
  134. each of these moves, placing the
  135. weight from WT(x,y,p) into a holding
  136. array. After all combinations are
  137. calculated, the move with the lowest
  138. total weight is chosen.
  139.  
  140.     Throughout QUIBBLE, the "native"
  141. joystick numbers are used in the
  142. variable J to show directions:
  143.  
  144.                 up
  145.                 1
  146.             [5]     [9]
  147.     right 4     *       8 left
  148.             [6]    [10]
  149.                 2
  150.               down
  151.  
  152. But to show possible moves, QUIBBLE
  153. uses binary logic:
  154.  
  155.                 up
  156.                 1
  157.           [128]    [2]
  158.  right 64       *      4 left
  159.            [32]    [8]
  160.                 16
  161.                down
  162.  
  163. Thus, up, down and left would be:
  164.         1 + 4 + 16 = 21
  165.  
  166.     The possible moves are generated
  167. and located in ML, beginning at the
  168. location in the variable ML.
  169.  
  170.    The array DV(15) holds the
  171. conversion table, with the joystick
  172. number in the subscript and the binary
  173. logic value in the variable.
  174.  
  175.     I give all this to you in hopes
  176. that someone will create a truly
  177. challenging Computer Player.
  178.  
  179.  DMM
  180.  
  181.  
  182. FENDER'S POSTMUMBLE: Once again Dave
  183. Moorman has thrown down the gauntlet
  184. of making a computer smart as a human.
  185. It's not easy! Your computer can solve
  186. 40-digit multiplication faster and
  187. more accurately than you probably can,
  188. but teaching it to play games -- even
  189. simple ones like Tic-Tac-Toe -- can be
  190. incredibly tough. I think Dave's
  191. algorithms for his three levels of
  192. "computer smartness" are a good start
  193. for making QUIBBLE "intelligent", but
  194. I have a feeling that most of you will
  195. be able to beat the computer before
  196. long -- at any level.
  197.  
  198. If you come up with any strategies for
  199. winning that you can describe in
  200. words, then that's the first step. I
  201. have a feeling that what you'll come
  202. up with is something like "IF you do
  203. this, THEN the computer will do this,
  204. and THEN you..."  Guess what? That's
  205. BASICally what the programmer will
  206. have to do, too, only in code.
  207.  
  208. I like these little games that Dave
  209. and other programmers come up with.
  210. They're not chess, but they're just as
  211. interesting. It took many geniuses
  212. many years to come up with algorithms
  213. for playing chess well -- and still
  214. the computer can't beat the Grand
  215. Masters -- but Dave has started us on
  216. a path that maybe some clever
  217. LOADSTARite will travel, and
  218. eventually QUIBBLE will be able to
  219. beat all but the Bobby Fischers out
  220. there.
  221.  
  222. I'm not that clever LOADSTARite. The
  223. GERRYMANDER and CHUCKALUCK contests
  224. have demonstrated quite well that the
  225. true game experts are out in LOADSTAR
  226. land and not at the Tower.
  227.  
  228.  FT
  229.  
  230.  
  231.