File: gfpoken.6

package info (click to toggle)
gfpoken 1-2
  • links: PTS, VCS
  • area: main
  • in suites: buster, jessie, jessie-kfreebsd, stretch
  • size: 1,932 kB
  • ctags: 417
  • sloc: ansic: 2,984; sh: 1,446; makefile: 125
file content (199 lines) | stat: -rw-r--r-- 8,759 bytes parent folder | download | duplicates (6)
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
.\" gfpoken.6 - Gfingerpoken manual page.
.\" Copyright 1999-2000 Martin Hock
.\" Copyright 2005-2006 Bas Wijnen <wijnen@debian.org>
.\"
.\" This file is part of Gfingerpoken.
.\"
.\" Gfingerpoken is free software; you can redistribute it and/or modify
.\" it under the terms of the GNU General Public License as published by
.\" the Free Software Foundation; either version 3 of the License, or
.\" (at your option) any later version.
.\"
.\" Gfingerpoken is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public License
.\" along with this program.  If not, see <http://www.gnu.org/licenses/>.

.TH GFPOKEN 6
.\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection
.\" other parms are allowed: see man(7), man(1)
.SH NAME
.PP
gfpoken \- Recreate a grid of mirrors from clues
.SH SYNOPSIS
.B gfpoken
.\"  .I "[options] files ..."

.SH INTRODUCTION

Suddenly, you attain consciousness.  You are faced by a grid of tiny
squares, all alike, and a sign, which reads as follows:

ACHTUNG!  ALLES LOOKENSPEEPERS!
Das rollenballenmachine ist nicht fuer gefingerpoken und widgetmoven.
Ist easy flippen der mirrorwerk, losenballen und shovenmirroren mit
slippensliden.  Ist nicht fuer gewerken bei das dumpkopfen.  Das
rubbernecken sichtseeren keepen das cotten-pickenen hans in das pockets
muss; relaxen und watchen das rollenballen.

Unable to decipher it, you begin rolling balls at the grid, having nothing
better to do. And thus begins your pathetic adventure deep into the bowels
of Nihilism.

.SH "DESCRIPTION"

The idea for this game comes from a Windows game called "Marble," by
Analogue Software.  GFingerPoken is basically Marble, rewritten from
scratch for GTK.  

The game starts with the configuration dialog.  Here you can set the relative
abundance of the different mirror types, the size of the grid, the amount of
mirrors in it, and how much the mirror density should vary.

In the top left, there are load and save buttons to load and save existing
games.  The save button is not visible if no game is in progress.  Press OK
when you're happy with the settings to start the actual game.

You can throw balls into the grid by clicking around the edges.  There are 4 of
them, but they all work the same way.  You'll see your ball roll through
the empty corridor, then you'll see a white in arrow and an out arrow. 
Your job is to drag the mirrors from the side into the maze and set up your
maze to be the same as the output indicates, i.e., so your ball always
goes out where the arrow says it should.   You have to use all of the
mirrors on the side.  If an item has a some arrows in the center, it is
flippable; click on it, and it will change between its states.
Furthermore, every time these items are hit within the maze, either yours
or the computer's, they will be flipped also.  So your maze must be
synchronized with the invisible one.
When you think that your maze perfectly matches the output, click the
check button and see if you were right.

If you right-click on a grid square, you will cycle through a picture
that appears in the corner: a circle, a triangle, a square, and nothing.
These symbols do nothing, but you can use them to indicate what you think
may be in the square.  For example, a circle could mean you think
nothing is there, a triangle something is there, and a square that you're
pretty sure whatever's there is right.

The button in the top left lets you abort the current game and start a new
one.  This is what you should do if you want to save the game.  If you want to
continue playing after saving, cancel the creation of the new game.

.SH MIRROR TYPES
.TP
.B Simple mirrors
The ball rolls toward it.  The ball hits it.  The ball
rolls in a different direction.  Very simple.  They are shaped / and \ .

