This file is indexed.

/usr/share/doc/crack-attack/index.html is in crack-attack 1.1.14-9.1+b2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
<html>
<head>
<title>Crack Attack!</title>
<meta name="keywords" content="crack attack free software game Linux Windows OpenGL download instructions installation Daniel Nelson">
<meta name="description" content="Download, installation, and game play instructions for the free OpenGL game Crack Attack! by Daniel Nelson.">
</head>

<body text="#c0c0c0" link="#cc00cc" vlink="#eeeeee" bgcolor="#000000">

<table width=100%><tr>
<td width=40% align=center valign=center>
<img src="logo_big.jpg" border=0>
<td width=60% align=center valign=center>
<font size=+3>
<br><br>
A free OpenGL game for Linux and Windows
<font size=+1>
<p>based on the Super Nintendo classic
<br>Tetris Attack
<font size=+0>
<p>by Daniel Nelson
<p>
<p><font size=-1>version 1.1.8</font>
<br>
<br>
<p><font size=-1><a href="http://www.gnugeneration.ch/attack/">Version fran&ccedil;aise</a></font>
</tr></table>
<br><br>
<br><br><center>
<a href="#download">Download, Installation, and Running</a> |
<a href="#requirements">Requirements</a> |
<a href="#screen shots">Screen Shots</a> |
<a href="#wallpaper">Wallpaper</a> <br>
<a href="#game play">Game Play</a> |
<a href="#advanced features">Advanced Features</a> |
<a href="#final note">Final Notes</a> |
<a href="#contact">Contact</a>
</center><br>
<hr>
<br>

<h1><a name="download">Download, Installation, and Running</a></h1>
<h3>Linux</h3>
<a href="dl_ii_linux.html">Linux download, installation, and running instructions.</a>
<br><br><br>
<h3>Windows</h3>
<a href="dl_ii_windows.html">Windows download and installation instructions.</a>
<br><br><br>

<h1><a name="requirements">Requirements</a></h1>
<menu>
<li>Linux or Windows
<li>OpenGL - Standard with all modern Windows versions.
<li>3D Graphics Hardware Support - The game is unplayable with out it.  That is,
unless it's the year 2010 or higher.
</menu>

<h1><a name="screen shots">Screen Shots</a></h1>
Here are a few quick screen shots so you have some idea what you're getting
yourself into.
<br><br>
<center>
<table><tr>
<td><a href="http://aluminumangel.org/attack/screen_shot_0.jpg">
<img src="tn_screen_shot_0.jpg" border=1></a>
<td><a href="http://aluminumangel.org/attack/screen_shot_1.jpg">
<img src="tn_screen_shot_1.jpg" border=1></a>
<td><a href="http://aluminumangel.org/attack/screen_shot_2.jpg">
<img src="tn_screen_shot_2.jpg" border=1></a>
<tr>
<td><a href="http://aluminumangel.org/attack/screen_shot_3.jpg">
<img src="tn_screen_shot_3.jpg" border=1></a>
<td><a href="http://aluminumangel.org/attack/screen_shot_4.jpg">
<img src="tn_screen_shot_4.jpg" border=1></a>
<td><a href="http://aluminumangel.org/attack/screen_shot_5.jpg">
<img src="tn_screen_shot_5.jpg" border=1></a>
<tr>
<td><a href="http://aluminumangel.org/attack/screen_shot_6.jpg">
<img src="tn_screen_shot_6.jpg" border=1></a>
<td><a href="http://aluminumangel.org/attack/screen_shot_7.jpg">
<img src="tn_screen_shot_7.jpg" border=1></a>
<td><a href="http://aluminumangel.org/attack/screen_shot_8.jpg">
<img src="tn_screen_shot_8.jpg" border=1></a>
</table></center>

