Board Games30
Role Playing40
Resource Directory
Code Gallery3
Help & Documents13
Depot Games: Wormlings

Current Version: 3.0

Project Status: Completed

Highest Popularity: #23 during November 2007

Links: Web Site

Category: Snakes

Developers: Daniel Schlyder

Number of Players: 4 (Split Screen)

Ports: Windows

Source Code: Available

Author's Description: Wormlings was originally written for the Allegro SizeHack 2000 competition. It's a multiplayer game similar to LightCycles/Tron, with 360 degree movement, turbo and stop powers, and bouncing balls of death. The game has no AI, so you need one to three friends to play. The goal in the competition was to write a game using no more than 10 KB for source (not counting whitespace and comments) and data files, so the game is very simple, but I think it's kinda fun in its simplicity.

I've only built a Windows binary, but it should be possible to compile it using GCC in Linux, BeOS, and QNX too.


Name Comments Size Date
wormlings-3.0-setup.exe Windows Binary 1,109,092 05/31/2007 8:29 PM
wormlings-3.0-source.tar.bz2 Source Code 626,060 05/31/2007 8:29 PM

What's New:

* Added music and sound effects.
* Added three second countdown to start of rounds.
* Fixed: Fails to load files if current working directory does not equal directory containing executable.
* Fixed: Scoreboard can be exited too fast if controls are pressed while it is about to be displayed.
* Some source cleaning.

* Won't use 100% CPU in "Configure game" and "Configure player names" menus and while playing.
* Minor build system improvements.
* Uses Allegro's WRITE3BYTES macro to possibly speed up 24 bit mode somewhat. (Yeah, I should have benchmarked it. :-))

Nothing of interest. Just released to update an e-mail address, but it also modifies the makefile's clean targets slightly.

* Using JPGalleg 2.3.

* Changed license to GPL.
* Added support for 24 and 32 bit colour depths and using desktop colour depth (seems to have a positive effect on framerate in Linux).
* Fixed: "Configure controls" and "Configure game" menus don't wait for key release before moving on to next setting.
* JPGAlleg 2.2's improved JPEG support allowed recompression of JPEGs, reducing combined size by 46.5 KB.
* Using Allegro 4.1.13.
* Provided Allegro is installed on the system, compiling optimised dynamically-linked version, on any system, should now be as easy as typing 'make'.
* Use plain MinGW instead of MSYS/MinGW on Windows.
* More makefile improvements/fixes.
* Old Allegro text API is used if linked against Allegro < 4.1.4.
* Bundled JPGAlleg 2.2.
* Takes advantage of 7-Zip support in latest Inno Setup versions, removing need to use ISTool.

* Using Allegro 4.1.12
* Distributed as graphical installer instead of zip archive (thanks to Inno Setup and ISTool)
* Fixed: tries to find non-existent *.h instead of *.hpp files.
* Changed optimization flags, removed UPX support and made other microscopic makefile changes.

* Possible values for most options tweaked, and options and values given user friendly names for display in menu.
* Replaced ball options with new option defining total, combined size of balls. A random number of balls of varying sizes will be created each round.
* Optimisations should give you a few more FPS.
* Added '--fullscreen' switch to complement '--windowed'.
* [Source] Added support for profiling builds to makefile. New environment variable, BUILD, controls type of build (debug, release, or profiling).
* Some other tweaks.

* New options: Wormling slow growth and max length. (Set max length to 0 to play with infinite length like in previous versions.)
* Upgraded JPGalleg to 2.x; This allows slightly better compressed graphics, reducing size of distribution archives by ~20 KB.
* [Windows binary] Upgraded Allegro to 4.1.11.
* [Source] Fixed "deprecated" warnings.
* [Source] Miscellaneous improvements to Makefile. Please read updated instructions in Makefile!
* [Source] Various minor tweaks, including replacing tabs with 4 spaces throughout.
* [BeOS] Fixed crash caused by switch-in event during start-up (Might also have affected other ports)
* Using less CPU time when in menus or paused
* HTML-ified documentation
* Added --windowed as an alternative to -w
* [Source] Made it compile cleanly with MinGW 2.0.0 (i.e. GCC 3.2)

* added crude menu with options to configure game settings, player controls, and player names, and switch between fullscreen and windowed graphics modes
* added nice background texture and logo stored as JPEG and loaded using JPGalleg by Angelo Mottola
* power levels displayed as horizontal bars instead of text, and drawn translucent to not hide wormlings or balls that might be underneath
* power regained twice as fast, and at a minimum of 2 points per second
* improved scoreboard
* divided source into multiple files, rewrote some parts, cleaned up others, and added more comments. The changes are too numerous to mention, but mostly cosmetic
* wrote a much better makefile that adds supports for QNX, BeOS, and Unix/ Linux (only tested with MinGW though)
* maximum size of balls increased to 20 (just don't play with maximum number of balls at maximum size cause that will really slow the game down!)
* balls start twice as far away from players' starting positions
* tries to launch game in 15-bit graphics mode if 16 bit fails
* supports task switching
* some optimisations (most importantly, using bmp->line array instead of putpixel()/getpixel())
* fixed unused parameter `struct BITMAP * bmp' compile warnings
* screen-shot format changed to TGA
* added program icon to BeOS and Windows versions
* fixed problem with trying to unpause game using 'P' key
* modified copyright notice and disclaimer in README, and added credits section
* using new version numbering system: major.minor.micro

Public Opinion
Overall Rating: 8.4
  • 6Its ok. Playable
  • 82.4.1: Seems like a very fun multiplayer game but really needs some finishing touches. There's no sound, music or AI and the menus aren't the best in the world. Also some of the gfx could be better (the pink balls, fonts, etc.) Bottom line: slightly above average...
  • 82.4.1: Nice snake clone. Floating balls are a nice twist to an old classic. This game would get 5 stars if it had AI and cool music.
The Developer
Daniel Schlyder
Daniel SchlyderNo bio given. (View Profile)