All Projects → Driftwood2D → Driftwood

Driftwood2D / Driftwood

Licence: MIT license
Driftwood 2D Tiling Game Engine and Development Suite

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Driftwood

ffi-sdl
PHP FFI SDL bindings
Stars: ✭ 23 (+0%)
Mutual labels:  sdl, sdl2
Berry
Berry is a simple Tiled Map Loader for Corona SDK.
Stars: ✭ 16 (-30.43%)
Mutual labels:  tile, tiled
Div Games Studio
Complete cross platform games development package, originally for DOS but now available on modern platforms.
Stars: ✭ 168 (+630.43%)
Mutual labels:  sdl, sdl2
Supertux
SuperTux source code
Stars: ✭ 1,120 (+4769.57%)
Mutual labels:  sdl, sdl2
TileGameToolkit
A set of libraries and tools for quick development of pseudo 8-bit games in C++ or C#
Stars: ✭ 20 (-13.04%)
Mutual labels:  tile, tile-engine
Xray 16
Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World. Join OpenXRay! ;)
Stars: ✭ 1,806 (+7752.17%)
Mutual labels:  sdl, sdl2
RawSalmonEngine
A game engine utilising "Tiled" map files
Stars: ✭ 15 (-34.78%)
Mutual labels:  sdl2, tiled
Libsdl2pp
C++11 bindings/wrapper for SDL2
Stars: ✭ 385 (+1573.91%)
Mutual labels:  sdl, sdl2
tuile
Tuile (french for tile) is a 2D graphics engine inspired from old hardware and based on layers, tiles sets, tile maps and sprites. Its scanline rendering pipeline makes it perfect for raster effects.
Stars: ✭ 19 (-17.39%)
Mutual labels:  tile, tiled
Protobuf-Dreamer
A tiled DeepDream project for creating any size of image, on both CPU and GPU
Stars: ✭ 39 (+69.57%)
Mutual labels:  tile, tiled
Sdl kitchensink
A Simple SDL2 / FFmpeg library for audio/video playback written in C99
Stars: ✭ 53 (+130.43%)
Mutual labels:  sdl, sdl2
gnuboy
latest version of original laguna source, with a handful fixes for modern compilers and systems
Stars: ✭ 70 (+204.35%)
Mutual labels:  sdl, sdl2
Chocolate Doom
Chocolate Doom is a Doom source port that is minimalist and historically accurate.
Stars: ✭ 1,052 (+4473.91%)
Mutual labels:  sdl, sdl2
Ffmpeg Video Player
An FFmpeg and SDL Tutorial.
Stars: ✭ 149 (+547.83%)
Mutual labels:  sdl, sdl2
Fortran Sdl2
Fortran 2008 interface bindings to SDL 2.0
Stars: ✭ 18 (-21.74%)
Mutual labels:  sdl, sdl2
Gwork
Skinnable GUI with useful widget collection. Fork of GWEN.
Stars: ✭ 179 (+678.26%)
Mutual labels:  sdl, sdl2
Anese
Another NES Emulator - written for fun & learning - first implementation of wideNES
Stars: ✭ 323 (+1304.35%)
Mutual labels:  sdl, sdl2
Doomretro
The classic, refined DOOM source port. For Windows PC.
Stars: ✭ 349 (+1417.39%)
Mutual labels:  sdl, sdl2
Haskanoid
A breakout game in Haskell using SDL and FRP, with Wiimote and Kinect support.
Stars: ✭ 242 (+952.17%)
Mutual labels:  sdl, sdl2
nox-decomp
Unofficial Nox (2000) port to Linux using decompiled code from https://playnox.xyz
Stars: ✭ 21 (-8.7%)
Mutual labels:  sdl, sdl2

Driftwood 2D

  • Copyright (c) 2014-2017 Michael D. Reiley and Paul Merrill
  • Released under the MIT license.

Driftwood 2D with Tiled and Console

The Driftwood 2D Tiling Game Engine and 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.

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
  • Graphical occlusion
  • Lazy map loading
  • Rudimentary database for saving data between plays
  • Simple widgets with TTF font support
  • Powerful entity and widget description in JSON with Jinja2
  • Fully scriptable in Python 3
  • Developer console accessible during runtime

...and more on the way!

Requirements

Running

On Linux releases prior to Alpha-0.0.11, the source release contains everything necessary. Simply run make in the top directory, and if all of your prerequisites are installed and the make completes sucessfully, you can run bin/driftwood from the top directory to start the engine.

On Linux releases Alpha-0.0.11 and afterwards, the project has been split into subdirectories, which are not included in the source release zip. Instead, you can download the Linux binary release, and just run ./driftwood in the top directory. For the source release, you must run git submodule init and git submodule update in the top directory, and then you can run make and bin/driftwood like before.

On Windows, simply download the Windows binary release and run Driftwood.exe in the top directory, either through the command line or by double clicking. The Windows binary release ships with all of its prerequisites, so it should just work. Alternatively you can download the source release and run the Driftwood.bat batch file, assuming you have installed all of the prerequisites manually.

On all releases, running the driftwood executable with the --help option will present a list of command line options. You can select a game from the data directory by running with --path game-directory-name.

A Linux binary release is made from source by running make release, and is placed in the newly created release/ directory. Making Windows binaries is not currently documented, but we make them using using pyinstaller.

For development testing, you can run python3 src from the top directory to run the engine from source without compiling.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].