This file is indexed.

/usr/share/doc/lbreakout2/index.html is in lbreakout2 2.6.1-1.

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
<HTML>

<HEAD>
<TITLE>LBreakout2 Manual</TITLE>
</HEAD>

<BODY bgcolor="#ffffff" link="#0000ff" alink="#0000ff" vlink="#0000ff">

<DIV align="center">
<H1>LBreakout2 Manual</H1>
maintained by Michael Speck<BR>last change: 03/05/24
</DIV>

<!-- toc -->
<P>
<H2><A name="toc">Table Of Contents</A></H2>
<UL>
<LI>
 <A href="#gameplay">Game Play</A>
 <UL>
  <LI><A href="#basics">Basics</A></LI>
  <LI><A href="#bonus">Bonus/Penalty</A></LI>
  <LI><A href="#bricks">Special Bricks</A></LI>
  <LI><A href="#keys">Keys</A></LI>
  <LI><A href="#resume">Resuming A Local Game</A></LI>
  <LI><A href="#network">Network Game</A></LI>
 </UL>
</LI>
<LI>
 <A href="#editor">Editor</A>
 <UL>
  <LI><A href="#misc">Miscellany</A></LI>
  <LI><A href="#screen">Editor Layout</A></LI>
  <LI><A href="#howto">How To Edit</A></LI>
 </UL>
</LI> 
<LI>
<A href="#theme">Themes</A>
<UL>
<LI><A href="#theme_misc">Miscellany</A></LI>
<LI><A href="#theme_howto">How To Make A Theme</A></LI>
</UL>
</LI>
</UL>
</P>

<!-- game play -->
<P>
<H2><A name="gameplay">Game Play</A></H2>
<!-- basics -->
<H3><A name="basics">Basics</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2"><TR><TD>
Okay, I guess all of you know how to play breakout basically. Ball bounces around --> 
paddle keeps ball in game -> all bricks destroyed --> next level ;-D<BR>
The chosen difficulty level has some influence
on the size of the paddle, the speed of balls and the score gained. 
<TABLE border=1>
<TR><TD>Level</TD><TD>paddle size (in pixel)</TD><TD>ball speed (in pixels per second)</TD><TD>score modification</TD></TR>
<TR><TD>Easy</TD><TD>72 - 180</TD><TD>240 - 400</TD><TD>-20%</TD></TR>
<TR><TD>Medium</TD><TD>72 - 144</TD><TD>270 - 430</TD><TD>0</TD></TR>
<TR><TD>Hard</TD><TD>52 - 108</TD><TD>300 - 450</TD><TD>+30%</TD></TR>
</TABLE>
If there is more than one player the next player will get his/her chance when the current 
one restarts the level or looses all balls. The name of the current/next player is displayed
in the right top corner of the screen and before each turn.
</TD></TR></TABLE>
<!-- bonus/penalty -->
<H3><A name="bonus">Bonus/Penalty</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5>
<TR><TD colspan=4>
A destroyed brick may release a bonus or penalty which will move down slowly. It's
used as soon as it is collected by paddle.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Name</TD><TD>Time (in sec)</TD><TD>Picture</TD><TD>Description</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Extra Score</TD><TD>-</TD><TD><IMG src="x0.jpg"></TD><TD>Gives you the score written on it.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>End Of The Rainbow</TD><TD>20</TD><TD><IMG src="x1.jpg"></TD><TD>If you destroy a brick with no bonus assigned it will release 1000 points extra score!</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Expand Paddle</TD><TD>-</TD><TD><IMG src="x3.jpg"></TD><TD>Expands your paddle about one tile (the maxium size depends on the chosen difficulty level).</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Extra Life</TD><TD>-</TD><TD><IMG src="x4.jpg"></TD><TD>Gives you one extra life (paddle).</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Sticky Paddle</TD><TD>20</TD><TD><IMG src="x5.jpg"></TD><TD>Balls touching the paddle will keep attached until you press fire.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Energy Balls</TD><TD>5</TD><TD><IMG src="x6.jpg"></TD><TD>Balls won't be reflected at a brick but go directly through it.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Extra Ball</TD><TD>-</TD><TD><IMG src="x7.jpg"></TD><TD>Creates a new ball.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Bonus floor</TD><TD>10</TD><TD><IMG src="x8.jpg"></TD><TD>Closes the screen so no balls can get lost.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Weapon</TD><TD>5</TD><TD><IMG src="x10.jpg"></TD><TD>Adds a weapon to the paddle.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Speed Down</TD><TD>20</TD><TD><IMG src="x13.jpg"></TD><TD>Deccelerates all balls to mimum speed.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Joker</TD><TD>-</TD><TD><IMG src="x14.jpg"></TD><TD>Collects all bonus on screen instantly and destroys all penalties. Doubles score and time of the collected bonus!</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Explosive Balls</TD><TD>10</TD><TD><IMG src="x20.jpg"></TD><TD>When hitting a brick balls will cause an explosion destroying all surounding bricks.</TD></TR>
<TR bgcolor="#d0f2d0"><TD>Bonus Magnet</TD><TD>20</TD><TD><IMG src="x21.jpg"></TD><TD>While this bonus is active the paddle will attract other bonuses.</TD></TR>

