Fabula is an Open Source Python Game Engine suitable for role-playing, adventure and strategy games and digital interactive storytelling.
It offers a client-server architecture, an event-based protocol, multiplayer and networking capabilites, a multi-threaded server, an abstract, visualisation-agnostic model of a game world, an asset manager and a plugin system. Gameplay can be recorded and played back. The code is well documented and runs on Linux and MS Windows (it should work on OS X, too, but this has not yet been tested).
Fabula can be used as a library to develop your own games. As an alternative, you can use the Pygame-based graphical editor and the default game engine that come with fabula.
Installation
If you want to run the binary editor or game engine that come with fabula then just unzip the archive and run one of the files ending with ".exe".
Fabula uses the Python distutils module. If you want to install it as a library, running
python3 setup.py install
should do the job.
Product's homepage
Requirements:
· Python
· pygame
What's New in This Release: [ read full changelog ]
· This release makes server and client dis/reconnection much more reliable, adding ExitEvent and making the server more tolereant towards abrupt client exits. On the client side, the user will be warned when server replies take too long.
· Console and file log levels are hardwired now.
· The server will now listen on port '0xfab' (4011), and display a friendly interface on the console.
· PygameUserInterface now has an on-screen display which will display statistics upon F1.
· Lots of fixes and improvements, API changes in fabula.run, and a documentation update.