163
|
1 ;;; DO NOT MODIFY THIS FILE
|
183
|
2 (if (featurep 'games-autoloads) (error "Already loaded"))
|
163
|
3
|
|
4 ;;;### (autoloads (blackbox) "blackbox" "games/blackbox.el")
|
|
5
|
|
6 (autoload 'blackbox "blackbox" "\
|
|
7 Play blackbox. Optional prefix argument is the number of balls;
|
|
8 the default is 4.
|
|
9
|
|
10 What is blackbox?
|
|
11
|
|
12 Blackbox is a game of hide and seek played on an 8 by 8 grid (the
|
|
13 Blackbox). Your opponent (Emacs, in this case) has hidden several
|
|
14 balls (usually 4) within this box. By shooting rays into the box and
|
|
15 observing where they emerge it is possible to deduce the positions of
|
|
16 the hidden balls. The fewer rays you use to find the balls, the lower
|
|
17 your score.
|
|
18
|
|
19 Overview of play:
|
|
20
|
|
21 \\<blackbox-mode-map>To play blackbox, type \\[blackbox]. An optional prefix argument
|
|
22 specifies the number of balls to be hidden in the box; the default is
|
|
23 four.
|
|
24
|
|
25 The cursor can be moved around the box with the standard cursor
|
|
26 movement keys.
|
|
27
|
|
28 To shoot a ray, move the cursor to the edge of the box and press SPC.
|
|
29 The result will be determined and the playfield updated.
|
|
30
|
|
31 You may place or remove balls in the box by moving the cursor into the
|
|
32 box and pressing \\[bb-romp].
|
|
33
|
|
34 When you think the configuration of balls you have placed is correct,
|
|
35 press \\[bb-done]. You will be informed whether you are correct or
|
|
36 not, and be given your score. Your score is the number of letters and
|
|
37 numbers around the outside of the box plus five for each incorrectly
|
|
38 placed ball. If you placed any balls incorrectly, they will be
|
|
39 indicated with `x', and their actual positions indicated with `o'.
|
|
40
|
|
41 Details:
|
|
42
|
|
43 There are three possible outcomes for each ray you send into the box:
|
|
44
|
|
45 Detour: the ray is deflected and emerges somewhere other than
|
|
46 where you sent it in. On the playfield, detours are
|
|
47 denoted by matching pairs of numbers -- one where the
|
|
48 ray went in, and the other where it came out.
|
|
49
|
|
50 Reflection: the ray is reflected and emerges in the same place
|
|
51 it was sent in. On the playfield, reflections are
|
|
52 denoted by the letter `R'.
|
|
53
|
|
54 Hit: the ray strikes a ball directly and is absorbed. It does
|
|
55 not emerge from the box. On the playfield, hits are
|
|
56 denoted by the letter `H'.
|
|
57
|
|
58 The rules for how balls deflect rays are simple and are best shown by
|
|
59 example.
|
|
60
|
|
61 As a ray approaches a ball it is deflected ninety degrees. Rays can
|
|
62 be deflected multiple times. In the diagrams below, the dashes
|
|
63 represent empty box locations and the letter `O' represents a ball.
|
|
64 The entrance and exit points of each ray are marked with numbers as
|
|
65 described under \"Detour\" above. Note that the entrance and exit
|
|
66 points are always interchangeable. `*' denotes the path taken by the
|
|
67 ray.
|
|
68
|
|
69 Note carefully the relative positions of the ball and the ninety
|
|
70 degree deflection it causes.
|
|
71
|
|
72 1
|
|
73 - * - - - - - - - - - - - - - - - - - - - - - -
|
|
74 - * - - - - - - - - - - - - - - - - - - - - - -
|
|
75 1 * * - - - - - - - - - - - - - - - O - - - - O -
|
|
76 - - O - - - - - - - O - - - - - - - * * * * - -
|
|
77 - - - - - - - - - - - * * * * * 2 3 * * * - - * - -
|
|
78 - - - - - - - - - - - * - - - - - - - O - * - -
|
|
79 - - - - - - - - - - - * - - - - - - - - * * - -
|
|
80 - - - - - - - - - - - * - - - - - - - - * - O -
|
|
81 2 3
|
|
82
|
|
83 As mentioned above, a reflection occurs when a ray emerges from the same point
|
|
84 it was sent in. This can happen in several ways:
|
|
85
|
|
86
|
|
87 - - - - - - - - - - - - - - - - - - - - - - - -
|
|
88 - - - - O - - - - - O - O - - - - - - - - - - -
|
|
89 R * * * * - - - - - - - * - - - - O - - - - - - -
|
|
90 - - - - O - - - - - - * - - - - R - - - - - - - -
|
|
91 - - - - - - - - - - - * - - - - - - - - - - - -
|
|
92 - - - - - - - - - - - * - - - - - - - - - - - -
|
|
93 - - - - - - - - R * * * * - - - - - - - - - - - -
|
|
94 - - - - - - - - - - - - O - - - - - - - - - - -
|
|
95
|
|
96 In the first example, the ray is deflected downwards by the upper
|
|
97 ball, then left by the lower ball, and finally retraces its path to
|
|
98 its point of origin. The second example is similar. The third
|
|
99 example is a bit anomalous but can be rationalized by realizing the
|
|
100 ray never gets a chance to get into the box. Alternatively, the ray
|
|
101 can be thought of as being deflected downwards and immediately
|
|
102 emerging from the box.
|
|
103
|
|
104 A hit occurs when a ray runs straight into a ball:
|
|
105
|
|
106 - - - - - - - - - - - - - - - - - - - - - - - -
|
|
107 - - - - - - - - - - - - - - - - - - - - O - - -
|
|
108 - - - - - - - - - - - - O - - - H * * * * - - - -
|
|
109 - - - - - - - - H * * * * O - - - - - - * - - - -
|
|
110 - - - - - - - - - - - - O - - - - - - O - - - -
|
|
111 H * * * O - - - - - - - - - - - - - - - - - - - -
|
|
112 - - - - - - - - - - - - - - - - - - - - - - - -
|
|
113 - - - - - - - - - - - - - - - - - - - - - - - -
|
|
114
|
|
115 Be sure to compare the second example of a hit with the first example of
|
|
116 a reflection." t nil)
|
|
117
|
|
118 ;;;***
|
|
119
|
|
120 ;;;### (autoloads (conx-load conx conx-region conx-buffer) "conx" "games/conx.el")
|
|
121
|
|
122 (autoload 'conx-buffer "conx" "\
|
|
123 Absorb the text in the current buffer into the tree." t nil)
|
|
124
|
|
125 (autoload 'conx-region "conx" "\
|
|
126 Absorb the text in the current region into the tree." t nil)
|
|
127
|
|
128 (autoload 'conx "conx" "\
|
|
129 Generate some random sentences in the *conx* buffer." t nil)
|
|
130
|
|
131 (autoload 'conx-load "conx" "\
|
|
132 Load in a CONX database written by the \\[conx-save] command.
|
|
133 This clears the database currently in memory." t nil)
|
|
134
|
|
135 ;;;***
|
|
136
|
|
137 ;;;### (autoloads (shuffle-vector cookie-snarf cookie-insert cookie) "cookie1" "games/cookie1.el")
|
|
138
|
|
139 (autoload 'cookie "cookie1" "\
|
|
140 Return a random phrase from PHRASE-FILE. When the phrase file
|
|
141 is read in, display STARTMSG at beginning of load, ENDMSG at end." nil nil)
|
|
142
|
|
143 (autoload 'cookie-insert "cookie1" "\
|
|
144 Insert random phrases from PHRASE-FILE; COUNT of them. When the phrase file
|
|
145 is read in, display STARTMSG at beginning of load, ENDMSG at end." nil nil)
|
|
146
|
|
147 (autoload 'cookie-snarf "cookie1" "\
|
|
148 Reads in the PHRASE-FILE, returns it as a vector of strings.
|
|
149 Emit STARTMSG and ENDMSG before and after. Caches the result; second
|
|
150 and subsequent calls on the same file won't go to disk." nil nil)
|
|
151
|
|
152 (autoload 'shuffle-vector "cookie1" "\
|
|
153 Randomly permute the elements of VECTOR (all permutations equally likely)" nil nil)
|
|
154
|
|
155 ;;;***
|
|
156
|
|
157 ;;;### (autoloads (decipher-mode decipher) "decipher" "games/decipher.el")
|
|
158
|
|
159 (autoload 'decipher "decipher" "\
|
|
160 Format a buffer of ciphertext for cryptanalysis and enter Decipher mode." t nil)
|
|
161
|
|
162 (autoload 'decipher-mode "decipher" "\
|
|
163 Major mode for decrypting monoalphabetic substitution ciphers.
|
|
164 Lower-case letters enter plaintext.
|
|
165 Upper-case letters are commands.
|
|
166
|
|
167 The buffer is made read-only so that normal Emacs commands cannot
|
|
168 modify it.
|
|
169
|
|
170 The most useful commands are:
|
|
171 \\<decipher-mode-map>
|
|
172 \\[decipher-digram-list] Display a list of all digrams & their frequency
|
|
173 \\[decipher-frequency-count] Display the frequency of each ciphertext letter
|
|
174 \\[decipher-adjacency-list] Show adjacency list for current letter (lists letters appearing next to it)
|
|
175 \\[decipher-make-checkpoint] Save the current cipher alphabet (checkpoint)
|
|
176 \\[decipher-restore-checkpoint] Restore a saved cipher alphabet (checkpoint)" t nil)
|
|
177
|
|
178 ;;;***
|
|
179
|
|
180 ;;;### (autoloads (dissociated-press) "dissociate" "games/dissociate.el")
|
|
181
|
|
182 (autoload 'dissociated-press "dissociate" "\
|
|
183 Dissociate the text of the current buffer.
|
|
184 Output goes in buffer named *Dissociation*,
|
|
185 which is redisplayed each time text is added to it.
|
|
186 Every so often the user must say whether to continue.
|
|
187 If ARG is positive, require ARG chars of continuity.
|
|
188 If ARG is negative, require -ARG words of continuity.
|
|
189 Default is 2." t nil)
|
|
190
|
|
191 ;;;***
|
|
192
|
|
193 ;;;### (autoloads (doctor) "doctor" "games/doctor.el")
|
|
194
|
|
195 (autoload 'doctor "doctor" "\
|
|
196 Switch to *doctor* buffer and start giving psychotherapy." t nil)
|
|
197
|
|
198 ;;;***
|
|
199
|
|
200 ;;;### (autoloads (dunnet) "dunnet" "games/dunnet.el")
|
|
201
|
|
202 (autoload 'dunnet "dunnet" "\
|
|
203 Switch to *dungeon* buffer and start game." t nil)
|
|
204
|
|
205 ;;;***
|
|
206
|
|
207 ;;;### (autoloads (flame) "flame" "games/flame.el")
|
|
208
|
|
209 (autoload 'flame "flame" "\
|
|
210 Generate ARG (default 1) sentences of half-crazed gibberish." t nil)
|
|
211
|
|
212 ;;;***
|
|
213
|
|
214 ;;;### (autoloads (gomoku) "gomoku" "games/gomoku.el")
|
|
215
|
|
216 (autoload 'gomoku "gomoku" "\
|
|
217 Start a Gomoku game between you and Emacs.
|
|
218 If a game is in progress, this command allow you to resume it.
|
|
219 If optional arguments N and M are given, an N by M board is used.
|
|
220
|
|
221 You and Emacs play in turn by marking a free square. You mark it with X
|
|
222 and Emacs marks it with O. The winner is the first to get five contiguous
|
|
223 marks horizontally, vertically or in diagonal.
|
|
224 You play by moving the cursor over the square you choose and hitting
|
|
225 \\<gomoku-mode-map>\\[gomoku-human-plays].
|
|
226 Use \\[describe-mode] for more info." t nil)
|
|
227
|
|
228 ;;;***
|
|
229
|
|
230 ;;;### (autoloads (hanoi) "hanoi" "games/hanoi.el")
|
|
231
|
|
232 (autoload 'hanoi "hanoi" "\
|
|
233 Towers of Hanoi diversion. Argument is number of rings." t nil)
|
|
234
|
|
235 ;;;***
|
|
236
|
|
237 ;;;### (autoloads (life) "life" "games/life.el")
|
|
238
|
|
239 (autoload 'life "life" "\
|
|
240 Run Conway's Life simulation.
|
|
241 The starting pattern is randomly selected. Prefix arg (optional first
|
|
242 arg non-nil from a program) is the number of seconds to sleep between
|
|
243 generations (this defaults to 1)." t nil)
|
|
244
|
|
245 ;;;***
|
|
246
|
|
247 ;;;### (autoloads (mpuz) "mpuz" "games/mpuz.el")
|
|
248
|
|
249 (autoload 'mpuz "mpuz" "\
|
|
250 Multiplication puzzle with GNU Emacs." t nil)
|
|
251
|
|
252 ;;;***
|
|
253
|
|
254 ;;;### (autoloads (snarf-spooks spook) "spook" "games/spook.el")
|
|
255
|
|
256 (autoload 'spook "spook" "\
|
|
257 Adds that special touch of class to your outgoing mail." t nil)
|
|
258
|
|
259 (autoload 'snarf-spooks "spook" "\
|
|
260 Return a vector containing the lines from `spook-phrases-file'." nil nil)
|
|
261
|
|
262 ;;;***
|
|
263
|
|
264 ;;;### (autoloads (xmine-mode) "xmine" "games/xmine.el")
|
|
265
|
|
266 (autoload 'xmine-mode "xmine" "\
|
|
267 A mode for playing the well known mine searching game.
|
|
268
|
|
269 `\\<annotation-local-map-default>\\[xmine-activate-function-button1]' or `\\<xmine-keymap>\\[xmine-key-action1]' unhides a tile,
|
|
270 `\\<annotation-local-map-default>\\[xmine-activate-function-button2]' or `\\<xmine-keymap>\\[xmine-key-action2]' unhides all neighbours of a tile,
|
|
271 `\\<annotation-local-map-default>\\[xmine-activate-function-button3]' or `\\<xmine-keymap>\\[xmine-key-action3]' (un)flagges a tile to hold a mine.
|
|
272
|
|
273 `\\[xmine-key-new]' starts a new game.
|
|
274 `\\[xmine-key-quit]' ends a game.
|
|
275
|
|
276 All keybindings (with alternatives) currently in effect:
|
|
277 \\{xmine-keymap}
|
|
278
|
|
279 The rules are quite easy: You start by unhiding (random) tiles. An unhidden
|
|
280 tile showing a number tells you something about the number of mines in it's
|
|
281 neighborhood, where the neighborhood are all 8 tiles (or less if it's
|
|
282 at a border) around the tile.
|
|
283
|
|
284 E.g. a \"1\" shows you that there is only one mine in the neighborhood of
|
|
285 this tile. Empty tiles have no mines around them, and empty tiles in
|
|
286 the neighborhood of another empty tile are all automatically unhidden
|
|
287 if you unhide one of them. You need to find a strategy to use the
|
|
288 information you have from the numbers to \"flag\" the tiles with mines
|
|
289 under them and unhide all other tiles. If you correctly made this
|
|
290 without accidently unhiding a mine, you've won.
|
|
291
|
|
292 If you are sure you have correctly flagged all mines around a unhidden tile,
|
|
293 you can use Button-2 or \\[xmine-key-action2] on it to unhide all it's
|
|
294 neighbors. But beware: If you made a mistake by flagging the wrong mines,
|
|
295 you'll blow up!
|
|
296
|
|
297 Have Fun." t nil)
|
|
298
|
|
299 (fset 'xmine 'xmine-mode)
|
|
300
|
|
301 ;;;***
|
|
302
|
|
303 ;;;### (autoloads (psychoanalyze-pinhead apropos-zippy insert-zippyism yow) "yow" "games/yow.el")
|
|
304
|
|
305 (autoload 'yow "yow" "\
|
|
306 Return or display a random Zippy quotation. With prefix arg, insert it." t nil)
|
|
307
|
|
308 (autoload 'insert-zippyism "yow" "\
|
|
309 Prompt with completion for a known Zippy quotation, and insert it at point." t nil)
|
|
310
|
|
311 (autoload 'apropos-zippy "yow" "\
|
|
312 Return a list of all Zippy quotes matching REGEXP.
|
|
313 If called interactively, display a list of matches." t nil)
|
|
314
|
|
315 (autoload 'psychoanalyze-pinhead "yow" "\
|
|
316 Zippy goes to the analyst." t nil)
|
|
317
|
|
318 ;;;***
|
|
319
|
|
320 (provide 'games-autoloads)
|