<TR bgcolor="#f2f2f2"><TD>Reset</TD><TD>-</TD><TD><IMG src="x18.jpg"></TD><TD>All active bonuses and penalties will be reset.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Time-Add</TD><TD>-</TD><TD><IMG src="x19.jpg"></TD><TD>All active bonuses and penalties will last seven seconds longer.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Random Extra</TD><TD>-</TD><TD><IMG src="x11.jpg"></TD><TD>Gives you any of the listed extras.</TD></TR>

<TR bgcolor="#f2d0d0"><TD>Speed Up</TD><TD>20</TD><TD><IMG src="x12.jpg"></TD><TD>Accelerates all balls to maximum speed.</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Frozen Paddle</TD><TD>1</TD><TD><IMG src="x9.jpg"></TD><TD>Freezes the paddle (no movement possible).</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Shrink Paddle</TD><TD>-</TD><TD><IMG src="x2.jpg"></TD><TD>Shrinks your paddle about one paddle tile (18 pixels).</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Lights Out!</TD><TD>20</TD><TD><IMG src="x15.jpg"></TD><TD>Total darkness. All you see is a shade  of paddle, balls and extras.</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Chaos</TD><TD>20</TD><TD><IMG src="x16.jpg"></TD><TD>Balls are reflected randomly at bricks. (but not at paddle)</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Ghostly Paddle</TD><TD>20</TD><TD><IMG src="x17.jpg"></TD><TD>Paddle disappears when not moving and won't reflect any balls then. (nor does it collect bonuses)</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Penalty Magnet</TD><TD>20</TD><TD><IMG src="x22.jpg"></TD><TD>While this penalty is active the paddle will attract other penalties.</TD></TR>
<TR bgcolor="#f2d0d0"><TD>Weak Balls</TD><TD>10</TD><TD><IMG src="x23.jpg"></TD><TD>With this penalty active there is a 40% chance that a ball won't damage a brick.</TD></TR>

</TD></TR></TABLE>
<!-- special bricks -->
<H3><A name="bricks">Special Bricks</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5>
<TR bgcolor="#f2f2f2"><TD>Name</TD><TD>Picture</TD><TD>Description</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Shielded Brick</TD><TD><IMG src="b6.jpg"></TD><TD>This brick is indestructible even for energy balls.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Metal Brick</TD><TD><IMG src="b0.jpg"></TD><TD>This wall is indestructible except for energy balls.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Chaotic Brick</TD><TD><IMG src="b4.jpg"></TD><TD>Similiar to the Chaos Penalty the ball is reflected randomly at such a brick.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Strong Brick</TD><TD><IMG src="b1.jpg"></TD><TD>These walls take up to three shots before destruction and grow darker with every hit. NOTE: to this series belongs a forth brick which  is invisbile.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Regenerating Brick</TD><TD><IMG src="b5.jpg"></TD><TD>This brick will regenerate one point durability within four seconds if not hit again.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Explosive Brick</TD><TD><IMG src="b2.jpg"></TD><TD>This bricks destroys its neighbors on destruction.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Growing Brick</TD><TD><IMG src="b3.jpg"></TD><TD>If this brick is destroyed it creates up to 8 new bricks.</TD></TR>
</TD></TR></TABLE>
<!-- keys -->
<H3><A name="keys">Keys</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5>
<TR bgcolor="#f2f2f2"><TD colspan=2>There are some predefined keys for LBreakout:</TD></TR>
<TR bgcolor="#f2f2f2"><TD>h or F1</TD><TD>Display quick help.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>Escape</TD><TD>Quit LBreakout (after confirmation).</TD></TR>
<TR bgcolor="#f2f2f2"><TD>p</TD><TD>Pause game.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>r</TD><TD>Restart level. If more than player the next one will get his chance before this player may play the restarted level!</TD></TR>
<TR bgcolor="#f2f2f2"><TD>w</TD><TD>Warp to next level after required percentage of bricks was cleared.
As soon as this is possible a blinking icon will appear at the bottom right-hand side of the screen: 
 <IMG alt="" src="warp.jpg">. This option can be set in menu <I>Advanced Options</I>. It does
 only apply to AddOn levelsets as it is meant as a workaround for bad leveldesign.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>d</TD><TD>Switch to the <i>Plane Of Inner Stability</I> and disintegrate single bricks. Again, this only works in AddOn levelsets to remove bricks that are hard to hit.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>f</TD><TD>Switch Fullscreen and Windowed mode.</TD></TR>
