A classic dice poker game available in both native Android and cross-platform Flutter versions, featuring Yahtzee-style gameplay with modern UI and score tracking capabilities.
- Classic Dice Poker Gameplay: Roll 5 dice and score combinations like Yahtzee
- Multiple Scoring Categories:
- Aces, Twos, Threes, Fours, Fives, Sixes
- 3 of a Kind, 4 of a Kind, Full House
- Small Straight, Large Straight
- Chance, 5 of a Kind (DiceX)
- Score Tracking: Save and export your game results
- Bonus System: Earn bonus points for high upper section scores
- Hold Feature: Keep specific dice between rolls
- Bilingual Support: English and Japanese language support
- Cross-Platform: Available as native Android and Flutter apps
Cross-platform version supporting Android, iOS, Web, and Desktop.
Original Android-only version with Java.
- Flutter SDK 3.9+
- Dart 3.0+
- Android Studio or VS Code with Flutter extensions
-
Clone the repository
git clone https://github.com/yourusername/droid_dicex.git cd droid_dicex/flutter_app -
Install dependencies
flutter pub get
-
Run the app
flutter run
- Android Studio Hedgehog or later
- Android SDK API 35 (Android 15)
- JDK 17 or 21 (LTS versions recommended)
- Gradle 8.9
-
Clone the repository
git clone https://github.com/yourusername/droid_dicex.git cd droid_dicex -
Open in Android Studio
- Launch Android Studio
- Select "Open an existing Android Studio project"
- Navigate to the cloned directory and select the
androidfolder
-
Build and Run
- Connect an Android device or start an emulator
- Click the "Run" button (green play icon) in Android Studio
- The app will install and launch on your device
# Navigate to Android project directory
cd droid_dicex/android
# Build the project
./gradlew build
# Install on connected device
./gradlew installDebug- Start a Game: Launch the app and begin a new game
- Roll the Dice: Tap "ROLL" to roll all 5 dice (3 chances per turn)
- Hold Dice: Check the "HOLD" boxes to keep specific dice between rolls
- Choose Score: Select a scoring category from the dropdown menu
- Enter Score: Tap "ENTER SCORE" to record your points
- Complete Game: Fill all 13 scoring categories to finish
- Bonus: Score 63+ in the upper section to earn a 35-point bonus
| Category | Description | Points |
|---|---|---|
| Aces-Sixes | Sum of dice showing that number | Sum of dice |
| 3 of a Kind | Three dice showing same number | Sum of all dice |
| 4 of a Kind | Four dice showing same number | Sum of all dice |
| Full House | Three of one, two of another | 25 points |
| Small Straight | Four consecutive numbers | 30 points |
| Large Straight | Five consecutive numbers | 40 points |
| Chance | Sum of all dice | Sum of all dice |
| 5 of a Kind | All five dice showing same number | 50 points |
- Language: Dart 3.0+
- Framework: Flutter 3.9+
- State Management: Provider
- Database: SQLite (sqflite)
- Localization: flutter_localizations with ARB files
- Language: Java 17
- Platform: Android (API 35, Android 15)
- Build Tools: Gradle 8.9, AGP 8.7.0
- Database: SQLite for score persistence
- UI: XML layouts with Java activities
droid_dicex/
โโโ flutter_app/ # Flutter cross-platform version
โ โโโ lib/
โ โ โโโ data/ # Data models and database
โ โ โโโ providers/ # State management
โ โ โโโ screens/ # UI screens
โ โ โโโ l10n/ # Localization files
โ โ โโโ main.dart
โ โโโ assets/images/ # Dice images
โโโ android/ # Native Android version
โ โโโ app/
โ โ โโโ src/main/
โ โ โ โโโ java/driod/dicex/
โ โ โ โ โโโ DriodDiceXActivity.java
โ โ โ โ โโโ DriodDiceXDBHelper.java
โ โ โ โ โโโ DriodDiceXScoreEntity.java
โ โ โ โโโ res/
โ โ โโโ build.gradle
โ โโโ build.gradle
โโโ README.md
- GameProvider: State management with game logic
- DatabaseHelper: SQLite operations for score storage
- GameScreen: Main game UI with dice, controls, and scoring
- Localization: English and Japanese support via ARB files
- DriodDiceXActivity: Main game logic and UI controller
- DriodDiceXDBHelper: SQLite database operations
- DriodDiceXScoreEntity: Score data model
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
yasupong - Initial work - GitHub Profile
- Inspired by the classic Yahtzee dice game
- Built with modern development best practices
- Uses MIT License for open source contribution
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue with detailed description
- Include device information and platform version
Enjoy playing DroidDiceX! ๐ฒ