Because hackers too need to play with balls

How to play

There are 2 gameplay modes:

There are currently 2 level sets:

Bonuses:

Laser - helps with aiming. Lasts for 23 seconds.
Pause - stops the feed for current ball path for 10 seconds
SlowDown - slows down current path by 50% for 20 seconds
Reverse - pulls back 20 balls (excluded in survival mode)
Bomb - explodes 7 balls in front and behind (not in survival mode)

How levels work

All levels are listed in level sets. Currently, there are 2 of them:

The game will scan for *.set files during startup so if you add your own set, you have to restart.
The format:
line 1: Name of set
line 2: thumbnail image
(for every level)
	level_line 1: Name of level
	level_line 2: 
		coordinates       - lvl file
		background        - png or jpg
		overlay           - png (if not used, just add a comma)
		thumbnail
		music             - optional - if not given a random music will play
	level_line 3:
		*start feedrate    - feed rate at the start of level
		*end feedrate      - feed rate at the end
		*balls to draw     - how many balls in total will be drawn
		*balls from start  - how many balls will quickly fill the path to start with
		colours            - how many different ball colours there will be (2 - 16)
		time               - time to beat to get time bonus (in seconds)
		bonus_frequency    - the higher, the more bonuses will be drawn (1-100)
		                     -1 : use game default (which is 5 at the moment)
		kids mode          - (0/1) if set to 1:
		                        - the laser will always be on
		                        - bomb and reverse bonuses will draw more than once 
		*ball size         - 1.0 is standard, 2.0 is twice as big
		mirror x           - (0/1) mirror level horizontally
		mirror y           - (0/1) mirror level vertically

last line: -

* - these entries can have semicolon separated values for different paths
Example consisting of two levels:
Example set
level1_thumb.jpg
Messy Bedroom
level12.lvl, level12.jpg, level12_overlay.png,level12_thumb.jpg
1.5,2.5,120,10,5,300,10,0,1.0,1,1
Zatlantiz
level1.lvl, level1.jpg, ,level1_thumb.jpg
2,3,120,40,4,180,10,1,1.3,1,0
-

Editor

The game has a built-in (nightmarish) editor which can be invoked with arguments -e level_name. It will try to open whatever it finds of:

F1 will bring up a brief description of keys. While in test mode (press space), pressing F12 will save a nice screenshot which can be used as a thumbnail. Right mouse button adds a node in current path. Left button moves nodes and control points.
Remember to use power of two image sizes as they will be loaded as textures.

User data directory

If you create a directory called data in the users zaz directory, all files found there will be used together with files installed on your system. In case of name clash, user files will override the installed files. On unix-ish platforms the path to this directory will be:

~/.zaz/data
On windows-ish :) platforms, it depends on your version. There will be a .zaz folder in your application data.