Nodes/CrasH Utils/Tetris 🟦
ComfyUI Node

Tetris 🟦

Full block-stacking puzzle, no wiring required

By chrish-slingshotΒ·Created 3 years agoΒ·Updated about a month agoΒ· 15
Tetris 🟦

      Tetris in ComfyUI exists because someone asked for it in a comment thread and got it within a couple of days. When Snake Game went viral on r/StableDiffusion in October 2025, "and play tetris while you wait" and "tetris would be perfect" were among the first requests in the comments - and the author shipped it in the same rapid-fire spree that also produced Dino Game and DOOM.

      What it is

      A genuine, playable block-stacking Tetris implementation living entirely inside a ComfyUI node's canvas. Score, levels that ramp difficulty as you clear lines, and a next-piece preview - the real thing, not a stripped-down toy version. It makes sense Tetris was the first thing people asked for alongside Snake: it's the other classic that scales naturally to however long your render actually takes, unlike a fixed-length demo you'd finish before your queue does.

      How it works

      TetrisGame has no inputs and no outputs - it's a self-contained UI widget, not something that participates in your image pipeline. Drop it anywhere on your canvas, click in, and play while the rest of your workflow runs.

      Controls: Left/Right to move, Down for soft drop, Up to rotate, Space for a hard drop.

      Installing it

      ComfyUI Manager: search "CrasH Utils" and install. Manual:

      cd ComfyUI/custom_nodes/
      git clone https://github.com/chrish-slingshot/CrasHUtils.git
      

      Restart ComfyUI, then find "Tetris" under CrasH Utils/Games. No dependencies, nothing to download.

      Common issues

      Keys aren't moving pieces. Click the game canvas first - like every game node in this pack, it needs keyboard focus before it'll respond, otherwise your arrow keys and space bar are going wherever ComfyUI itself expects them.

      Game keeps eating my keystrokes when I click elsewhere to type a prompt. Click outside the node to release focus. It only intercepts your keyboard while actively focused.

      Next-piece preview looks cramped or isn't visible. The node's canvas size is user-resizable in ComfyUI, and a small/collapsed node won't have room to render the full layout comfortably - resize the node bigger if you want the preview panel to breathe.

      Score and level reset every time I reload ComfyUI. Expected - the game state lives in your browser tab, not on the server, so a page refresh starts you back at zero. It's not tracking anything persistently, by design.

      Does playing this cost me any generation time? No - it's a browser-side canvas game and shares nothing with your GPU or your actual render queue. Your workflow keeps chugging along regardless of how many lines you clear.

      Can I leave it running unattended while I step away? Sure - just be aware the game itself will sit paused (or top out and end) waiting on you, since nothing here auto-plays. It's meant to occupy your attention while you're actually watching the queue, not to run itself.

      CategoryCrasH Utils/Games

      Inputs (0)

      No inputs

      Outputs (0)

      No outputs