{"id":30626516,"url":"https://github.com/etruxton/arcvde","last_synced_at":"2026-05-03T22:33:46.529Z","repository":{"id":310916082,"uuid":"1031442248","full_name":"etruxton/arcvde","owner":"etruxton","description":"ARCVDE: My current passion project! A platform hosting arcade games, controlled by real-time hand tracking and finger gun gestures using OpenCV and MediaPipe.","archived":false,"fork":false,"pushed_at":"2025-12-22T23:36:54.000Z","size":57194,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-24T08:43:06.391Z","etag":null,"topics":["arcade-games","computer-vision","cv","finger-gun","gaming","gesture-recognition","hand-gesture","hand-tracking","interactive","mediapipe","no-controller","opencv","pygame","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/etruxton.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-03T18:42:27.000Z","updated_at":"2025-12-22T23:36:58.000Z","dependencies_parsed_at":"2025-08-21T02:35:16.042Z","dependency_job_id":"3d0d8427-1c55-47af-a8e2-f9f3867631a8","html_url":"https://github.com/etruxton/arcvde","commit_stats":null,"previous_names":["etruxton/arcvde"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/etruxton/arcvde","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etruxton%2Farcvde","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etruxton%2Farcvde/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etruxton%2Farcvde/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etruxton%2Farcvde/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/etruxton","download_url":"https://codeload.github.com/etruxton/arcvde/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etruxton%2Farcvde/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32587819,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"ssl_error","status_checked_at":"2026-05-03T22:09:10.534Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arcade-games","computer-vision","cv","finger-gun","gaming","gesture-recognition","hand-gesture","hand-tracking","interactive","mediapipe","no-controller","opencv","pygame","python"],"created_at":"2025-08-30T19:01:49.709Z","updated_at":"2026-05-03T22:33:46.522Z","avatar_url":"https://github.com/etruxton.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ARCVDE\n\n![ARCVDE Logo](assets/arCVde-3.png)\n\n\u003e **About the name**: \"ARCVDE\" is a playful pun on \"ARCADE\" - because this project will host a collection of arcade-style games powered by **CV** (Computer Vision)! 👀\n\nA real-time hand gesture recognition game where you use your finger gun to shoot targets and battle waves of enemies! This project combines OpenCV hand tracking with Pygame to create interactive shooting games controlled by your hand movements.\n\n**What is OpenCV?** OpenCV (Open Source Computer Vision Library) is a powerful library that provides tools for image processing, computer vision, and machine learning. In ARCVDE, we use OpenCV with MediaPipe to track your hand movements in real-time, turning your fingers into game controllers!\n\n## Features\n\n- **Five Game Modes:**\n  - **Target Practice** - Classic target shooting with score tracking\n  - **Doomsday** - Battle waves of approaching enemies in a doom-style survival game\n  - **Capybara Hunt** - Save adorable capybaras by popping their balloons in this Duck Hunt-inspired mode\n  - **Blinky Bird** - Cyberpunk-themed blink-controlled Flappy Bird clone\n  - **Frog Feast** - Galaga-style bug-catching game controlled by pointing\n- **Real-time hand tracking** using MediaPipe with enhanced gesture detection\n- **Multi-mode detection system** that works even when pointing directly at the camera\n- **Interactive tutorial** showing how to play\n- **Visual feedback** showing detection mode and confidence\n- **Debug console** for testing (accessible in Doomsday and Capybara Hunt modes when paused)\n\n## How It Works\n\nARCVDE uses three different control schemes depending on the game mode:\n\n**Point and Shoot** — Make a finger gun gesture (index finger extended, thumb up) to aim, then flick your thumb down to shoot. Used in the Main Menu, Target Practice, Doomsday, and Capybara Hunt.\n\n**Pointing** — Point with your index finger to control horizontal movement. Used in Frog Feast.\n\n**Blinking** — Blink to trigger actions. Used in Blinky Bird to flap.\n\n### Game Modes\n\n#### Target Practice\nClassic shooting range experience. Aim with your finger gun and shoot targets before they disappear to test your accuracy and speed.\n\n![Target Practice Demo](assets/demo_gifs/target-practice-gif-800.gif)\n\n#### Doomsday\nBattle waves of zombies, demons, skulls, and giants across four themed stages—from urban decay to full apocalypse. Features a combo system, health management, and dynamic weather effects.\n\n![Doomsday Demo](assets/demo_gifs/doomsday-gif-800-2.gif)\n\n![Doomsday Demo](assets/demo_gifs/doomsday-gif-800-1.gif)\n\n#### Capybara Hunt\nA wholesome, Duck Hunt-inspired mode where you must shoot balloons to save adorable capybaras. Careful - don't hit the capybaras! \n\n![Capybara Hunt Demo](assets/demo_gifs/capybara-hunt-800.gif)\n\n#### Blinky Bird\nA Flappy Bird-inspired mode where you navigate a cyberpunk cityscape by controlling your bird using only your blinks. Adaptive blink detection works with or without glasses. \n\n![Blinky Bird Demo](assets/demo_gifs/blinky-bird-800.gif)\n\n#### Frog Feast\nGalaga-inspired bug catching! Point to move your frog across a moonlit pond while its tongue auto-fires at flies, mosquitoes, beetles, wasps, and the spider boss.\n\n![Frog Feast Demo](assets/demo_gifs/frog-feast-800.gif)\n\n## Installation\n\n### Prerequisites\n- **Python 3.7+** - Download from [python.org](https://www.python.org/downloads/)\n- **pip** - Usually included with Python installation\n- Webcam\n\n### Steps\n1. Clone this repository\n2. Create a virtual environment (recommended):\n   ```bash\n   python -m venv .venv\n   source .venv/bin/activate  # On Windows: .venv\\Scripts\\activate\n   ```\n3. Install dependencies:\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n## Usage\n\n### Run the Game\n```bash\npython main.py\n```\n\nThe game will start with a main menu where you can:\n- **TARGET PRACTICE** - Classic target shooting game\n- **DOOMSDAY** - Battle waves of enemies in survival mode\n- **CAPYBARA HUNT** - Save capybaras by popping their balloons\n- **BLINKY BIRD** - Navigate through cyberpunk cityscape with blinks\n- **FROG FEAST** - Catch bugs with your frog's tongue\n- **HOW TO PLAY** - View detailed instructions\n- **SETTINGS** - Configure camera and other options\n- **QUIT** - Exit the game\n\n### Menu Controls\n- **Navigate**: Mouse clicks or shoot at buttons with finger gun\n- **Keyboard shortcuts**: 1 for Doomsday, 2 for Capybara Hunt, 3 for Blinky Bird, 4 for Target Practice\n\n## Settings \u0026 Configuration\n\n### Camera Settings\n- Access via Settings menu\n- Test different cameras before applying\n- Automatic detection of available cameras\n- Live preview of selected camera\n\n## Tips for Best Results\n\n1. **Lighting**: Ensure good lighting for better hand detection\n2. **Distance**: Position yourself 2-3 feet from the camera\n3. **Hand Position**: For standard mode, hold hand at slight angle to camera\n4. **Pointing at Camera**: The enhanced version automatically switches to depth mode\n5. **Camera Selection**: Try different cameras in Settings if tracking is poor\n\n## Troubleshooting\n\n**Camera Issues:**\n- Try different camera IDs in Settings\n- Ensure camera isn't being used by other applications\n- Check camera permissions\n\n**Performance Issues:**\n- Close other applications using the camera\n- Reduce screen resolution in constants.py\n- Try different MediaPipe model complexity settings\n\n**Hand Tracking Issues:**\n- Ensure good lighting\n- Try different detection modes\n- Adjust distance from camera\n- Check the How To Play tutorial\n\n## Future Enhancements\n\nPlanned improvements to Doomsday include:\n- ~~Stage Transitions~~ ✅ **DONE!**\n- Sound effects and music for both game modes\n- More enemy types and boss battles\n- Power-ups and special abilities (rapid fire, explosive shots)\n- Custom hand gesture training for different weapons\n- More stage themes and environmental hazards\n- Weapon upgrades and progression system\n\nPlanned improvements to Capybara Hunt include:\n- Enemy that you need to shoot to protect the capybara\n- ~~Silly reactions by the pond buddy~~ ✅ **DONE!**\n- More animations\n- Difficulty settings\n- More themes and backgrounds\n\nPlanned improvements to Blinky Bird include:\n- ~~Synthwave music for cyberpunk atmosphere~~ ✅ **DONE!**\n- Sound effects for flaps and collisions\n- Multiple cyber-bird designs and unlockable skins\n- Power-ups triggered by special blink patterns (double blink for boost)\n- Different cyberpunk environments (rainy nights, neon districts, space stations)\n\nPlanned additions to ARCVDE:\n- ~~Capybara Hunt - like duck hunt but you shoot capybaras? or something around them~~ ✅ **DONE! Cabypara Hunt where you shoot balloons carrying capy's**\n- ~~Galaga style game where you control the character with where you point~~ ✅ **DONE! Frog Feast - catch bugs with a hungry frog**\n- PacMan or Snake style game where you control player with where you point ?\n- ~~Flappy Bird where you control the bird by clapping. Clappy Bird! 👏~~ ✅ **DONE! Blinky Bird uses blinks instead**\n- Angry Birds style game where you physically pinch and real back the bird to shoot it at a tower of blocks\n- maybe moreeeee\n\n## Credits\n\n### Art Assets\n\n#### Capybara Hunt Mode\n- **Capybara Sprites**: \"Simple Capybara Sprite Sheet\" by Rainloaf\n  - Source: https://rainloaf.itch.io/capybara-sprite-sheet\n  - License: Free to use in commercial/non-commercial projects with credit to Rainloaf\n\n### Music\n- **Menu/Target Practice Music**: \"Somewhere in the Elevator\" by Peachtea\n  - Source: https://opengameart.org/content/somewhere-in-the-elevator\n  - License: CC-BY 3.0\n\n#### Capybara Hunt Music\n- **Background Music**: \"Day \u0026 Night in Summerset\" by edwinnington\n  - Source: https://opengameart.org/content/day-night-in-summerset\n  - License: CC-BY 3.0\n\n#### Doomsday Mode Stage Music\n- **Stage 1**: \"Boss Battle 3 Alternate (8-bit)\" by nene\n  - Source: https://opengameart.org/content/boss-battle-3-alternate-8-bit\n  - License: CC0 (Public Domain)\n\n- **Stage 2**: \"Boss Battle 4 (8-bit) - Re-upload\" by nene\n  - Source: https://opengameart.org/content/boss-battle-4-8-bit-re-upload\n  - License: CC0 (Public Domain)\n\n- **Stage 3**: \"Boss Battle 6 (8-bit)\" by nene\n  - Source: https://opengameart.org/content/boss-battle-6-8-bit\n  - License: CC0 (Public Domain)\n\n- **Stage 4+**: \"Boss Battle 8 Retro\" by nene (alternating tracks)\n  - Source: https://opengameart.org/content/boss-battle-8-retro\n  - License: CC0 (Public Domain)\n\n- **Stage 4+ Metal**: \"Boss Battle 8 Metal\" by nene (third alternating track)\n  - Source: https://opengameart.org/content/boss-battle-8-metal\n  - License: CC0 (Public Domain)\n\n#### Blinky Bird Music\n- **Background Music**: \"Happy/melancholic synth + bells song | Adaptive layers pack\" by 3xBlast\n  - Source: https://opengameart.org/content/happymelancholic-synth-bells-song-adaptive-layers-pack\n  - License: CC-BY 3.0\n\n#### Frog Feast Music\n- **Background Music**: \"Apple Cider\" by Zane Little Music\n  - Source: https://opengameart.org/content/apple-cider-juiced\n  - License: CC0 (Public Domain)\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetruxton%2Farcvde","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fetruxton%2Farcvde","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetruxton%2Farcvde/lists"}