/puyo-chain-detector

A real-time overlay for showing trigger points in Puyo chains. Useful for Twitch/YouTube streamers.

Primary LanguageC++MIT LicenseMIT

Puyo Chain Detector - v2

A real-time overlay for showing trigger points in Puyo chains. Useful for showing newbies how experts plan their chains.

Example of the overlay in use

Tools Used

For the tech recruiters who are actually looking at this GitHub page 😳

  • PyTorch - designing the color recognition MLP model
  • OpenCV - capture feed, image processing, DNN module for color recognition model
  • Qt6 - the desktop app GUI
  • Boost::Beast - C++ websocket server to send chain data to the BrowserSource
  • JS/Canvas API - drawing the number and color cursors on the BrowserSource

Installation and Set Up

  1. Download the latest version from the releases page.

  2. Extract the zip file and open PuyoChainDetector.exe. You should see a screen like this:

  1. I haven't implemented a way to autodetect capture cards yet; so instead, guess a Camera Index number in the field at the bottom and click Start Capture. Keep trying different numbers until your game shows up.

  1. The chain detector is now calculating your chains in the background. To view the results in an overlay, add overlay.html as a BrowserSource in OBS.

Recommended settings - Width: 1920px - Height: 1080px - FPS: 30

VirtualCam Workaround / Overlaying other people's videos

Old capture cards (e.g. Elgato HD60) won't show up as a compatible capture device in the chain detector settings. If you've tried a bunch of IDs and none of them work, you can try turning an OBS Scene into a virtual capture source.

  1. Install the OBS VirtualCam plugin from here: https://obsproject.com/forum/resources/obs-virtualcam.949/

  2. Right-click on a clean scene containing your video feed. Choose Filters

  1. Add a VirtualCam filter, then click Start

  1. Try some camera ID numbers again in the main app. One of them should be your virtualcamera source.