<TR bgcolor="#f2f2f2"><TD>a</TD><TD>Change animation level (off/low/high).</TD></TR>
<TR bgcolor="#f2f2f2"><TD>s</TD><TD>Turn on/off sound.</TD></TR>
</TABLE>
<!-- resume game -->
<H3><A name="resume">Resuming A Local Game</A></H3>
If you quit a game, it may be continued later by 'Resume Last Game' in menu 'Local Game'. While the current
player, all scores and lives are saved, the state of the level itself is not. Thus if you break up a game
and resume it later, the level of each player will be reset. Therefore it is recommended to quit a game
right after a level was finished (quite difficult for multiple players, yes). A highscore entry will not
be created! If you don't intend to resume the game later but want to enter the highscores, you'll 
have to loose all balls.
<!-- network game -->
<H3><A name="network">Network Game</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2"><TR><TD>
You can play LBreakout2 against another human via network. Therefore you'll have
to connect to a server or run a server and have your friends connected. <BR>
<B>Start A Server</B><BR>
After you started the program <I>lbreakout2server</I> with any of the following options
<TABLE border=1>
<TR><TD>-p &lt;PORT&gt;</TD><TD>the port the server shall run at (default is 2002)</TD></TR>
<TR><TD>-l &lt;LIMIT&gt;</TD><TD>maximum number of users that may connect to the server (default is 30)</TD></TR>
<TR><TD>-m &lt;MESSAGE&gt;</TD><TD>this message is displayed to welcome a user</TD></TR>
<TR><TD>-a &lt;PASSWORD&gt;</TD><TD>a user that logs in with this name will become administrator named <I>admin</I> (default is no admin)</TD></TR>
<TR><TD>-f &lt;FRAMERATE&gt;</TD><TD>is the number of calls to the send/recv handler per second. The default is 33.</TD></TR>
</TABLE>
you can obtain your IP address by using <I>/sbin/ifconfig</I>.  If you want to play
via LAN the <I>inet addr</I> of device <I>eth0</I> is important and for internet 
connections it's the <I>inet addr</I> of device <I>ppp0</I>.<BR>
<B>Playing</B><BR>
How to play is explained in the in-game help accessable via the 'Help' button
at the bottom right-hand side in the network chatroom.<BR>
<B>New Playing Grounds</B><BR>
You can build new levelsets combining <I>pingpong</I> and <I>normal</I> ones.
Such a levelset must start with 'N_'. An 'upload' command is planned but right
now the only way to make a new levelset available is to copy it to the server's
levelset directory (default: /usr/local/share/games/lbreakout2/levels) and restart
the server.
</TD></TR></TABLE>
</P>
<P>
<A href="#toc">ToC</A>
</P>

