A Sokoban puzzle game implementation written in Rust with SDL2 graphics.
sokoban-rs is a Rust implementation of the classic Sokoban puzzle game where players push boxes to target locations. It provides a complete game engine with graphics rendering, level loading from external files, and customizable display options. The project solves the need for a modern, performant Sokoban implementation that demonstrates Rust's game development capabilities.
Rust developers interested in game programming, educators teaching Rust through practical projects, and Sokoban enthusiasts looking for an open-source implementation.
Developers choose sokoban-rs for its clean Rust codebase, cross-platform compatibility through SDL2, and as a reference implementation for building 2D games in Rust. It provides a complete, working game rather than just a library or framework.
An implementation of Sokoban in Rust
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Showcases safe and efficient Rust programming with a clean codebase, serving as a practical learning resource for game development in Rust.
Uses SDL2 for rendering, ensuring compatibility across operating systems like Linux, macOS, and Windows with consistent performance.
Command-line arguments allow easy customization of window size and fullscreen mode, enhancing user experience without code changes.
Supports SLC (XML) files, enabling seamless integration with existing Sokoban level collections and custom level creation.
Requires users to download levels separately from external sources, which adds friction to getting started and playing immediately.
Manual installation of SDL2 development libraries is necessary, making setup more complex compared to pure Rust crates with automatic dependency management.
Lacks advanced features common in modern puzzle games, such as undo/redo functionality, save states, or a built-in level editor.