韓国のインディーゲームイベント「2P GAME ARCADE」が、ゲーム全体を1,474,560バイト以下に収める「1.44MB GAME_DEV CONTEST」を開催している。募集は2026年5月23日に始まり、締切は9月4日だ。圧縮ファイルを小さく見せれば良い企画ではなく、解凍後の実行ファイルと必要なランタイムまで容量に数える。ところが1,474,560バイトは3.5インチHDフロッピーの全セクタ容量であり、通常のDOS形式でファイルに使える領域より16,896バイト大きい。レトロな外見の内側で、競技はエンジン、ファイルシステム、ホストOSにどこまで仕事を任せるかという設計問題にまで渡っている。
1,474,560バイトに実行ファイルとランタイムを詰める
公募規約が数えるのは、提出用アーカイブの圧縮後サイズではない。解凍したフォルダ全体を1,474,560バイト以下に抑える必要があり、実行ファイルに加えてランタイムも含まれる。ゲーム内でデータを圧縮することは認められるが、最終的にプレイできる一式が上限を超えてはならない。ブラウザゲームは対象外で、単独実行可能な作品を求めている。
エンジンに指定はなく、個人でもチームでも応募できる。ただし、対象は公募の公式発表後に新しく制作したオリジナル作品だ。規約は八つの項目にまとめられ、審査では完成しているか、容量を超えていないか、ゲームとして面白いかの三点を見る。容量削減の技術実演だけで評価が決まる設計ではない。
賞金は大賞が72万ウォン、金賞が28万ウォン、銀賞が14万4,000ウォンである。三賞の受賞者には、各作品を収録した記念ディスケットも贈られる。主催者は企画のモチーフとして、1997年にHitelのゲーム制作同好会が開いた「100Kbyteゲーム公募展」を挙げている。
2P GAME ARCADEは、協力と競争をテーマにしたインディーゲームイベントである。今回の公募でも、審査項目に技術の新奇さや圧縮率を独立して置かず、「面白いか」を明記した。小容量化は目的であると同時に、遊びを作るための制約として扱われている。
「1.44MB」とファイル利用領域の16,896バイト差
公式上限の1,474,560バイトは、数字としては正確だ。IBMのAIX文書が示す1.44MBディスクの構成は、両面、80シリンダ、1トラック当たり18セクタ、1セクタ当たり512バイトである。掛け合わせると、2×80×18×512=1,474,560バイトになる。
ただし、ディスクをDOSで通常利用するには、ディレクトリなどの管理領域が要る。Computer History Museumが所蔵する『Learning to Use DOS』の容量表は、1.44MBディスクの総容量を1,474,560バイト、ファイルに使える領域を1,457,664バイトとしている。
| 基準 | 容量 |
|---|---|
| 全セクタの総容量 | 1,474,560バイト |
| DOSでファイルに使える領域 | 1,457,664バイト |
| 差 | 16,896バイト |
したがって、上限ちょうどの作品一式は、通常のDOS形式でファイルとして保存すると1枚に収まらない。公募はGoogleフォームで受け付けており、物理ディスクへの書き込みやディスクからの起動を応募条件にしていない。ここでの「フロッピー1枚」は標準的な配布媒体を完全に再現する規則ではなく、媒体の生の総容量をソフトウェア制作の予算へ置き換えたものだ。
この数字が懐古の記号として通じるのは、3.5インチ形式が実際にソフトウェアを運んだ時代があったからだ。Computer History Museumによれば、Sonyの設計を基礎にした3.5インチ仕様は1982年に業界で合意され、1990年代半ばまでに5.25インチ形式を置き換えた。フロッピーはPC普及期の主要な記録媒体であり、ソフトウェア配布にも広く使われた。2026年の公募は、その物理的な不便さではなく、限られた記録容量だけを現代の開発環境へ持ち込んでいる。
エンジン自由でも、削る対象はゲーム本体より広い
ランタイム込みという条件は、画像や音声を圧縮する前に開発基盤の重さを突きつける。エンジンが持つ描画、物理演算、文字組み、入出力のうち、使わない機能までバイナリへ残れば、その分だけゲーム内容に回せる容量が減る。エンジンを自由に選べても、同じ出発線になるわけではない。
Godot 4.5の公式文書は、デバッグシンボルを取り除くとバイナリを5分の1から10分の1に縮められる場合があると説明する。リンク時最適化、サイズ優先のコンパイル、未使用機能を外したカスタムビルドも用意され、3D機能を無効にすればコンパイル済みバイナリを約15%減らせるという。これほど削っても1,474,560バイトに収まる保証はなく、文書が示すのは汎用エンジンの機能そのものが容量を使うという事実である。
Unity 6もUnityLinkerで未使用の型を除き、参照されていないAIや物理演算のモジュール全体を削除できる。一方、raylibは外部依存を持たないC99のライブラリとして、少数の自己完結したモジュールから必要な部分を選べる設計を掲げる。前者は大きな基盤から不要部分を落とし、後者は使う機能を小さく組み上げる。どちらも適格性を保証しないが、今回の上限では開発ツールの選択が作品設計の一部になる。
96KBの.kkriegerが示した交換条件
小さな実行ファイルへ豊かな見た目を詰める方法は、2004年の実験的FPS「.kkrieger」が鮮明に示した。.theprodukktが配布したNFOによると、実行ファイルは96KB、正確には98,304バイトだった。テクスチャやメッシュの完成データを保存せず、制作時の手順を小さく記録し、起動時に再生成する。通常のデータ圧縮より密度を上げる代わりに、表現の自由と読み込み時間を負担した。
容量は消えたのではなく、別の場所へ移った。同作は1.5GHz以上のCPU、512MB以上のメモリ、DirectX 9.0bなどを実行条件に挙げている。配布物を小さくするほど、起動後の計算やマシンに既設のAPIを多く使う設計も可能になる。Farbrauschが後に公開したコード群には、テクスチャ生成器、ソフトウェアシンセサイザー、実行ファイル圧縮器が含まれ、削減が素材形式から制作ツールまで一体化した仕事だったことが分かる。
.kkriegerは今回の応募作でも、規約適合を示す先例でもない。それでも、プロシージャル生成によって保存容量を計算時間へ移す発想は、1.44MBの中で画面と音をどう作るかという問いに直結する。固定画像を何枚残すか、音声波形を持つか合成するか、ステージを保存するか規則から組み立てるか。容量制限は企画と表現の決定まで遡る。
締切時刻の20分差と、未定義の実行基盤
応募者が先に注意すべきなのは、公式ページ内の締切時刻が一致していないことだ。規約欄は9月4日午後11時59分までとする一方、日程欄には23時39分までとある。日付は同じだが20分違うため、現状の記載に従うなら23時39分より前に提出する必要がある。
技術面では、対象OSとCPUアーキテクチャが公開規約にない。必要なランタイムを同梱する規則はあるものの、OS標準のDLL、グラフィックスAPI、ドライバなどをどこまで既設とみなせるかも明記されていない。ホスト側の機能を多く使う作品と、ライブラリを広く内包する作品では、同じ1,474,560バイトでも自己完結度が異なる。
審査基準は完成、容量、面白さの三点に絞られている。結果発表で注目したいのは、主催者が実行環境の違いをどう扱い、受賞作を記念ディスケットへどの形式で収録するかだ。その方法が示されれば、「フロッピー1枚」という言葉が指す技術的な範囲も確定する。
