生命の誕生と死滅をシミュレートする「ライフゲーム」をアレンジしたスクリーンセーバ。「ボール」と呼ばれる生命体が、自ら移動して捕食活動を行うのが特徴だ。ライフゲームは、英国の数学者ジョン・コンウェイが発明した有名なシミュレーションで、ご存じの方も多いと思う。ここでは詳細の説明は行わないが、単純な規則から起こる複雑な過程と結果が、生態系を表しているともいわれる。「BowlLifeSaver」では、セルの代わりに「ボール」と呼ばれる生命体が登場し、移動しながら増殖や捕食、消滅といった「生命活動」が繰り返されていく。
ボールには、緑の「植物(被食者)」、赤の「捕食者1」、黄色の「捕食者2」の3種類があり、以下のルールで増加したり減少したりする。
- 緑ボールは一定期間ごとに増加し、一定数になると増加が止まる
- 赤ボールは「LIFE」を持ち、緑ボールを食べることで増え、食べないと減る
- 赤ボールは「LIFE」がある量まで達すると増殖し、反対に一定量以上減ると消滅する
- 黄ボールは緑ボールの代わりに赤ボールを食べる。そのほかの条件は赤ボールと同じ
食糧となる緑ボールが多い場合には赤ボールも増殖するが、赤ボールが増えるほど緑ボールの減りも激しくなり、やがて食糧が足りなくなって消滅していく。赤ボールが減れば、緑ボールが食べられる量よりも増える量が上回り、餌が増えることになる。そうすれば、赤ボールも再び増殖をはじめるというわけだ。増加と減少のバランスを支える鍵となるのが、ボールの各種パラメータだ。緑ボールは初期数と上限数、増加間隔、移動速度が設定可能。赤と黄のボールは初期数と初期LIFE、捕食時のLIFE増加量、ボールが1個増えるためのLIFE量、移動速度を設定することができる。また、緑と赤の2種類だけを登場させるか、黄も含めた3種類を登場させるか選択することが可能で、すべての緑ボールが食べられた場合に配置を初期化するか、画面に緑ボールを追加するかを選ぶこともできる。
そのほか、登場するボールのサイズを大小から選択したり、ボールの画像(BMPファイル)を用意して、変更したりすることも可能。サンプル画像も用意されている。背景色の変更や全体的な動作スピードを調整することもできるなど、設定項目は多岐にわたる。簡単に初期設定に戻せるので、さまざまな設定を試してみて、自分ならではの生態系を構築してみよう。
本来は固定されているセルを動かすことで、より現実の「食物連鎖」に近いイメージを持った「BowlLifeSaver」。本来のライフゲームとはまた違った、その新鮮さを楽しみながら眺めていただきたい。なお、ウィンドウ状態でのシミュレーションが可能な「BowlLife」も公開されている。
(柴崎 ひろ)