summaryrefslogtreecommitdiffstats
path: root/doc/twin4/index.docbook
blob: 4cf1ce1acd1b52df4ab27a5d352525a6af4ceb06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
<!ENTITY kappname "&k4wins;">
<!ENTITY package "tdegames">
<!ENTITY % English "INCLUDE"> 
<!ENTITY % addindex "IGNORE">
]>

<book lang="&language;">
<bookinfo>
<title>Four Wins</title>

<authorgroup>
<author>
<firstname>Martin</firstname>
<surname>Heni</surname>
<affiliation>
<address>&Martin.Heni.mail;</address>
</affiliation>
</author>

<!-- TRANS:ROLES_OF_TRANSLATORS -->
</authorgroup>

<copyright>
<year>1995</year><year>2002</year>
<holder>&Martin.Heni;</holder>
</copyright>
    
<legalnotice>&FDLNotice;</legalnotice>

<date>2006-06-17</date>
<releaseinfo>1.1.0</releaseinfo>

<abstract>
<para>
&k4wins; is a four-in-a-row game for &tde;.</para>
</abstract>

<keywordset>
<keyword>KDE</keyword>
<keyword>tdegames</keyword>
<keyword>game</keyword>
<keyword>board</keyword>
<keyword>board game</keyword>
<keyword>four wins</keyword>
<keyword>four</keyword>
<keyword>four in a row</keyword>
<keyword>win4</keyword>
<keyword>twin4</keyword>
<keyword>connect four</keyword>
<keyword>connect 4</keyword>
</keywordset>
</bookinfo>

<chapter id="overview">
<title>Overview</title>

<para>
Four wins is a game for two players.
</para>

<para>
Each player is represented by a color (yellow and red).  The goal of the
game is to get four connected pieces of your color into a row, column or
any diagonal.  This is done by placing one of your pieces into any of
the seven columns.
</para>

<para>
A piece will begin to fill a column from the bottom, &ie; it
will fall down until it reaches the ground level or another stone.
After a move is done it is the turn of the other player.
</para>

<para>
This is repeated until the game is over, which is when one of the
players has four pieces in a row, column or diagonal or no more moves
are possible because the board is filled.
</para>

</chapter>

<chapter id="rules">
<title>Rules</title>

<para>
The board is separated into three regions.
</para>

<para>
The <firstterm>game board</firstterm> is constructed out of 7x6 fields
which will be filled from bottom to top. The fields are marked in the
color of the player who made the current move.  On top of each column a
colored arrow shows were the last piece had been put.
</para>

<para>
The <firstterm>status display</firstterm> shows which player color
starts and which color is played by whom (player, computer, remote
connection). It further shows the level of the computer opponent, the
number of moves done as well as the computer calculated chance of
winning. This chance is calculated only if the computer opponent makes a
move. A positive number means that the player has an advantage, a
negative number means that the computer thinks he is better.
</para>

<para>
The <firstterm>table display</firstterm> shows the number of won, lost
and drawn games is noted for both player.  Also the number of aborted
games (Brk) and the sum of games is shown.
</para>

</chapter>

<chapter id="remote-connections">
<title>Remote connections</title>

<para>
It is possible to play the game over a network connection with another
computer. 
One of the computers will act as game server. This one can determine
who should play which color. You can configure the network options
in the menu <guimenu>Game</guimenu><guimenuitem>Network Configuration...</guimenuitem>
There you also find a chat dialog
box which allows you to speak with your friend.
</para>


<para>
When a network connection is build you are asked to enter a remote host
and a port. The port can usually just be left untouched, but if you know
what you are doing replace it by another number, which has to be the
same in both player games of course. The hostname should be the name of
the remote host to which you are connecting. Only the client in
the connection has to supply a hostname. It is often wise that the player
behind a firewall chooses to be client as the firewall might not allow
incoming connections.
</para>

</chapter>

<chapter id="menus">
<title>Menus</title>

<sect1 id="game-menu">
<title><guimenu>Game</guimenu> Menu</title>