.TP
.B Flipping mirrors
The ball hits it and rolls in a different direction, but
then the mirror changes shape according to its little indicator.
There are two cycle mirrors which go between / and \ shapes, and four
cycle mirrors which cycle this way: / o \ o .  (The little "o"
representing a box, coming up next.)

This is where the game begins to get devious.  Your setup must match the
functionality of the invisible one exactly.  Meaning you have to get the
alignment of these precisely perfect.  To change the alignment of one,
click on it.

.TP
.BR Box " and " sink
Basically they are opposites.  A box will repel the ball in
the opposite direction that it came from, and a sink will "eat" the ball,
resulting in NO output arrow.

.TP
.B Axial mirrors
They will let the ball come through on one
axis (i.e. vertically or horizontally) but bounce it back on the other.
There are both simple and flipping axial mirrors for your amusement.

.TP
.B Rotators
These are quite similar to normal mirrors, only they redirect
the ball in a different sort of way.  There are clockwise and
counterclockwise varieties as well as a flipper.

.TP
.B One Way Mirrors
Only one order away from pure evil, one way mirrors will
boggle the mind for centuries if used liberally.  They are just like
normal static mirrors, except they only let the ball travel right through it
in two (perpendicular) directions and bounce it off in the other two.
These can cause an infinite loop if used wrecklessly, which the random
computer is fairly likely to do.  In that case, there is no output arrow, just
like when the ball falls into a sink.

.TP
.B PURE EVIL
There are two varieties:
fllipping one way mirrors, and moving mirrors.  Flipping one way mirrors
can flip in either a clockwise or counterclockwise direction.  Moving
mirrors, when hit, will travel one square in the direction they were hit,
after being hit, so your ball will travel as if a simple mirror had been
where the mirror was just sitting.


.SH NETWORK GAME
Network games work a lot like single player games.  To setup a network game,
you must be in the game window (so create a game, the settings don't matter).
Then click the "start network game" button.  That opens a new dialog window.
You can leave the type at "Auto"
unless you've picked out who you want to be client and server.  Auto 
will try client first, and if it doesn't work it will go to server.  Server
gets to choose the level layout and also gets to go first, so you could
give it to your opponent if you want to be nice.  Going first isn't really
an advantage though, as you'll soon find out.  You should probably leave
the port unless it's used so it can become a defacto standard.  If you are
server, the address restricts connections to only ones originating from
this address; if you are client, it will connect to this address.
Similarly, server sets the port to listen on and client connects to this
port.

Also, you'll have to choose the game type.  The server overrides whatever
the client has.  With "Shared board," both players manipulate the same
board and both see changes made immediately.  (It's graphically much
cooler.)  Players take turns manipulating the board.  With "Individual
boards," each player has his own board and cannot see the other player's
board.  Players each perform one manipulation to their board
simultaneously.  Otherwise, the games are similar.

A manipulation consists of these steps:

1) Rearrange the pieces however you'd like.  (This includes moving them in
and out of the sidebar.)  This may be zero rearrangements.

2) Perform exactly one test (i.e. click along the border to toss in a
ball)

3) Again perform as many rearrangements as you'd like.

4) Click on the right arrow to indicate that you're done.

Either before or after a manipulation, if the board is potentially
solvable, you may click the check button if you think it's solved.  If
you're right, you win; if you're wrong, you lose.

Note that you *must* perform a manipulation during each of your turns,
which should discourage a standoff in shared board mode.

Finally, the half balls that appear next to the board are
your history.  The whole reason for the 4 different ball colors
is to differentiate your last 4 moves in the history.  So the black in
arrow superimposed atop the purple ball half should have a corresponding
black out arrow also superimposed atop a purple ball half.  If not, that
part of the history must have been erased because another out move went on
top of it, or perhaps because the ball was eaten somehow and thus never
came out.

.SH SEE ALSO
"blinkenlights" in the Jargon File.

.SH AUTHOR
This manual page was written by Bas Wijnen <wijnen@debian.org>, based on
documentation by Martin Hock.