The OLPC Wiki is Locked - Make a Donation to OLPC


Jump to: navigation, search

This project has been discontinued, instead check EvilToys game

--Atphalix 12:00, 10 February 2012 (UTC)
ABC Cube

.xo bundle

  • Project
    • Name: ABC Cube
    • Project Number: #39624
  • Description: ABC Cube is a 3D FPS educational game for learning numbers and alphabet based on Quake 1 engine.

The game consists of shooting cubes with letters/numbers on them and every time the player shoots one he hears the sound of the letter or the number which helps in memorizing it. The technical challenge of this project is to overcome the physical/hardware limitations of the xo laptop hardware (no OpenGL hardware 3D acceleration) to make a true 3D game with software rendering only. the quake1 game engine was chosen for it's ease of modification and for its network capabilities that would make the project usable as a base for making other kind of innovative 3D games and activities for the laptop. As a matter of fact, success in bringing the 3D to the XO through software rendering would be a great proof of concept as well as a base to start other 3D appliances upon the technical foundations of abcube.

  • Status
    • 70% completed
    • 1 Laptop requested for 3 months for testing purpose.(approved)
    • Project homepage: [1]

I received the laptop and did some testing: the quake 1 game work as expected at 800x600 but it get slower with the full resolution of the xo (1200x900). I'm working on that problem now, I'll post some screen shots soon.--Atphalix 15:22, 18 June 2009 (UTC)

How to install Quake bundle

This file is for testing only, USE AT YOUR OWN RISK !!

Click .xo bundle to download the original Quake game packaged for the xo. Then install the activity as usual.

How to play Quake in fullscreen

In order to play the game in fullscreen and at a playable speed you need to lower the XO screen resolution from 1200x900 into 800x600. to do that the game use a script to switch the resolution on the fly to 800x600 while playing the game and then back to 1200x900 when you quit the activity. First you'll need to install the latest driver using:

rpm -vU

then run those commands, that will add a new 800x600 screen resolution you can also add this commands to .xinitrc file so they will be run each time you boot

xrandr --newmode 800x600 0 800 0 0 0 600 0 0 0
xrandr --addmode default 800x600

and then launch the activity.

Get the source code (for Developers)

First you will need to install some packages to compile (it's better to do those steps outside of our xo laptop as to save space, as they are going to download a bunch of packages):

yum install subversion
yum install make
yum install gcc
yum install SDL-devel

and checkout the main repository with:

svn checkout quake
cd quake/sdlquake-1.0.9 && ./configure && make
cd ..
./makebundle # to generate a .xo file

and just copy the .xo file to your xo laptop, install it like any other activity.


Don't post your questions on this wiki page, you can use the discussion page for that or better use the forum thread on olpcnews.That way if there is a solution it will benefit everyone.


Project progress

Finnaly the original quake1 game demo is running at fullscreen on the laptop! latest screenshots are on flickr and video on youtube

Early Video of Quake 1 played on the XO-1


Video of Quake 2 played on the XO-1


EvilToys: 3D Mine Risk education game on the XO-1 (final version)

--Atphalix 10:38, 31 August 2012 (UTC) <youtube>hzURnagB-d8</youtube>

  • Contact
    • Name: Ahmed Mansour
    • Contact:
    • Country: Salé, Morocco
    • Time zone:‭ ‬UTC