Well, I said back in
>>>/fg/91 when I announced the end of my Tsunagari game engine that if my new game engine ever surpassed it, I would make a new thread. I think that has actually happened a while ago. The new thread fits better in this board, which didn't exist when the other thread was made.
Progress is sporadic, but we're further than Tsunagari ever got, in far less time overall, and with clean and maintainable code. I present Driftwood 2D, a game development suite written in Python 3.
The Driftwood 2D Game Development Suite is a game engine and related set of tools designed for the purpose of allowing a novice to develop a fully featured tile-based 2D game. Driftwood 2D is currently undergoing heavy alpha-stage development and should not be considered stable. API changes will occur frequently at this stage. However, it is currently suitable for making very simple exploration-style games.
Driftwood 2D is a spiritual successor to Tsunagari, an engine in C++ with similar goals, which ran into irreconcilable design flaws and spaghettified to death. Tsunagari was abandoned soon after the creation of this engine.
The engine loads a world package made of images, sounds, maps, descriptive files, and scripts, and then passes itself to the scripts as an interface to its internal API. From there, the scripts in the world package interact with and control the engine to perform its functions, resulting in a playable game. All public functions in the engine are accessible through the scripts. Maps are designed in Tiled and saved in JSON format, and the engine config file and entity descriptor files are also written in JSON.
Current features include:
* Infinite graphical and walkable layers
* Resource caching
* Virtual filesystem for game data and patches, supporting zip files
* Tile and sprite animations
* Sound effects and music
* Configurable input handling
* Timed callbacks
* Lightmaps
* Rudimentary database for saving data between plays
* Fully scriptable in Python 3
…and more on the way!
Requirements:
* SDL2
* SDL2_image
* SDL2_mixer
* SDL2_ttf
* Python >= 3.3.3
* Python jsonschema (
https://pypi.python.org/pypi/jsonschema)
* Python PySDL2 (
https://pypi.python.org/pypi/PySDL2/)
Current release is Alpha-0.0.3a. This version is confirmed to run on Windows and Linux. The screenshots are from a couple different versions so some things look a little different.
GitHub:
https://github.com/seisatsu/DriftwoodDownload Current Release:
https://github.com/seisatsu/Driftwood/releases/tag/Alpha-0.0.3aThe engine doesn't have a manual written yet, but the code contains usage instructions for each API function, and much can be learned by looking through the test game data that comes with the download.