/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 <PORT></TD><TD>the port the server shall run at (default is 2002)</TD></TR>
<TR><TD>-l <LIMIT></TD><TD>maximum number of users that may connect to the server (default is 30)</TD></TR>
<TR><TD>-m <MESSAGE></TD><TD>this message is displayed to welcome a user</TD></TR>
<TR><TD>-a <PASSWORD></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 <FRAMERATE></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> </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>
|