<h1><a name="wallpaper">Wallpaper</a></h1>
You know you need lame Crack Attack! wallpaper.  Right click on the links to
download.
<p>
<table width=100%><tr>
<td align=center><img border=1 src="tn_wallpaper_a.jpg"><br>
<a href="http://aluminumangel.org/attack/crack_wp_a_1280x1024.bmp">
<font size=-1>1280x1024 standard wallpaper</a><br>
<a href="http://aluminumangel.org/attack/crack_wp_a_1152x864.bmp">
1152x864 standard wallpaper</a>
<td align=center><img border=1 src="tn_wallpaper_b.jpg"><br>
<a href="http://aluminumangel.org/attack/crack_wp_b_1280x1024.bmp">
<font size=-1>1280x1024 X-treme wallpaper</a><br>
<a href="http://aluminumangel.org/attack/crack_wp_b_1152x864.bmp">
1152x864 X-treme wallpaper</a>
</table><br><br>

<h1><a name="game play">Game Play</a></h1>

<h3>Screen Description</h3>
First a quick overview of the game screen.
<br><br><table cellspacing=0 cellpadding=0>
<tr><td width=50% valign=top>
<ol>
<li>Crack Attack! logo.
<br><br><li>Your opponent's level lights.  These indicate the height of your
opponent's stack.  When the red reaches the top and they start flashing, he's in
trouble!
<br><br><li>Your level lights.  These correspond to the height of your stack.
When your stack reaches the top of the screen, these lights flash to warn you of
your impending doom.  You've got seven seconds to reduce your stack or you lose.
If nothing else, just eliminate some blocks.  Time during which blocks are
disappearing or garbage is shattering do not count towards these seven seconds.
<br><br><li>Players' names.
<br><br><li>Your star collection.  When you win a game, you get a happy yellow
star.  Once you earn two, you win the match!  In this case the player won the
first game, lost the second, and the third star is being contested.
<br><br><li>The clock keeps track of how long the current game has taken.  In
solo mode the clock is replaced by your score.
<br><br><li>The four orange blocks have been eliminated and are disappearing.
Any time three or more of the same color blocks are in a row, they eliminate.
In this case, since the elimination is more than the minimum size of three, a
'4' appeared to let the player know he was doing a good job.  The
rectangular-ish white thing is your cursor.  You control it with the arrow keys
and use it to manipulate the colored blocks in your stack.
<br><br><li>These are the blocks in your stack.  You can use your cursor to swap
blocks which are side-by-side in order to put blocks of like color into a row,
which causes them to eliminate.  And you'd better be quick about it, because
your stack will creep up from the bottom and once it reaches to top of the
screen, you loose.
<br><br><li>This is a piece of garbage in your stack.  When your opponent does
something clever, for example eliminating four blocks at once, garbage will fall
from above, cluttering your stack.  You can shatter garbage into normal blocks
by causing a bordering elimination.
</ol>
<td width=50% align=center valign=center>
<img src="screen_explanation.jpg" border=1>
</table>

<h3>Play Control</h3>
Play control is very simple.
<menu><dt><dd>
<dt><code>Arrow Keys</code><br><br>
<dd>Move your cursor.  Also, in solo mode, rotates the Hall of Fame.
<br><br><dt><code>Space Bar</code><br><br>
<dd>Swap the blocks your cursor surrounds.
<br><br><dt><code>Enter</code><br><br>
<dd>Advance your stack upwards one row.
<br><br><dt><code>P | p</code><br><br>
<dd>Pause the game.  During online play, either player is able to unpause a
paused game.
<br><br><dt><code>Esc</code><br><br>
<dd>Concede the current match or exit Crack Attack! after a match.
</menu><br><br>

