Skip to main content

Sokoban and variants game engine

Project description

sokoenginepy is game engine for Sokoban and variants, written in Python and loaded with features:

  • implements game logic for Sokoban, Hexoban, Trioban and Octoban variants
    • supports Sokoban+ for all implemented variants
    • supports Multiban (muliple pushers on board) for all variants
  • reading and writing level collections
    • fully compatible with SokobanYASC .sok file format and variants (.xsb, .tsb, .hsb, .txt)
  • Optional C++ native bindings using pybind11 and Boost.Graph for ultimate speed

sokoenginepy was inspired by SokobanYASC, JSoko, MazezaM

Installing

Installing sokoenginepy should be as simple as

pip install sokoenginepy

There is optional C++ native extension that is built automatically with pip install if all dependencies are met. It relies on Boost.Graph and pybind11. Boost.Graph needs to be installed on system, everything else is pulled automatically:

sudo apt install python3-dev libboost-graph-dev

Using

Changelog

0.5.3 (2018-02-24)

  • Documentation and build fixes

0.5.2 (2017-09-03)

  • Improved native extension build cofiguration process.
  • Upgraded to pybind11 v2.2.0

0.5.1 (2017-08-31)

  • Switched from Boost.Python to pybind11 in C++ extension

0.5.0 (2017-08-25)

  • added optional C++ native extension (Boost.Graph, Boost.Python)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
sokoenginepy-0.5.3.tar.gz (1.6 MB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page