fabula - 0.8.1
Fabula is an Open Source Python Game Engine suitable for adventure, role-playing and strategy games and digital interactive storytelling.
Florian Berger
(fberger)
Fabula is an Open Source Python Game Engine suitable for adventure, role-playing and strategy games and digital interactive storytelling.
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.
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)
Fabula uses the clickndrag library under the hood for sprites, items, tiles and the GUI.
All 0.8.x releases of Fabula are alpha versions. They may not install cleanly, lack features, crash or set your pet on fire. Use at your own risk!
Please note that fabula needs Python 3 to run.
"Fabula" used to be called "Shard" before being released to the public in 2011.
Changes
Improved room and multiplayer handling on the server side.
In the Pygame client, the room scrolling amount is now based on the framerate. There now is a check for window focus before the window scrolls. The client now centers the room plane on the player Entity, while snapping the room to the display edges. Also, handling of DeleteEvent is finally implemented. When performing PickUp and Drop, all eight positions surrounding the player are considered now instead of just four.
The property window of the Pygame editor will display large entities correctly now.
Overall exception handling has been improved, Fabula exits cleanly upon an exception in most cases now.
Log file names now include the process id, making it possible to run parallel clients from the same directory without conflicts.
Lots of minor changes, fixes, cleanups, and a documentation update.