<!-- editor -->
<P>
<H2><A name="editor">Editor</A></H2>
<!-- general -->
<H3><A name="misc">Miscellany</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2"><TR><TD>
All files you edit are saved to <B>~/.lbreakout2/levels</B>. This '~' you see in front of
the name when choosing levelset for playing is not part of the file name but added afterwards 
to separate the files in the installation path from the files in the config path (these you may 
edit).
</TD></TR></TABLE>
<!-- screen -->
<H3><A name="screen">Editor Layout</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2">
<TR>
<TD><CENTER><IMG alt="editor overview" src="screen.jpg"></CENTER></TD>
<TD>
Actions like quit, save, load, clear, add, insert, remove require a confirmation for safety.
<OL>
<LI>Editable Part</LI>
<LI>Bricks and Bonus</LI>
<LI>Information about location of set file and how many levels you already created, which level your currently on and how many levels more you may create. If you marked a level for swap it's displayed there, too.</LI>
<LI>Click on title to change title of this level.</LI>
<LI>Click here to change author's name for this level.</LI>
<LI>Click here to test this level.</LI>
<LI>Go to first level.</LI>
<LI>Go to next level.</LI>
<LI>Go to previous level.</LI>
<LI>Clear all bricks and bonus in this level.</LI>
<LI>Swap two levels. On first click the current level will be marked (info displayed in region 3), on second click the current and the marked level will be swapped.</LI>
<LI>Insert a level at the end (copies title and author of previously last level).</LI>
<LI>Insert a level at current position (copying current title and author).</LI>
<LI>Remove current level.</LI>
<LI>Reload this level set (discards all unsaved changes).</LI>
<LI>Save this levelset (save all changes).</LI>
</UL>
</TD>
</TR>
</TABLE>
<!-- how to edit -->
<H3><A name="howto">How To Edit</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2"><TR><TD>
Very simple. Select a brick or a bonus by left-click (right-click into the section to switch between the
brick and the bonus set) from the bottom of the screen (red-yellow selection
frame) go to the editable part and left-click. Right click will remove a brick 
(any brick and its bonus if a brick's selected)  or bonus (any bonus without touching the 
brick if bonus selected). You may move the mouse while having left or right buttom
pressed. To parse/add/remove any levels or save/load this set use the buttons as explained
above. You may use the cursor keys, too (UP - first level, RIGHT - next level, 
LEFT - previous level). Pressing ESCAPE leaves the editor after confirmation.
</TD></TR></TABLE>
</P>
<P>
<A href="#toc">ToC</A>
</P>

