Furball Engine

Table of Contents


Furball Engine is actually a complete sourcecode for Frolicking Furballs Safari Resort. This game was written for Ludum Dare 19 competition in 48 hours ranking really good scores.

After that the code was cleaned up and documented without making further chages, so this is in fact an engine written in 48 hours. Basecode for this entry was my Ludum Dare 16 entry, Needlesoft Haystack Explorer. I took out entire code out of that leaving just a working OpenGL display with movable camera. On this base I created Frolicking Furballs Safari Resort. Commenting the code was done for it to serve as my show-off code while I was looking for a job. As I am an optimistic indie developer now, I have no use for this code.



Furball Engine source code and all the assets are yours to use for anything. Do whatever you want with it, but I'd love to be know if you are using it, so I can pump my ego with that. it's probably called public domain. I have no idea about licensing.


Dependencies 1

1All dependencies for Windows are contained within the compiler package.


  1. Unzip to your favourite code location
  2. Make sure there are no spaces in your code path
  3. Use MinGW 3.x package provided on this website2
  4. If you have your MinGW 4.x you would like to use, make sure you enable C89 mode
  5. MinGW should be unzipped to root directory, usually C:\MinGW (I use D:\MinGW)
  6. It's a good thing to add MinGW/bin to your PATH, but it is not required. Make sure you reboot your PC after adding stuff to system PATH or log out and log back in if you're adding it to user PATH (yeah, even Windows 7)
  7. Download and install Code::Blocks
  8. When it launches for the first time, select GNU GCC Compiler as default compiler, even if it is not autodetected.
  9. Double click on furballs.c or drag it to C::B toolbar if you didn't cxhange file associations./li>
  10. Go to menu Settings->Compiler and Dubugger settings->Toolchain executables tab and enter path to your MinGW, if it didn't autodetect
  11. Go to Linker Settings tab, and set up libs like this, keeping in mind that order is significant. GCC linker must have libraries ordered most dependent -> least dependent
  1. Open furballs.c
  2. Press F9
2I use MinGW 3.4.3 since it links against msvcrt.dll. Newer 4.x versions link against a proprietary gcc runtime library.


  1. Install following packages:
  2. Edit furballs.c code:
  3. // Remove these lines:
    #include <winalleg.h> // allegro vs windows redefinitions helper
    #include <windows.h>  // windows things
    // Change this line:
      while (!GetAsyncKeyState(VK_ESCAPE));
  4. Terminal into the engine directory
  5. Execute this:
3This game was meant to Windows and I'm too lazy to fix it now. However, few fixes will make it go. Also, all works fine on Wine.


Uhm... ugh.... erm....4

4 Works only on PowerPC




Furball Engine provides two flavours.

Hi-Fi flavour

Lo-Fi flavour



If you have any questions feel free to ask! Or jsut say Hi! © 2012 Sos Sosowski