mass - a game without bitmaps (http://mass.sourceforge.net) It is not really a game yet, but you can move around with the arrow keys, eat the red dots, and watch the masses. Just starting should work, for further options try './mass --help', or read the file CONFIG (windows users: config.txt). There are some more test levels in data/*.mas if you are bored. You can display mass in two dimensions using SDL (what I initially wanted) or in 3D using OpenGL (contributed by Laurenz Gamper). If OpenGL is available you start in 2D mode, press F10 to switch. Default keys: left player left up player up right player right down player down space player button 1 left alt player button 2 f toggle fullscreen escape exit pause pause the game return when paused, step by one frame f10 switch between 2D and 3D graphics page up 3D look up page down 3D look down home 3D zoom in end 3D zoom out delete 3D less details (faster) insert 3D more details (slower) f3 3D toggle wire mode (see config too) f2 enable DEBUG and EDIT mode insert EDIT grow mass height at mouse cursor delete EDIT shrink mass height at mouse cursor end EDIT remove mass immediately at mouse cursor page up EDIT make the mass faster at mouse cursor page down EDIT slow the mass down at mouse cursor z EDIT set speed = 0 and wakeOnPlayer = true h EDIT turn mass heading clockwise 1 EDIT place a new mass of type 1 at mouse cursor 2 EDIT place a new mass of type 2 at mouse cursor 3 EDIT place a new mass of type 3 at mouse cursor 4 EDIT place a new mass of type 4 at mouse cursor 5 EDIT place a new mass of type 5 at mouse cursor 6 EDIT place a new mass of type 6 at mouse cursor 7 EDIT place a new mass of type 7 at mouse cursor 8 EDIT place a new mass of type 8 at mouse cursor 9 EDIT place a new mass of type 9 at mouse cursor f11 EDIT save game now, filename save.mas [+] DEBUG zoom mass profile in [-] DEBUG zoom mass profile out f3 DEBUG cycle display mode f4 DEBUG show maxRect a DEBUG scroll visible area left w DEBUG scroll visible area up d DEBUG scroll visible area right s DEBUG scroll visible area down f9 DEBUG print some statistics to stdout f8 DEBUG hold traces of particles while pressed f12 DEBUG does something, don't hit in network game Level files: There is a textual language to set mass and game attributes. Details are documented in LEVELS. The current way to "create" a level is to first set up some mass classes, use the EDIT features to place them in a game and finally produce a savegame. Network support: Start two clients on my (hopefully running) server with ./mass --server old.homeip.net They will download the default map from the server and then play directly (no server relay) via UDP. Or start your own server with ./mass-server.py somewhere and make sure all clients can connect to TCP/UDP port 3223 there (it needs python and twisted installed). Optimizations: 2% gcc-2.95 instead of gcc-3.3.3 2% -O3 instead of -O2 1% branch probability guesses And maybe try SDL+DGA instead of SDL+X11. Debugging: Look at the DEBUG mode in the CONFIG file. To reproduce a crash, try the replay (mass.rep, rename it). Or save the game (F11) that does something wicked and edit the savegame to eliminate everything else. Of course every kind feedback is welcome. Share your thoughts, feature requests, levels, ideas, patches, flames... - Martin Renold (there is also a mailing list, see sourceforge page)