Skip to content

ZENODIUM/GameAble-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GameAble

gameable

GameAble is a desktop application that lets you control PC games using your body poses, detected in real time via your webcam. No keyboard or mouse required—just your moves! The app uses deep learning (CNNs) for pose recognition and can even generate custom models and preprocessing pipelines using Google Gemini AI.


Features

  • Modern, Green-Themed UI: Built with CustomTkinter for a clean, user-friendly experience.
  • Game Chatbot: Enter your game name and get suggested controls and pose mappings via Gemini.
  • Custom Pose Setup: Define any number of poses and map them to keyboard keys.
  • Image Capture: Collect training images for each pose using your webcam.
  • Flexible Model Training: Train a default CNN or generate a custom model and preprocessing pipeline with Gemini.
  • Smart AI Model: Gemini can generate a tailored CNN, preprocessing code, and hyperparameters based on your sample images.
  • Real-Time Prediction: Control your game live—your pose triggers the mapped key instantly.
  • Instructions & Help: Built-in instructions and tips, always accessible from the UI.
  • Branding: App title and logo displayed on all main pages.

How It Works

  1. Start the App:
    Launch the application. You’ll see the GameAble title, logo, and an instructions button.

  2. Game Chatbot (Optional):
    Enter your game name and click “Send” to get suggested controls and pose mappings from Gemini.

  3. Pose Setup:

    • Set the number of poses you want to use.
    • Assign a keyboard key to each pose (e.g., arrow keys, WASD, etc.).
    • Capture images for each pose using your webcam.
  4. Model Training:

    • Train the default CNN, or
    • Click “Smart AI Model” to let Gemini generate a custom model, preprocessing pipeline, and recommended hyperparameters based on your images.
  5. Live Prediction:

    • Start prediction mode.
    • The app will recognize your pose in real time and press/hold the mapped key in your game.
  6. Instructions:

    • Click the “Instructions” button at any time for a popup with detailed usage tips.

Requirements


Setup

  1. Clone this repository:

    git clone https://github.com/yourusername/gameable.git
    cd gameable
    
  2. Insert your Gemini API key:

    • Open key_controller.py.
    • Find the line:
      GEMINI_API_KEY = "YOUR_GEMINI_API_KEY_HERE"
    • Replace "YOUR_GEMINI_API_KEY_HERE" with your actual Gemini API key.
  3. Add your logo:

    • Place your logo image as logo.png in the same directory as key_controller.py.
  4. Run the app:

    python key_controller.py
    

How to Use

  1. Game Suggestions:

    • Enter your game name and click “Send” to get pose suggestions.
  2. Pose Setup:

    • Set the number of poses and assign keys.
    • Capture images for each pose.
  3. Model Training:

    • Train the default model, or use “Smart AI Model” for a Gemini-generated model and preprocessing.
  4. Prediction:

    • Click “Start Prediction” and control your game with your poses.
  5. Instructions:

    • Click the “Instructions” button for help at any time.

Notes

  • The Smart AI Model feature requires a valid Gemini API key and internet access.
  • All code and preprocessing generated by Gemini is dynamically imported and used for training and prediction.
  • The app is designed for flexibility—use it for any game and any set of poses.

Security

Important:
Your Gemini API key is sensitive. Do not share it publicly. For personal use, it is hardcoded in key_controller.py as per the project setup.


License

This project is for educational and personal use.
For commercial or redistribution inquiries, please contact the author.


Acknowledgments


Enjoy playing your favorite games with your own moves—GameAble!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages