Sokoban-rs - Sokoban Game in Rust

Sokoban-rs is a Rust-based implementation of the classic Sokoban puzzle game, designed for both simplicity and customization. Developed by S├ębastien Watteau, this version of Sokoban allows players to enjoy the traditional gameplay with enhanced features and graphics options.

Sokoban-rs Screenshot Sokoban-rs Screenshot

Overview

Sokoban-rs brings the classic Sokoban game to the Rust programming language, providing a modern twist on the timeless puzzle experience. Players must move boxes to designated locations within a grid, navigating through increasingly complex levels. The game offers a straightforward yet challenging puzzle experience that has captivated players for decades.

Building Sokoban-rs

To build and run Sokoban-rs, you need to install the necessary development libraries for SDL2, which the game uses for graphics rendering. The libraries can be installed using the package manager for your operating system.

For Debian/Ubuntu:

sudo apt-get install libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev

For Mac OSX:

brew install sdl2 sdl2_image sdl2_ttf

Building the Game:

git clone https://github.com/swatteau/sokoban-rs
cd sokoban-rs
cargo build --release

Quick Start:

wget http://www.sourcecode.se/sokoban/download/microban.slc
cargo run --release -- microban.slc

Controls:

  • Arrow Keys: Move the player.
  • R: Retry the current level.
  • N: Skip the current level.

Graphics Options

By default, the game starts in a 1024x768 windowed mode. Players can customize the window's width and height or switch to fullscreen mode using the following options:

cargo run --release -- microban.slc --width=1920 --height=1080 --fullscreen

Credits

Sokoban-rs uses art from Planet Cute by Daniel Cook (Lostgarden.com) and Ruji's Handwriting Font by Ruji C. (rujic.net), adding a charming visual appeal to the classic puzzle gameplay.

For more details and to contribute to the project, visit the Sokoban-rs repository on GitHub.

Similar Projects

Rustfinity.com

Links

  1. Home
  2. Learn Rust
  3. Get Started
  4. Practice Rust
  5. Challenges
  6. Tutorials
  7. Blog
  8. Open source
  9. Learn Gleam

Socials

  1. GitHub
  2. X

Legal

  1. Privacy Policy
  2. Terms of Service