Built in Pure Python + Tkinter
๐ Introduction
It started as a small side project โ just a cheerful, nostalgic mini-game.
Thatโs how ๐ฒ Game 21 โ Cheburashka & Gena was born โ a cartoon-style dice game where you play against the famous Russian duo Cheburashka and Gena the Crocodile.
You roll dice, collect points, and watch cartoon faces react to your luck โ all made entirely in pure Python.
๐งฉ Gameplay
Roll dice to get as close to 21 points as possible โ
but if you go over, you lose!
Decide whether to roll again or stop, then watch your AI opponents โ Cheburashka and Gena โ take their turns automatically.
The one closest to 21 wins.
๐ผ๏ธ Features
๐ฎ Cartoon-styled interface
๐ต Procedural sound & music
๐ Local leaderboard (SQLite)
๐ Dynamic color themes
๐ฃ๏ธ English & Russian languages
Run it instantly:
python game21.py
GitHub โ github.com/renocmon-cloud/Game21_v8_1
Website โ belcantorest.me
๐จ Design & UI
A custom CartoonButton class makes Tkinter look alive โ rounded corners, shadows, gradient fills, and small โbounceโ animations.
No images โ everything is generated procedurally with Pillow.
Each theme (Sunny โ๏ธ, Ocean ๐, Mint ๐ฟ) has its own color palette, or you can let it switch automatically for variety.
๐ต Sound & Music
No sound files โ just math.
Python generates short WAVs for dice rolls and melodies using wave, math, and struct.
Itโs a tiny, built-in synthesizer ๐น
๐ง Lessons Learned
Tkinter can look modern with creativity
Procedural art and sound are pure joy
SQLite is perfect for small games
Simplicity can be surprisingly powerful
๐ฌ Conclusion
Game 21 โ Cheburashka & Gena is a love letter to simplicity and charm.
No frameworks, no assets โ just Python, imagination, and a bit of nostalgia.
Top comments (0)