<!-- themes -->
<P>
<H2><A name="theme">Themes</A></H2>
<!-- miscellany-->
<H3><A name="theme_misc">Miscellany</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2"><TR><TD>
<P>
If you want to run LBreakout2 with other graphics and sounds you can create a 
theme which allows you to modify <U>all</U> game graphics and sounds.
The use of new backgrounds is also allowed. The following list contains all editable
graphics and sounds. What you have to do to edit them is explained <A href="#theme_howto">below</A>.
</P>
<P>
<I>Editable graphics:</I>
<TABLE border=0 cellpadding=2 cellspacing=2>
<TR><TD bgcolor="#dddddd">backgrounds</TD><TD>Handling of backgrounds is special. As long as you do not provide a back0.png file
the original backgrounds are used. If you want to use self-made backgrounds 
you'll have to save them as back<I>indices</I>.png where your first indices must be 0.
If this happens LBreakout2 will only use the backgrounds found in your theme directory (six backgrounds at maximum).
This means if you only provide one background LBreakout2 will only use this background 
throughout the game as long as your theme is running.</TD></TR>
<TR><TD bgcolor="#dddddd">ball.png</TD><TD></TD></TR>
<TR><TD bgcolor="#dddddd">bricks.png</TD><TD></TD></TR>
<TR><TD bgcolor="#dddddd">menuback.png</TD><TD>background of the main menu</TD></TR>
<TR><TD bgcolor="#dddddd">cr_back.png</TD><TD>background of the chatroom</TD></TR>
<TR><TD bgcolor="#dddddd">explosions.png</TD><TD>normal explosions</TD></TR>
<TR><TD bgcolor="#dddddd">explosions_dark.png</TD><TD>explosions if darkness penalty is active</TD></TR>
<TR><TD bgcolor="#dddddd">extras.png</TD><TD>bonuses and penalties</TD></TR>
<TR><TD bgcolor="#dddddd">f_frame.png</TD><TD>font used for score and player name in the right upper corner of the frame</TD></TR>
<TR><TD bgcolor="#dddddd">f_game.png</TD><TD>font used for level credits and confirmation</TD></TR>
<TR><TD bgcolor="#dddddd">floor.png</TD><TD>bonus floor that is used to close playing field (optional)</TD></TR>
<TR><TD bgcolor="#dddddd">fr_left.png</TD><TD>left part of frame</TD></TR>
<TR><TD bgcolor="#dddddd">fr_right.png</TD><TD>right part of frame</TD></TR>
<TR><TD bgcolor="#dddddd">fr_top.png</TD><TD>top part of frame</TD></TR>
<TR><TD bgcolor="#dddddd">fr_mp_left.png</TD><TD>left part of frame for network game</TD></TR>
<TR><TD bgcolor="#dddddd">fr_mp_right.png</TD><TD>right part of frame for network game</TD></TR>
<TR><TD bgcolor="#dddddd">life.png</TD><TD>life lamps displayed in the left bottom corner of the frame</TD></TR>
<TR><TD bgcolor="#dddddd">paddle.png</TD><TD></TD></TR>
<TR><TD bgcolor="#dddddd">shine.png</TD><TD>animation running accross bricks</TD></TR>
<TR><TD bgcolor="#dddddd">shot.png</TD><TD>shot of the plasma weapon</TD></TR>
<TR><TD bgcolor="#dddddd">warp.png</TD><TD>icon that blinks at the bottom right-hand side of the screen when warp became possible</TD></TR>
<TR><TD bgcolor="#dddddd">weapon.png</TD><TD>weapon displayed on the paddle</TD></TR>
</TABLE>
</P>
<P>
<I>Editable sounds:</I>
<TABLE border=0 cellpadding=2 cellspacing=2>
<TR><TD bgcolor="#dddddd">attach.wav</TD><TD>played if ball is attached to sticky paddle</TD><TD bgcolor="#dddddd">joker.wav</TD><TD>bonus sound</TD></TR>
<TR><TD bgcolor="#dddddd">bonus_magnet.wav</TD><TD>bonus sound</TD><TD bgcolor="#dddddd">looselife.wav</TD><TD>played if you loose a life</TD></TR>
<TR><TD bgcolor="#dddddd">chaos.wav</TD><TD>penalty sound</TD><TD bgcolor="#dddddd">malus_magnet.wav</TD><TD>penalty sound</TD></TR>
<TR><TD bgcolor="#dddddd">click.wav</TD><TD>played if key was pressed (e.g. confirmation)</TD><TD bgcolor="#dddddd">metal.wav</TD><TD>enery ball sound</TD></TR>
<TR><TD bgcolor="#dddddd">dammit.wav</TD><TD><I>Dammit!</I> speech sample</TD><TD bgcolor="#dddddd">reflect.wav</TD><TD>ball reflection sound</TD></TR>
<TR><TD bgcolor="#dddddd">damn.wav</TD><TD><i>Damn!</I> speech sample</TD><TD bgcolor="#dddddd">score.wav</TD><TD>bonus sound</TD></TR>
<TR><TD bgcolor="#dddddd" bgcolor="#dddddd">darkness.wav</TD><TD>penalty sound</TD><TD bgcolor="#dddddd">shot.wav</TD><TD>weapon's firing noise</TD></TR>
<TR><TD bgcolor="#dddddd">disable.wav</TD><TD>penalty sound</TD><TD bgcolor="#dddddd">shrink.wav</TD><TD>penalty sound</TD></TR>
<TR><TD bgcolor="#dddddd" bgcolor="#dddddd">excellent.wav</TD><TD><I>Excellent!</I> speech sample</TD><TD bgcolor="#dddddd">speeddown.wav</TD><TD>bonus sound</TD></TR>
<TR><TD bgcolor="#dddddd">exp.wav</TD><TD>brick explosion sound</TD><TD bgcolor="#dddddd">speedup.wav</TD><TD>penalty sound</TD></TR>
<TR><TD bgcolor="#dddddd">expand.wav</TD><TD>bonus sound</TD><TD bgcolor="#dddddd">standard.wav</TD><TD>standard sound for collecting an extra </TD></TR>
<TR><TD bgcolor="#dddddd">expl_ball.wav</TD><TD>bonus sound</TD><TD bgcolor="#dddddd">timeadd.wav</TD><TD>bonus sound</TD></TR>
<TR><TD bgcolor="#dddddd">extraball.wav</TD><TD>bonus sound</TD><TD bgcolor="#dddddd">verygood.wav</TD><TD><I>Very Good!</I> speech sample</TD></TR>
<TR><TD bgcolor="#dddddd">freeze.wav</TD><TD>penalty sound</TD><TD bgcolor="#dddddd">wall.wav</TD><TD>bonus sound</TD></TR>
<TR><TD bgcolor="#dddddd">gainlife.wav</TD><TD>played if you got an extralife</TD><TD bgcolor="#dddddd">weak_ball.wav</TD><TD>penalty sound</TD></TR>
<TR><TD bgcolor="#dddddd">ghost.wav</TD><TD>bonus sound</TD><TD bgcolor="#dddddd">wontgiveup.wav</TD><TD><I>I won't give up!</I> speech sample</TD></TR>
<TR><TD bgcolor="#dddddd" bgcolor="#dddddd">goldshower.wav</TD><TD>bonus sound</TD><TD>&nbsp;</TD></TR>
</TABLE>
</P>
</TD></TR></TABLE>
<!-- steps -->
<H3><A name="theme_howto">How To Make A Theme</A></H3>
<TABLE border=0 cellpadding=5 cellspacing=5 bgcolor="#f2f2f2"><TR><TD>
<OL>
<LI>Create a directory in <I>~/.lgames/lbreakout2-themes</I> with the name of your theme.</LI>
<LI>
Have a look at the original graphics and sounds located in the 
<I>gfx</I> and <I>sounds</I> directory in the <I>source path</I> or 
in <I>/usr/local/share/games/lbreakout2</I>.
</LI>
<LI>
Now change a graphic or sound to your liking and save it with the 
same name to <I>~/.lgames/lbreakout2-themes</I>. <BR>
<I>Note:</I>
<UL>
<LI>You <U>must not</U> change the measurements of a graphic. The only exception is <I>warp.png</I> which will be centered to the bottom right-side of the frame.</LI>
<LI>You <u>must not</U> save it to a subdirectory <I>gfx</I> or <I>sounds</I> but directly to <I>~/.lgames/lbreakout2-themes/MyTheme</I>.</LI>
<LI>A graphic or sound that can't be found in your theme directory is loaded from the 
original resources.</LI>
<LI>Handling of backgrounds is special. As long as you do not provide a back0.png file
the original backgrounds are used. If you want to use self-made backgrounds 
you'll have to save them as back<I>indices</I>.png where your first indices must be 0.
If this happens LBreakout2 will only use the backgrounds found in your theme directory (six backgrounds at maximum).
This means if you only provide one background LBreakout2 will only use this background 
throughout the game as long as your theme is running.
<LI>
Some bricks require multiple hits before destruction as explained in section
<A href="#bricks">Special Bricks</A> thus we have two 'groups' of bricks
<I>Strong Bricks</I> (4th - 7th) and <I>Regenerative Bricks</I> (8th - 10th). 
Everytime a brick from such a group is hit the id is decreased
by one and if we are at the very <I>left</I> brick thus the first id of the group it 
will be cleared. So as these bricks belong together they should look consistent.
All other bricks are independent.
</LI>
<LI>The default colorkey (transparency) is pure black (0x000000).
<BR>Exceptions:
<UL>
<LI>All frame graphics (fr_*.png) use the upper right pixel of fr_right.png as color key.</LI>
<LI>All fonts (f_*.png) use the very first pixel (0,0) as color key.</LI>
<LI><I>paddle.png</I> uses the very first pixel (0,0) as color key.</LI>
<LI><I>extras.png</I> has no color key by default and <I>bricks.png</I> has black as 
default color key <U>but</U> in both cases you may add a single last column (one pixel width)
with a custom color key.</LI>
</UL>
</LI>
<LI><I>floor.png</I> is an optional PNG. Per default a line of
indestructible bricks will be drawn when you catch the 'bonus floor'. (closes the playing
field) If you provide this PNG, however, it will be drawn instead thus it must have the
size of 560x20. (same as the fr_top.png) It uses black as color key.
</LI>
</UL>
</LI>
<LI>
Add a file named ABOUT to your theme directory. The first 255 characters will be 
displayed in the menu as quick info about your levelset so you should still provide a 
README with more detailed information. The 
ABOUT file should contain name, version, author and a short description.
</LI>
<LI>
Run LBreakout2 and select your theme in <I>Advanced Options/Select Theme</I>.
</LI>
<LI>
If everything works fine add a README with credits and a description.
</LI>
<LI>
Tar.gz your theme directory and send it to
<A href="mailto:kulkanie@gmx.net">kulkanie@gmx.net</A> and I'll add it to the site.<BR>
Please provide the following information (either in the mail
or in the README):<BR>
<OL>
<LI>Full title</LI>
<LI>Version number</LI>
<LI>Your name</LI>
<LI>Email-address for feedback</LI>
<LI>Description</LI>
<LI>A jpg screenshot with your theme in action (press TAB while playing).</LI>
</OL>
</LI>
</OL>
</TD></TR></TABLE>
</P>
<P>
<A href="#toc">ToC</A>
</P>

</BODY>

</HTML>