Skip to content

A complete Tetris implementation in Rust, adhering to official guidelines (Super Rotation System, wall-kicks). Features singleplayer and local versus modes, memory efficient score tracking with .bin files, and customizable controls.

License

Notifications You must be signed in to change notification settings

paulo-granthon/rusty-tetris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unsafe forbidden

Rusty Tetris

A fully working implementation of Tetris in Rust following official guidelines, including the Super Rotation System that describes how the pieces should rotate and wall-kick.
Local Versus Mode to challenge friends on a 1v1 Tetris match.
Score system that tracks and saves the match history and the best scores to binary files.
Profile system capable of storing up to 16 different players by name to differentiate the scores generated during gameplay. Able to create, delete and rename profiles.
Settings screen to customize the controls for singleplayer and versus mode.

Try it out

  1. Download the latest release. Click here for direct download.
  2. Extract the .rar file
  3. Open "rusty_tetris.exe"

Screenshots

Title screen

Title

Single-player game

Single-player 1 Single-player 2

Versus mode

Versus mode

Game over

Game Over

Profiles

Profiles

Scores

Scores

Settings

Settings

Rebinding a key

Rebinding

Backlog

  • Single-player mode
  • Local versus Mode
  • Score history and best scores tracking
  • Persisting data with binary files
  • Profile system
  • Settings
  • Mouse support

References

Tetris - Wikipedia page
Super Rotation System - Rotation system guidelines
Random Generator - Pseudo-random piece sequence generator guidelines

Technologies

Rust - the programming language
doryen-rs - rendering library

About

A complete Tetris implementation in Rust, adhering to official guidelines (Super Rotation System, wall-kicks). Features singleplayer and local versus modes, memory efficient score tracking with .bin files, and customizable controls.

Topics

Resources

License

Stars

Watchers

Forks

Languages