<table width=100%><tr><td width=40%>
<h3>Game Play</h3>
<h4>The Basics</h4>
Slowly, your stack of blocks grows from the bottom, and you've got to make sure
it never reaches the top.  Because, once it does, you lose!  To eliminate
blocks from the stack, line up at least three of one color, horizontally or
vertically.  Once you do, those blocks disappear, and put off slightly your
inevitable demise.
<p>
To add to the excitement, chunks of red garbage will fall from above.  It is
impossible to eliminate this garbage directly.  However, if you eliminate any
blocks which are touching the garbage, the garbage will shatter into normal,
run-of-the-mill blocks.
<p>
Throughout the game your stack of blocks will slowly grow from below, initially
quite slowly but always faster and faster.  When the stack reaches the top it
will pause and you have seven seconds to save yourself.
It is possible, however, to get a momentary repose from your stack's assent.
When you eliminate a block or cause garbage to shatter, the growth of your
stack will pause.  Even if your stack has reached the top and you're about to
lose, you will be given a little more time to save yourself.  Time during which
a block is disappearing or a chunk of garbage is shattering does not count
towards your seven seconds.
<h4>Multiple Eliminations</h4>
So, what is it that causes this garbage?  Well, the garbage is your opponent's
way of sticking it to you; and, conversely, your way of sticking it to him.
While any old slod can eliminate a ho-hum three blocks, a true master will
eliminate four, five, or even more blocks at one time.  And when he does,
not only will he be rewarded with a little light show, but garbage will
come raining down onto his opponent's stack!  Just remember, the bigger the
elimination, the bigger the downpour.
<h4>Combos</h4>
Beyond the multiple elimination method, there is yet another technique to
generate troublesome garbage.  I speak of the dreaded combo.  Whenever you
eliminate blocks, it's likely to cause other blocks to fall, either simply
because they were above the eliminated blocks, or because you have freed them
from a piece of overhanging garbage.  If, when these blocks fall, they cause a
second elimination, you've got yourself a combo.  If you're good enough to
keep the combo rolling, your combo multiplier will increment for each
elimination.  And, when the combo is finally complete, a massive chunk of
garbage will descend upon your opponent, it's size proportional to your final
multiplier.
<h4>Solo Mode</h4>
Solo play works a little differently.  Instead of trying to last longer than an
opponent, now you're attempting to rack up as many points as possible before
you die.  The number of points you get for an elimination depends on how fancy
it is.
<p>
<table border=1>
<tr><th>Elimination<th>Value
<tr><th>3 blocks<th>2 point
<tr><th>4 blocks<th>4 points
<tr><th>5 blocks<th>5 points
<tr><th>N blocks<th>N points
<tr><th>...<th>...
</table>
<p>
When you get a combo, all of the points you earned in the eliminations which
made up that combo are multiplied by the combo's highest multiplier.  So, for
example, if you work up to a x5 combo, then all of the eliminations in that
combo will be worth five times the points.
<p>
But watch out!  Eliminations generate garbage in solo mode too.  Except the
garbage falls on you!  So, its a tradeoff between points and garbage.
<p>
Once the game is over, if your score is within the top thirty scores ever, you
win and your name is added to the Hall of Fame!  If you manage to get the
number one spot, you're in for an extra special treat.  Use the arrow keys when
viewing the Hall of Fame in order to check out the other scores.
<h4>Gray Block</h4>
While there is little more to say about the five standard colored blocks,
there is an additional color of block, more rare than the others, the gray
block.  Even the elimination of just three gray blocks generates garbage,
and this is no ordinary garbage.  Normally when a piece of garbage shatters,
the effect propagates on, destroying all garbage that it is in contact with.
Often just one well placed elimination by your opponent can shatter all
of your hard earned garbage.  Well, gray garbage stops shattering 
propagation like a firewall and can only be destroyed by an elimination
in direct contact with it.
<p>
In solo mode a gray elimination generates three times the points!  Because gray
blocks are worth so many points, it's a good idea to try and work them into a
combo multiplier.
<p>
<table border=1>
<tr><th>Elimination<th>Value
<tr><th>3 gray blocks<th>6 points
<tr><th>4 gray blocks<th>12 points
<tr><th>5 gray blocks<th>15 points
<tr><th>N gray blocks<th>3N points
</table>

