home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / games / volume6 / connect4 / tables.h < prev    next >
Text File  |  1989-07-06  |  7KB  |  166 lines

  1. u_char dist_counts[SQUARES] = {
  2.      3,  4,  5,  7,  5,  4,  3,    /* Row 0 */
  3.      4,  6,  8, 10,  8,  6,  4,    /* Row 1 */
  4.      5,  8, 11, 13, 11,  8,  5,    /* Row 2 */
  5.      5,  8, 11, 13, 11,  8,  5,    /* Row 3 */
  6.      4,  6,  8, 10,  8,  6,  4,    /* Row 4 */
  7.      3,  4,  5,  7,  5,  4,  3     /* Row 5 */
  8. };
  9.  
  10. u_char win_in_what[WINS][4] = {
  11.     {  0,  1,  2,  3 },   /* Win  0 */
  12.     {  1,  2,  3,  4 },   /* Win  1 */
  13.     {  2,  3,  4,  5 },   /* Win  2 */
  14.     {  3,  4,  5,  6 },   /* Win  3 */
  15.     {  7,  8,  9, 10 },   /* Win  4 */
  16.     {  8,  9, 10, 11 },   /* Win  5 */
  17.     {  9, 10, 11, 12 },   /* Win  6 */
  18.     { 10, 11, 12, 13 },   /* Win  7 */
  19.     { 14, 15, 16, 17 },   /* Win  8 */
  20.     { 15, 16, 17, 18 },   /* Win  9 */
  21.     { 16, 17, 18, 19 },   /* Win 10 */
  22.     { 17, 18, 19, 20 },   /* Win 11 */
  23.     { 21, 22, 23, 24 },   /* Win 12 */
  24.     { 22, 23, 24, 25 },   /* Win 13 */
  25.     { 23, 24, 25, 26 },   /* Win 14 */
  26.     { 24, 25, 26, 27 },   /* Win 15 */
  27.     { 28, 29, 30, 31 },   /* Win 16 */
  28.     { 29, 30, 31, 32 },   /* Win 17 */
  29.     { 30, 31, 32, 33 },   /* Win 18 */
  30.     { 31, 32, 33, 34 },   /* Win 19 */
  31.     { 35, 36, 37, 38 },   /* Win 20 */
  32.     { 36, 37, 38, 39 },   /* Win 21 */
  33.     { 37, 38, 39, 40 },   /* Win 22 */
  34.     { 38, 39, 40, 41 },   /* Win 23 */
  35.     {  0,  7, 14, 21 },   /* Win 24 */
  36.     {  1,  8, 15, 22 },   /* Win 25 */
  37.     {  2,  9, 16, 23 },   /* Win 26 */
  38.     {  3, 10, 17, 24 },   /* Win 27 */
  39.     {  4, 11, 18, 25 },   /* Win 28 */
  40.     {  5, 12, 19, 26 },   /* Win 29 */
  41.     {  6, 13, 20, 27 },   /* Win 30 */
  42.     {  7, 14, 21, 28 },   /* Win 31 */
  43.     {  8, 15, 22, 29 },   /* Win 32 */
  44.     {  9, 16, 23, 30 },   /* Win 33 */
  45.     { 10, 17, 24, 31 },   /* Win 34 */
  46.     { 11, 18, 25, 32 },   /* Win 35 */
  47.     { 12, 19, 26, 33 },   /* Win 36 */
  48.     { 13, 20, 27, 34 },   /* Win 37 */
  49.     { 14, 21, 28, 35 },   /* Win 38 */
  50.     { 15, 22, 29, 36 },   /* Win 39 */
  51.     { 16, 23, 30, 37 },   /* Win 40 */
  52.     { 17, 24, 31, 38 },   /* Win 41 */
  53.     { 18, 25, 32, 39 },   /* Win 42 */
  54.     { 19, 26, 33, 40 },   /* Win 43 */
  55.     { 20, 27, 34, 41 },   /* Win 44 */
  56.     {  0,  8, 16, 24 },   /* Win 45 */
  57.     {  1,  9, 17, 25 },   /* Win 46 */
  58.     {  2, 10, 18, 26 },   /* Win 47 */
  59.     {  3, 11, 19, 27 },   /* Win 48 */
  60.     {  3,  9, 15, 21 },   /* Win 49 */
  61.     {  4, 10, 16, 22 },   /* Win 50 */
  62.     {  5, 11, 17, 23 },   /* Win 51 */
  63.     {  6, 12, 18, 24 },   /* Win 52 */
  64.     {  7, 15, 23, 31 },   /* Win 53 */
  65.     {  8, 16, 24, 32 },   /* Win 54 */
  66.     {  9, 17, 25, 33 },   /* Win 55 */
  67.     { 10, 18, 26, 34 },   /* Win 56 */
  68.     { 10, 16, 22, 28 },   /* Win 57 */
  69.     { 11, 17, 23, 29 },   /* Win 58 */
  70.     { 12, 18, 24, 30 },   /* Win 59 */
  71.     { 13, 19, 25, 31 },   /* Win 60 */
  72.     { 14, 22, 30, 38 },   /* Win 61 */
  73.     { 15, 23, 31, 39 },   /* Win 62 */
  74.     { 16, 24, 32, 40 },   /* Win 63 */
  75.     { 17, 25, 33, 41 },   /* Win 64 */
  76.     { 17, 23, 29, 35 },   /* Win 65 */
  77.     { 18, 24, 30, 36 },   /* Win 66 */
  78.     { 19, 25, 31, 37 },   /* Win 67 */
  79.     { 20, 26, 32, 38 }    /* Win 68 */
  80. };
  81.  
  82.  
  83. u_char in_what_wins[] = {
  84.  
  85.      0, 24, 45, -1,                                          /* Square 0 */
  86.      0,  1, 25, 46, -1,                                      /* Square 1 */
  87.      0,  1,  2, 26, 47, -1,                                  /* Square 2 */
  88.      0,  1,  2,  3, 27, 48, 49, -1,                          /* Square 3 */
  89.      1,  2,  3, 28, 50, -1,                                  /* Square 4 */
  90.      2,  3, 29, 51, -1,                                      /* Square 5 */
  91.      3, 30, 52, -1,                                          /* Square 6 */
  92.  
  93.      4, 24, 31, 53, -1,                                      /* Square 7 */
  94.      4,  5, 25, 32, 45, 54, -1,                              /* Square 8 */
  95.      4,  5,  6, 26, 33, 46, 49, 55, -1,                      /* Square 9 */
  96.      4,  5,  6,  7, 27, 34, 47, 50, 56, 57, -1,              /* Square 10 */
  97.      5,  6,  7, 28, 35, 48, 51, 58, -1,                      /* Square 11 */
  98.      6,  7, 29, 36, 52, 59, -1,                              /* Square 12 */
  99.      7, 30, 37, 60, -1,                                      /* Square 13 */
  100.  
  101.      8, 24, 31, 38, 61, -1,                                  /* Square 14 */
  102.      8,  9, 25, 32, 39, 49, 53, 62, -1,                      /* Square 15 */
  103.      8,  9, 10, 26, 33, 40, 45, 50, 54, 57, 63, -1,          /* Square 16 */
  104.      8,  9, 10, 11, 27, 34, 41, 46, 51, 55, 58, 64, 65, -1,  /* Square 17 */
  105.      9, 10, 11, 28, 35, 42, 47, 52, 56, 59, 66, -1,          /* Square 18 */
  106.     10, 11, 29, 36, 43, 48, 60, 67, -1,                      /* Square 19 */
  107.     11, 30, 37, 44, 68, -1,                                  /* Square 20 */
  108.  
  109.     12, 24, 31, 38, 49, -1,                                  /* Square 21 */
  110.     12, 13, 25, 32, 39, 50, 57, 61, -1,                      /* Square 22 */
  111.     12, 13, 14, 26, 33, 40, 51, 53, 58, 62, 65, -1,          /* Square 23 */
  112.     12, 13, 14, 15, 27, 34, 41, 45, 52, 54, 59, 63, 66, -1,  /* Square 24 */
  113.     13, 14, 15, 28, 35, 42, 46, 55, 60, 64, 67, -1,          /* Square 25 */
  114.     14, 15, 29, 36, 43, 47, 56, 68, -1,                      /* Square 26 */
  115.     15, 30, 37, 44, 48, -1,                                  /* Square 27 */
  116.  
  117.     16, 31, 38, 57, -1,                                      /* Square 28 */
  118.     16, 17, 32, 39, 58, 65, -1,                              /* Square 29 */
  119.     16, 17, 18, 33, 40, 59, 61, 66, -1,                      /* Square 30 */
  120.     16, 17, 18, 19, 34, 41, 53, 60, 62, 67, -1,              /* Square 31 */
  121.     17, 18, 19, 35, 42, 54, 63, 68, -1,                      /* Square 32 */
  122.     18, 19, 36, 43, 55, 64, -1,                              /* Square 33 */
  123.     19, 37, 44, 56, -1,                                      /* Square 34 */
  124.  
  125.     20, 38, 65, -1,                                          /* Square 35 */
  126.     20, 21, 39, 66, -1,                                      /* Square 36 */
  127.     20, 21, 22, 40, 67, -1,                                  /* Square 37 */
  128.     20, 21, 22, 23, 41, 61, 68, -1,                          /* Square 38 */
  129.     21, 22, 23, 42, 62, -1,                                  /* Square 39 */
  130.     22, 23, 43, 63, -1,                                      /* Square 40 */
  131.     23, 44, 64, -1                                           /* Square 41 */
  132. };
  133.  
  134. u_short cum_index[SQUARES] = {
  135.       0,   4,   9,  15,  23,  29,  34,  /* Squares  0 to  6 */
  136.      38,  43,  50,  59,  70,  79,  86,  /* Squares  7 to 13 */
  137.      91,  97, 106, 118, 132, 144, 153,  /* Squares 14 to 20 */
  138.     159, 165, 174, 186, 200, 212, 221,  /* Squares 21 to 27 */
  139.     227, 232, 239, 248, 259, 268, 275,  /* Squares 28 to 34 */
  140.     280, 284, 289, 295, 303, 309, 314   /* Squares 35 to 41 */
  141. };
  142.  
  143. int next_in_col[COLUMNS] = {
  144.     35, 36, 37, 38, 39, 40, 41
  145. };
  146.  
  147. int attack_good[] = {
  148.     0, 1, 25, 500, 100000
  149. };
  150.  
  151. int defend_good[] = {
  152.     0, 1, 20, 400, 10000
  153. };
  154.  
  155. char *experts[] = {
  156.     "tcjones",
  157.     "ljpoconnor",
  158.     "pjyamamoto",
  159.     "gjerawlins",
  160.     "jshen",
  161.     "rvklassen",
  162.     "vlestivill",
  163.     "rastroobossc",
  164.     ""
  165. };
  166.