New Version Uploaded (2/25/2008)

About

Qixl is a low-fi pixel-art game engine. Qixl games are written in lua. http://lua.org/

Qixl currently runs on Windows. It does not run under Wine. Ports to other OS'es are planned.

Download

To run the demo game. Run the include collide.bat file

Qixl with a demo game. Arrow keys to move.

You can use ALT+ENTER to run in fullscreen.

Beta Browser Plugin

Qixl Firefox Plugin. Put these DLL files into your "C:\Program Files\Mozilla Firefox\plugins" or equivalent directory.

Qixl Demo Game

Classes

qixl : This is a global class, you do not need to create it

pixel : This class holds RGBA values

synth : This class loads and plays .ptf song files .ptf files are created by TLDR

chip : This class loads and plays .sfs sound files .sfs files are created by SFXR

pixelmap : This class is a buffer of pixel data, It also can load in png files

save : This class provides persistent storage for your game

collide : This class provides a collision detection framework for your game

This is the most complicated class in Qixl. collide allows you to use your own tables as params. BUT the tables must have certain key entries.

 
player = {
	-- object location
	x = 0,
	y = 0,
	-- object velocity
	vx = 0,
	vy = 0,
	-- when this object hits something, does it bounce back?
	-- 0.0 being no bounce, 1.0 being bounces with no reduction in velocity
	rubber = 0.0,
	-- when an object is sitting on a surface this value is non-zero
	ground = 0.0,
	-- what graphic are we using for collision tests
	gfx = pixelmap:new(),
	-- defines the origin on the graphic, ie: 0,0 means top-left corner of the graphic
	-- ie: if you have an 11x11 graphic and you want to draw it centered on x,y.
	-- cx,cy would be 5,5
	cx = 0,
	cy = 0
}