# KBounce

KBounce is a clone of the computer game JezzBall, developed as part of KDE. Following the original concepts of JezzBall, KBounce requires the user to adapt to its increasing difficulty by applying an array of critical thinking, intuitive thinking and reflexes.

## Gameplay

Gameplay differences between the KBounce and JezzBall are rare, but as is in JezzBall, KBounce gameplay involves red-and-white 'atoms' which bounce about in a 28 x 18 rectangular field of play. The player advances to later levels by containing the atoms in progressively smaller spaces, until at least 75% of the area is blocked off. When the player advances to the next level they regain all lost lives and an extra life is given. The playing field is also reset with an extra atom and an extra 30 seconds added to the timer. For Level 1, the player receives two lives and there are two balls on the field, a player has the Current Level +1 lives for every level whilst combating an equal number of atoms as lives. For Level 1, the player is given 90 seconds to complete 75% of the field.

### Strategy

The method used to reach the highest levels is, instead of trying to draw lines to separate the balls, to build traps into which the balls can bounce. By starting a line on the second row down, somewhere in the middle of that row, a single block sized row can be made. With enough bouncing balls, patience, and time the balls will eventually bounce into those spaces and can be trapped. This strategy does not work very well on earlier levels because there are not enough balls bouncing; this reduces the likelihood of their bouncing into the slots as well as the fact that the lines started in the middle are more likely to reach the other side which closes the area and prevents them from functioning as traps.

This strategy seems to work in KBounce but not in Jezzball because in Jezzball the balls will not bounce into the single row width slots.

• - Addendum: It is possible that this strategy no longer works in version 0.9 (KDE 4.2.4) - if there is a trick to getting the balls to bounce into single-wide slots, I have been unable to discover it. 2-row wide slots works, though it is sometimes challenging. 3-wide slots work relatively easily in levels 1 through 5.

Drawing walls(lines) by aiming one head at an oncoming ball conserves lives, and becomes a near-essential skill in levels 20 and up.

A new strategy, developed in November 2009, makes it possible to end any level above level 20 with a 97% completion level, making earlier high scores and calculations about possible high scores obsolete. A detailed howto on this strategy is posted at http://www.wikihow.com/Win-at-Kbounce

### Scoring

Once the player has blocked off 75% of the game grid, the level is finished and points are awarded. The players score is updated with 15 points for every remaining life, and if a player blocks off more than 75% of the game grid they are awarded bonus points. Bonus points are calculated by the formula $2 \left (x - 75 \right )(y+5)$, where x is the total filled area (in percentage) and y is the current level. Therefore, the formula for a players score for a single level is given by $2 \left (x - 75 \right )(y+5) + \left ( z \cdot 15 \right )$, where x is the total area filled (in percentage), y is the current level and z is the number of lives remaining. Scoring is also cumulative as the player progresses.

For example, if the player finishes level five by filling 80% of the game grid, with two lives remaining, they will score 15*2 basic points plus an additional 100 points, totalling 130 points for that level.

### Theoretical Limits

Since the field is 504 individual squares (28 by 18), and the player must complete 378 squares (75% of 504) before the level is complete, there is a finite limit on both reachable level and score which cannot be beaten by the player. If each ball is captured in a 1 x 2 window then the most balls that could be captured is 68 ($68 \cdot 2 = 136$, $136 / 512 = 25%$). This would make Level 67 the highest 'completeable' level. However, it is possible (although difficult) to capture a ball in a 1 x 1 square (or to capture 2 balls in a 1 x 3 area, 3 balls in a 1 x 4 area, etc.) so higher levels can be reached. Currently, level 85 is the highest reached level. In theory, if every ball were captured in a 1 x 1 square then level 135 could be completed.

If the player were to get a perfect score on every level leading up to, and including, level 135, the highest attainable score would be achieved. Given the formula $2 \left (x - 75 \right )(y+5) + \left ( z \cdot 15 \right )$, where x is the total area filled (in percentage), y is the current level and z is the number of lives remaining for every level completed, it is possible to calculate the highest score. If the player contained every atom within a single cell whilst managing not to lose a single life throughout the game, while also filling in every other cell on the gamegrid, their high score can be acquired using the additional formula:

$\sum_{k=1}^{135}\ 2\left (100 - \left(\frac{504-(k+1)}{504} \cdot 100 \right )\right )(k+5) + ((k+1)\cdot 15) \approx 490921.43$

However, because these calculations are being performed on a computer with these variables stored as integers the final score is heavily affected by this. At the time of writing, all the relevant variables are believed to be integers, and as such the final score is 2110725 due to computational rounding.

### International champion

Although there is no official list for high-scores in KBounce, nor are there international championships held for KBounce, various players have reached relatively high scores compared to the casual player. While these scores cannot be confirmed, KBounce etiquette holds that no person should misrepresent their scores or in any way lie, cheat or forge a high score in the game.

Many individuals have, for a time, claimed the world's highest score at KBounce. Previous high scores include 28,722, reached at level 72 by James Stephens, 29,403, reached by Robert Bornhijm of Boulder, Colorado, 36,412 reached at level 48 by Adam Rothman and 49,294 at level 70 by Jon Dieterman. Although these attempts were valiant, as with every record they were eventually eclipsed.

66 balls trapped in 65 squares
Screen shot of Dan Brady's 2009 record breaking score

Alex Dickson, from Toronto, ON, has utilized a dual-ball trapping technique. This allows for densities greater than one ball per square, shown in an accompanying image of level 65, where 66 balls are trapped in 65 squares. This enabled him to obtain a score of 100,909 reached at level 85.

Dan Brady, from Minneapolis, Minnesota, USA, developed a multi-ball trapping technique, in which all balls from a level can be trapped in a 14-square area. His score, on 01 Dec 09, reached 1,782,072 upon completing level 250, with higher scores certainly possible. The technique is detailed at http://www.wikihow.com/Win-at-Kbounce.

The record for highest level is held by El Awadalla from Austria since October 3, 2013.

### Differences with JezzBall

KBounce itself is highly similar to the original Jezzball, there are however a few notable gameplay differences.

• During the 'creation' of a wall in JezzBall, the wall is spawned on, and follows the line of, the center of a gridline. That is, each square portion of the wall is centered on the gridline, whilst KBounce's walls are wholly within each grid cell.

### KBounce online

There is KBounce online version using by SilverLight 4.0

## Development

KBounce was developed by Stefan Schimanski for the Kdegames package, and is licensed under the GNU General Public License. An update of the kdegames package released on 24 March 2002 (version 4:3.0.0-0rc4-1) saw KBounce officially change name from the preceding kjezz.