<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>New</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Starts a new game. In a network game this option is only available for
the network server. The network client will be automatically started by
the server.  
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>O</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>Load...</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Loads a saved game.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>S</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>Save</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Saves the current game.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>End</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>End Game</guimenuitem></menuchoice></term>
<listitem>
<para>
Aborts a running game.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Game</guimenu>
<guimenuitem>Network Configuration...</guimenuitem></menuchoice></term>
<listitem>
<para>
Pops up a dialog for the network configuration. You can choose to be
server or client. If you are server you can also choose what color the
remote player should take over. If a network game is running you can 
also disconnect it in this menu.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Game</guimenu>
<guimenuitem>Network Chat...</guimenuitem></menuchoice></term>
<listitem>
<para>
Pops up a chat widget which allows you to send messages to the
other party.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycap>H</keycap>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>Hint</guimenuitem>
</menuchoice></term>
<listitem>
<para>
The computer will calculate the best possible move and mark it with a
small circle on the board.  How good the move is depends on the level of
the computer.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>Quit</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Quits the program.
</para>
</listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="edit-menu">
<title><guimenu>Edit</guimenu> Menu</title>
<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>Z</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Undo</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Undo the last move. If the previous player is played by the computer two
moves are taken back so that it is the player's turn again.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;&Shift;<keycap>Z</keycap></keycombo>
</shortcut>
<guimenu>Edit</guimenu>
<guimenuitem>Redo</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Replay a move which had been undone.
</para>
</listitem>
</varlistentry>
</variablelist>

</sect1>


<sect1 id="option-menu">
<title><guimenu>Settings</guimenu> Menu</title>

<variablelist>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Toolbar</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Toggle on and off the display of the toolbar.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Statusbar</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Toggle on and off the display of the status bar.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Shortcuts...</guimenuitem>
</menuchoice></term>
<listitem><para>
<action>Open a dialog which lets you redefine all the keyboard shortcuts.</action>
</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Toolbars...</guimenuitem>
</menuchoice></term>
<listitem><para>Displays a &kde; standard dialog where you can configure the toolbar icons.</para></listitem>
</varlistentry>

<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure &k4wins;...</guimenuitem>
</menuchoice></term>
<listitem><para><action>Displays</action> the &k4wins;
configuration dialog with these options:</para>
<para><guilabel>Starting Player Color</guilabel>: Determine which color player has the first move in the next game.</para>
<para><guilabel>Player Names</guilabel>: Change the names of the players.</para>
<para><guilabel>Yellow Plays With</guilabel>: 
Choose who should play for player 1 (yellow). It can be either
<guilabel>Mouse</guilabel> or <guilabel>Keyboard</guilabel>,
&ie; a local player using the mouse or keyboard
as input device or <guilabel>Computer</guilabel>, &ie; the computer
plays for this player.</para>
<para><guilabel>Red Plays With</guilabel>: Same as <guilabel>Yellow Playes With</guilabel> but for player 2
(red).</para>
<para><guilabel>Computer Difficulty</guilabel>: Select the level of the computer player.</para>
</listitem>
</varlistentry>

</variablelist>
</sect1>

<sect1 id="help">
<title><guimenuitem>Help</guimenuitem> Menu</title>

&help.menu.documentation;

</sect1>

</chapter>

<chapter id="credits">
<title>Credits and License</title>

<para>
&k4wins;
</para>
<para>
Program copyright 1995-2002 &Martin.Heni; &Martin.Heni.mail;
</para>
<para>
Documentation copyright 2002 &Martin.Heni; &Martin.Heni.mail;
</para>

<!-- TRANS:CREDIT_FOR_TRANSLATORS -->

&underFDL;
&underGPL;

</chapter>

<appendix id="installation">
<title>Installation</title>

<sect1 id="getting-twin4">
<title>How to obtain &k4wins;</title>

&install.intro.documentation;

</sect1>

<sect1 id="compilation">
<title>Compilation and Installation</title>

&install.compile.documentation;

</sect1>
</appendix>


&documentation.index; 
</book>
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:t
End:
-->