This Tetris game is a modern implementation of the classic puzzle game. Written in Go and leveraging the Ebiten 2D game library, it offers a customizable and enjoyable gaming experience. The game includes features such as rotating, moving, and speeding up tetrominos, as well as a debug mode for development purposes.
- Go (version 1.14 or later)
- Ebiten v2 library
- OpenType font package
- errgroup package (golang.org/x/sync/errgroup)
- X/Image font package (golang.org/x/image/font)
-
Clone the repository:
git clone [repository URL]
-
Navigate to the game directory:
cd [game directory]
-
Install dependencies:
go get -u github.com/hajimehoshi/ebiten/v2
The game configuration can be modified through the config.json file. This includes settings like font type, size, and game-specific parameters.
{
"Face": {
"size": 30,
"font": "RobotoLight"
},
"HistoryPlay": {
"highest": 0, # doesn't update yet
"you": 0 # doesn't update yet
}
}
Execute the following command in the game directory to run the game:
make run # run fairly sturdy portion of the game
make run-debug # run bugged portion of the game, hehe
make run-debug-ff # run bugged portion of the game, with some very-unstable featureflags
mostly TODO
- Basic Gameplay: Move, rotate, and speed up tetrominos as they fall.
- Scoring System: Earn points by clearing lines.
- Game Over: The game ends when tetrominos stack up to the top.
- Debug Mode: Run the game in a special debug mode for development and testing.
[game not complete]