Skip to content
A quine that plays snake over its own source!
Branch: master
Clone or download
Latest commit 2fce43c May 10, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE Update LICENSE Apr 27, 2019 Add note about TERM settings May 10, 2019
animation.gif Initial commit Apr 25, 2019
quinesnake-commented.cpp Initial commit Apr 25, 2019
quinesnake.cpp Initial commit Apr 25, 2019


A quine that plays snake over its own source!

quinesnake gif

How to run it

The program compiles itself; to run it first make the source file executable (chmod +x quinesnake.cpp), then run it with ./quinesnake.cpp. It invokes g++ on itself and then starts the game.

The snake is controlled with w, a, s and d.

Note: some people have reported issues where the snake and food appear black in their terminals. This is likely due to the value of the environments TERM variable. You can try run the program with:

TERM=xterm-256color ./quinesnake.cpp

This will tell curses that your terminal supports the high-intensity colour range used by quinesnake.


This is the quine version that also compiles itself and plays snake over its own source. It requires:

  • libcurses
  • Some binary called g++ needs to exist (tested with GCC and Clang)
  • /bin/ls needs to exist and be executable


This version of the program isn't a quine and doesn't compile itself, but it has all of the basic game-playing logic that the real version has, plus it's commented and readable.

You can’t perform that action at this time.