Features

  • client-server architecture
  • event-based protocol
  • multiplayer and networking capabilites
  • multi-threaded server
  • abstract, visualisation-agnostic model of a game world
  • asset manager
  • plugin system
  • recording and playback of gameplay
  • well-documented code
  • runs on Linux and MS Windows (it should work on OS X, too, but this has not yet been tested).

Technology

Unter the hood of Fabula there are:

  • Python, a remarkably powerful dynamic programming language
  • Pygame, a set of Python modules designed for writing games, based on SDL, a cross-platform multimedia library
  • planes, a hierarchical surface framework for PyGame

To create binary packages, Fabula uses cx_Freeze, a cross platform set of scripts and modules for freezing Python scripts into executables.

Fabula has been coded using Editra, a multi-platform text editor.