<h3>X-treme Play Mode</h3>
For those who have mastered the art of Crack Attack! and hunger for something
more, we offer Crack Attack! X-treme!!!  In Crack Attack! X-treme long lost
block types, thought by some to be extinct, have resurfaced.  Gone is the
ho-hum, work-a-day world of the lone gray special block type.  Replacing it is
a cavalcade of color: over eight special block types!
<p>
Use the <code>-X</code> command-line option to access X-treme play
mode.  One should note that normal play mode is the true test of one's
Crack Attack! skill.  While normal play mode can be likened to chess, X-treme
play mode is more akin to winging a super ball as hard as you can in a small
room, and seeing who gets hit first.  It's fun, just a bit random.
<p>
In Crack Attack! X-treme no block can be trusted and nothing is as it seems!
<h4>Wild Block</h4>
This crazy block can't decide which color it wants to be!  Slowly it shifts
though the spectrum, hoping to cause an unexpected match.
<h4>Special Orange Block</h4>
This baby lays out a hunk of garbage taller than it is wide, guaranteed to add
height to your opponent's stack, and quick!
<h4>Special Yellow Block</h4>
Knock your opponent flat with this block's diseased garbage!  All his controls
will be reversed until he can figure out a way to shatter the garbage and cure
himself.
<h4>Special Green Block</h4>
Special green blocks generate poisoned garbage which blinds your opponent!
Well, sort of.  Actually, it will cause his cursor to flicker and then
disappear.  The cursor will remain nearly invisible until the poisoned garbage
is shattered.
<h4>Special Blue Block</h4>
When you cause the blue garbage generated by this special block to shatter,
instead of turning into blocks, it becomes normal garbage.  What a pain!
<h4>Special Purple Block</h4>
Forget those big, easy-to-shatter chunks of connected garbage.  Any elimination
with this block causes a veritable downpour of miniature purple garbage
onto your opponent's stack.  That stuff has a nasty habit of getting into all
the wrong places.
<h4>Gray Block</h4>
This old guy's still along for the ride.  You'll need him to help eliminate his
relatives.
<h4>Ancient Ancestors of the Gray Block</h4>
There are rumored to be even more rare and powerful block colors, lost
relatives of the gray block.  Legend speaks of a black block and a white block,
one which generates obsidian garbage that is nigh impossible to shatter and the
other which generates pearl garbage and has dominion over the sun itself!
<h4>Point Values</h4>
In solo mode many of the X-treme blocks are worth bonus points.  But are the
points worth their deadly garbage!?  You must decide.  It's always a good idea
to try and work any special block eliminations into a combo.  That way the
special blocks' bonus points will be multiplied by the combo's multiplier.
<p>
<table border=1>
<tr><th>Special Block<th>Value
<tr><th>special orange<th>10 points
<tr><th>special yellow<th>15 points
<tr><th>special green<th>8 points
<tr><th>special blue<th>5 points
<tr><th>special purple<th>5 points
<tr><th>black<th>? points
<tr><th>white<th>? points
</table>

</menu>

<h1><a name="advanced features">Advanced Features</a></h1>
<h3>Personal Garbage Image</h3>
Crack Attack! is fully customizable!
<p>
That is a big lie.  However, you can get it to use your own personal giant
garbage image.  Often, whenever you lay a really serious piece of garbage
down on your opponent, it will have some sort of inspirational message
on it.  Normally, Crack Attack! chooses an image at random from its little
stock pile.  However, if you specify your own personal image, Crack Attack! will
use it more often than not.  During online play your image will be placed on
any giant pieces of garbage which fall on your opponent.  With solo play the
image will be used on garbage you send to yourself.  Just think of the
possibilities!  You can communicate your views on your opponent's
intelligence, at the same time as you play a rousing game of Crack Attack!
You could propose to your girlfriend, assuming she's enough of a loser to play
Crack Attack!  The list goes on.
<p>
A personal garbage image must be 128x128 or smaller.  Save the image as an
uncompressed TGA with alpha channel.  Name the image file
<code>garbage_flavor_my.tga</code>.  If you are running Linux, put the file in
the directory <code>.crack-attack/</code> which is located in your home
directory.  If you are running Windows, put the file in the directory
<code>localdata</code> which is located in Crack Attack!'s application
directory.  Remember, do NOT use RLE compression when saving.  Why?  Because
I'm too lazy to code up an uncompressor but too proud to use someone else's.
Plus, your hard drive is huge.  If you're really hard up for space, maybe you
could delete a few of those LEXX episodes.  When creating a personal garbage
image, use a transparent background and keep in mind that that transparent
background will become red once the image is placed on the garbage.
<p>
As you play against a multitude of opponents, Crack Attack! will accumulate a
set of garbage images and will use them from time to time.  If you manage to
obtain a garbage image which is of particularly bad taste and you'd like to be
rid of it, find its file.  Under Linux it will be found in the directory
<code>.crack-attack/</code> located in your home directory.  Under Windows it
will be found in the directory <code>localdata</code> located in Crack
Attack!'s application directory.  The file will be among the files named
<code>garbage_flavor_###.tga</code>.  Simply delete it.

