チェスの世界王者戦で不正が行われたのではないかとの疑惑がチェス界を激震させる中、インターネットの片隅で大人のおもちゃを振動させる試みが発足しました。

GitHub - RonSijm/ButtFish: Effortlessly transmitting Morse Code of chess moves to your butthole

https://github.com/RonSijm/ButtFish

チェス世界王者であるマグヌス・カールセン氏は2022年9月の対局で、わずか2手目で投了しました。この試合放棄について同氏は、対戦相手のハンス・ニーマン氏が不正行為をしていると考えていることが理由であるとの声明を発表しています。

チェス世界王者マグヌス・カールセンが対戦相手の不正疑惑について「もっと多く不正している」と声明を発表 - GIGAZINE



この一件を契機に、チェス愛好家の間では不正行為の方法についての議論が活発に行われており、そのうちの1つとして提唱されているのが「Sockfish」という手法です。これは、靴下にバイブレーターを仕込み、その震動を頼りに次の指し手を誰かに教えてもらうというものです。

この手法に可能性を見いだしたソフトウェアアーキテクトのRon Sijm氏が調査を進めたところ、大人のおもちゃの制御用ソフトウェアを開発するButtplug.ioというオープンソースプロジェクトが見つかりました。靴下にバイブレーターを仕込むSockfishと大人のおもちゃ用のコードを開発するButtplug.ioに触発されたSijm氏は、バイブレーターを使ったモールス信号でチェスのチートをすることを目指す「ButtFish(Buttはお尻の意)」というプロジェクトを立ち上げました。

なぜそんなことをしたのかについてSijm氏は、「お尻に何かを入れる」「チェスをプレイする」「プログラムを作れる」という3つの条件に合致するのは「選ばれし者」であるというベン図を持ち出して、「3つの分野すべてに興味を持つ『選ばれし者』がいなければ、このようなプロジェクトは存在しません。私は存在するべきだと思ったので、やることにしました」と力説しています。



ButtFishの基本的な仕組みはシンプルで、チェスの駒配置の表記法であるForsyth-Edwards Notation(FEN)から最善手を決定し、それをモールス信号に変換してからButtplug.io対応デバイスに送信するというものです。

Sijm氏は実際に、作成したコードがどのように機能するかのデモムービーも公開しています。

チェスの最善手をモールス信号で送るデバイス開発プロジェクト「ButtFish」のデモンストレーションムービー - YouTube

Sijm氏はButtplug.io対応デバイスを持っていないとのことで、画面の下半分には大人のおもちゃの代わりにスマートライトであるYeelightが映っています。上半分の画面には「rnb1kbnr/pppp1ppp/8/4p1q1/5P2/4PQ2/PPPP2PP/RNB1KBNR b KQkq - 2 3」とのFENコードが打ち込まれました。



これをChess.comのFENコード変換機能で盤面に再現すると以下のようになります。



この場合の黒のプレーヤーの最善手は「e5f4」、つまりe5にあるポーンでf4にある白のポーンを取ってしまうものだとのことで、ライトがモールス信号で「e5f4」となる「(e)・ (5)・・・・・ (f)・・−・ (4)・・・・−」と点滅しました。



このオープンソースプロジェクトを公開したSijm氏の元には、インターネットユーザーから「振動デバイスでテストしていないじゃないか」という指摘が届いたとのこと。

「プログラマーにはデバッグ用のアヒルのおもちゃが必要」だという言説、つまり机上に置いたアヒルのおもちゃに説明するつもりでコードを点検するとデバッグがはかどるという格言に基づいてSijm氏がテスト用デバイスを探したところ、ぴったりなおもちゃが見つかりました。



さっそくポチったというSijm氏は「私がこんなくだらないミームに熱心でラッキーでしたね。届いたらどうなったか報告します」と話しました。