Arkaway

Saved games stay in this browser only.

About the game

You steer a small paddle along the bottom of the screen and bounce a ball into a wall of bricks. Every brick that breaks is worth 10 points; every ball you let fall below the paddle costs one of your three lives. It is the old brick-breaker idea, kept short and neat, with a blue tiled playfield and chunky pixel art.

There are two modes. Normal has three levels with hand-made patterns: a flat wall of coloured rows, a wall cut by pillars that cannot be broken, and a third one built from diagonal stripes. Clear the bricks of one level to go to the next, and clear the third to win. Endless starts with a few rows and adds a new random row at the top about every ten seconds, a little faster as your score grows, until the wall reaches the paddle or you run out of lives.

Arkaway is a work in progress by Son Link, made with the Pyxel game engine for Python, and it shows what a small Python game looks like when it runs straight in the browser.

Playing it here

The first time you click Play the page downloads Pyxel and the Python runtime (about 15 MB), which takes a few seconds; after that the game shows a "click to start" prompt, and one more click starts it with sound. Nothing is loaded from other sites. Your best score in each mode is saved in this browser and kept when you close the tab. It is not shared between browsers or devices, and clearing the site's data erases it.

On the web we turned off the Q key that closes the game on the desktop, because on a web page it would only freeze the screen. To start over, reload the page.

Controls

Input Action
Left / Right arrows move the paddle
Space launch the ball; start a game from the menu
Enter pause and resume; also starts a game from the menu
Esc (while paused) back to the main screen
Up / Down (main screen) choose Normal or Endless
Gamepad d-pad, A, Start, Back the same, on a connected controller

A few things worth knowing

Where the ball hits the paddle decides where it goes. A hit near the edges sends the ball off at a shallow angle, a hit near the middle sends it up more steeply. Use that to aim at the last bricks of a level.

Pillars stay. In level 2 the pillars never break, so the level ends when all the coloured bricks are gone. Bounce the ball into the gaps between the pillars.

In Endless, keep the top clear. New rows push the wall down, so breaking bricks near the paddle matters more than chasing the highest ones.

Frequently asked questions

Is my best score saved? Yes, one for each mode, in this browser. It does not follow you to another browser or device.

Does it work on a phone? The game was made for a keyboard or a game pad. The page offers an on-screen pad on touch devices, but we have not tested the game with it.

Why does it say "click to start"? Browsers only allow sound after you interact with the page, so the Pyxel launcher asks for one click before it starts the game.

Is it free? Yes: Arkaway is free software under the GNU GPL, version 3, and the source code of this build is available from this page.

Credits and licence

Arkaway was made by Son Link (Alfonso Saavedra), the only author of the repository: the code, the maps and the resource file with the pixel art and the sound effects, in the Pyxel format. The game is free software under the GNU General Public License, version 3; the build served here changes only two things (the best scores are written to the browser's storage, and the Q key that quits is turned off), and its complete source code and the patch are hosted alongside the game. It runs on the Pyxel engine (MIT) and the Pyodide runtime (MPL-2.0), whose licences and source are linked from the Licenses page.