<h1><a name="final note">Final Notes</a></h1>
<h3>Potential Improvements</h3>
Believe it or not, there are improvements which could be made to Crack Attack!
<ul>
<li>Improved Socket Code
<br><br>
Crack Attack!'s socket code was written based on my experience
with parallel scientific simulation code.  And no one has ever accused a
piece of academic simulation code of being nimble.  That is, my socket use
is perhaps a bit naive, and I doubt it deals as effectively as it might with
such things as not having a direct and dedicated connection.
Much to my surprise, games have been successfully played between opponents
on opposite coasts.  None the less, there is still much for me to learn when
it comes to writing robust, time-critical socket code.  Until then, your best
bet is to stay inside your LAN.
<br><br>
<li>Triangle Strips
<br><br>
I'm lazy and thus never got around to triangle stripping the basic block.  As it
is the block has over five hundred vertices.  That's almost embarrassing.
<br><br>
<li>Windows Version 
<br><br>
Done!
<br><br>
<li>Sound
<br><br>
I'm only one man!!!  I don't have the time or the tools right now.
<br><br>
<li>Chat
<br><br>
Want to chat during a game?  Go download AIM.
<br><br>
<li>Money
<br><br>
Someday someone will pay me to do this kind of crap.  And I'll have an artist!
</ul>

<h3>Thanks to...</h3>
Colin Walters | Wade Lutgen, friend and co-conspirator | Roland Peetz, play
tester | Greg Kilcup, my infinitely patient graduate studies professor | Andy
Colebourne, creator of AC3D - used to model the basic block | Mark Kilgard,
creator of GLUT | the GIMP team | Nullsoft, creators of NSIS - an excellent and
free utility for creating Windows install scripts | Mark Wilde | Mom

<h3>GNU General Public License</h3>
Copyright (C) 2002  Daniel Richard Nelson
<p>
174 W. 18th Ave.<br>
Columbus, OH  43210  USA<br>
<a href="mailto:nelson@aluminumangel.org">
nelson@aluminumangel.org</a><br>
<a href="http://aluminumangel.org">aluminumangel.org</a><br>
<p>
This program 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 2
of the License, or (at your option) any later version.
<p>
This program 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.
<p>
The GNU General Public License can be found online at
<a href="http://www.gnu.org/copyleft/gpl.html">
http://www.gnu.org/copyleft/gpl.html</a>.
Additionally, a copy can be obtained by writing to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

<h3>Disclaimer</h3>
It is important to realize that the name of Crack Attack! X-treme play mode is
meant to be humorous, and thus should not itself be the subject of derision.
Thank you.

<h1><a name="contact">Contact</a></h1>
Direct comments, questions, praise, flames, and job offers to
<a href="mailto:nelson@aluminumangel.org">
nelson@aluminumangel.org</a>.  Visit my homepage at
<a href="http://aluminumangel.org">aluminumangel.org</a>.
<p>

<td width=60%></table>

</body>
</html>