Alpha-0.0.11
Pre-releaseApart from a few smaller feature additions, this release is mostly about restructuring the project.
Two new API libraries were created -- Folkdance and Stageshow. Folkdance is a reference library which will mostly handle advanced entity-entity, entity-player, and entity/player-world interactions. Currently it contains an InventoryManager and a PlayerManager. Stageshow is a special effects and choreography library.
Stdlib was dissolved, some of its functions moved into the core engine and others into the aforementioned new libraries. In addition, the testing worlds, libraries, and documentation were split into submodules. Note that this means extra steps are necessary to collect everything together to build from source, so a Linux binary release is included. This release gives the Makefile the ability to generate releases.
There is now a __common__ directory inside the data directory. Libraries placed in this folder are automatically added to the data path at startup. Stdlib was initially moved from the source directory to here, but then it was replaced by Folkdance and Stageshow.
JSON schemas were consolidated into strings in a Python file to defeat a complication when building on Windows.
The underscore character is now a shortcut for accessing temporary variables in the engine. Instead of Driftwood.vars["variable"]
, you can now reference _["variable"]
.
It is now possible to append or prepend path segments to the config file's path from the command line, instead of only being able to replace it.
InputManager now has contexts, so that for example you can have different keybindings for menus than for player control.
Widget Tree handling was moved to the core engine, and resides in widgettree.py.
The engine now sets its working directory to the directory of the config file you are loading.
And of course, there were many bugfixes.