Skip to content

sohamdalwadi/king-of-diamonds-game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👑♦️ King of Diamonds - Android Edition

"Survival by numbers... or dissolve in digital Aqua Regia."
Kotlin Android Firebase Multiplayer Hazard

Android gameplay preview


📜 Table of Contents


🚀 Setup

Prerequisites

  • Android Studio Flamingo+
  • Firebase Project (for real-time multiplayer)
  • Kotlin 1.9+

Installation

git clone https://github.com/yourusername/king-of-diamonds-android.git
cd king-of-diamonds-android

# Add your firebase config to:
# app/src/main/res/values/secrets.xml

🎯 Game Rules

⚖️ Dynamic Penalty System

Players Rule Code Reference
5–4 Base logic (GameLogic.kt) calculateRound()
4 Duplicate check (AntiCheat.kt) validateNumbers()
3 Double penalty (PenaltySystem.kt) applySpecialPenalty()
2 0-vs-100 showdown (DuelMode.kt) resolveDuel()

Code Snippet (Rule Engine):

fun calculateTarget(numbers: List<Int>): Double {
    val validNumbers = if (playerCount == 4) filterDuplicates(numbers) else numbers
    return validNumbers.average() * 0.8
}

🏗️ Architecture

Tech Stack

pie
    title Layer Breakdown
    "UI (Jetpack Compose)" : 35
    "Game Logic (Pure Kotlin)" : 40
    "Firebase Realtime DB" : 25
Loading

Key Components

Module Purpose Symbolic Icon
AquaRegiaAnimator Tilt animation for elimination ⚗️
NumberValidator Detect duplicate/illegal inputs 🔍
LiveMatchmaker Firebase-powered multiplayer queues 🌐

🤝 Contribute

Contribution Map

journey
    title Contribution Path
    section For Developers
      Fork Repo: 5: AndroidDev
      Fix Issue: 4: Contributor
      PR Review: 3: Maintainer
    section For Designers
      UI Mockups: 5: Designer
      Animations: 4: Animator
Loading

How to Help:

  1. Report Bugs: File issues with 🐞 emoji + detailed logs
  2. Improve UI: Enhance Jetpack Compose screens in ui/
  3. Optimize Sync: Tackle FirebaseHelper.kt latency issues

Style Guide:

  • Use ViewModel for game state
  • Prefer Sealed Classes for game events
  • Max 2 Modifier chains in Compose

🧪 Roadmap

Priority Tasks

gantt
    title Android Development Timeline
    dateFormat  YYYY-MM-DD
    section Core
    Firebase Integration   :done, 2024-01-01, 15d
    Rule Engine            :active, 2024-02-01, 20d
    section Polish
    Aqua Regia Tilt Effect :2024-03-01, 10d
    Offline Mode           :2024-03-15, 14d
Loading

📜 License

MIT License - See LICENSE.
"Modify freely, but credit the alchemists!" 🔥


Built with ❤️ and viewModelScope by Soham

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published