Don't tread on me award

俺を踏みにじるな賞

受賞者:Cody Boone Ferguson

引用元:https://www.ioccc.org/2020/ferguson1/prog.c

審査員・作者による説明:https://www.ioccc.org/2020/ferguson1/index.html

動作

snake game

$ gcc -D_XOPEN_SOURCE -D_POSIX_C_SOURCE -D'f(a,b)'='((a)<(b)?(a):(b))' -DWALL='COLOR_CYAN' -DHEAD='COLOR_RED' -DBODY='COLOR_GREEN' -DWB='COLOR_BLACK' -DHB='COLOR_BLACK' -DBS='COLOR_BLACK' -DBG='COLOR_WHITE' -DBB='COLOR_BLACK' -o prog prog.c -lcurses

$ ./prog
プレイ画面
図:プレイ画面

<が蛇の頭(向きによってキャラクタが変わる)。上下左右で移動、スペースでポーズと再開、qで終了。 *が虫で、これを餌として集める。

解説

環境変数でいろいろな設定が可能。

ドキュメントがとんでもなく長い。

$ wc *.markdown COMPILING HACKING HISTORY README
   293   2657  14817 bugs.markdown
   170   1067   6293 chocolate-cake.markdown
   773   4555  34107 gameplay.markdown
    52    150   1161 judges.markdown
   773   4555  34107 remarks.markdown
   890   7762  42421 spoilers.markdown
   328   1955  11850 terminals.markdown
   409   3027  16822 troubleshooting.markdown
   595   4570  27663 COMPILING
   515   3643  20407 HACKING
   132   1543   8186 HISTORY
   148   1385   7640 README
  5078  36869 225474 total

コード形状は、遊んでいたらなんとなくできたパターンらしい。 全体の行数やブロックの行数が素数になっている。

賞名は、アメリカの昔の軍人クリストファー・ガズデンがデザインしたアメリカ軍旗(ガズデン旗)に基づく。