Novemade
すべての実験

再現ではなく本物のエンジンを出荷する

訪問者に本物のゲーム — アプリで動いているのと同じエンジン — を遊ばせることは、どんなスクリーンショットの並びよりも多くを証明するか。

実験

·

スタジオのサイトはたいてい製品を静止画で見せます。静止画は手ざわりを実演できず、ゲームとはほとんどその手ざわりです。代わりになるのは普通は再現、つまり製品に近づけた簡略版のブラウザ実装です。私たちは再現は両方の世界の最悪だと考えています。作るのに費用がかかり、しかもその製品ではないからです。

ZUPI は、どちらの妥協も必要のない事例でした。その物理とレベル生成は、サードパーティの実行時依存を持たず、素朴な 390×600 の座標空間に対して書かれた自己完結のモジュールに住んでいます。そのモジュールは iOS と Android のビルドが動かしているのと同じ真実の源です。だからこのサイトのデモは ZUPI に近づけているのではありません。ZUPI のエンジン、レベル生成、難易度曲線、三秒静止ルールを import し、ウェブ向けに書かれたレンダラーで描いています。

実験は、その区別がエンジニアリングに値するか、そしてそれが一般化するかです。私たちの製品のうちいくつが、こうして公開できる本物のエンジンの境界を持っているのか。そしていくつが、作らないと既に決めた再現を必要とするのか。

答えが出ました。2026年10月3日、しかも問いが予期していた形ではありません。ZUPI はその事例ではなくなりました。App Store のアプリは9月30日に ZUPI: Pulse Shield になり、それは別のゲームなので、このデモが import していたモジュールは前のもののものです。取り込みは一度も乖離しませんでした。ハッシュは最後まで一致していました。そしてそれこそが発見です。ハッシュは、複製がその出どころのリポジトリに忠実かどうかに答えます。そのリポジトリがまだ製品かどうかは、誰も尋ねていませんでした。/try/zupi はいまや公開されている店舗の掲載情報から組み立てられた再現版です。この実験が作らずに済ませようとしていたものであり、真実の源が失われたあとでは誠実な答えです。

分かったこと

ここまでに分かったこと。

  1. 01

    取り込んだ複製は、ハッシュを取り直すだけでなく取り込み元を同定し直す必要があります。ハッシュは、複製が出どころのリポジトリから乖離したかどうかに答えます。そのリポジトリがまだ製品かどうかには答えられません。ここで実際に失敗したのはその問いです。

  2. 02

    エンジンはソースを一行も変えずに移りました。アプリ自身の理由のために作られたルールと描画の明確な境界が、ウェブデモの必要とするものそのものでした。

  3. 03

    決定論は予想より重要でした。レベルがレベルごとのシードから導かれるため、デモと公開されたアプリは同一の盤を生成します。つまり訪問者が遊ぶものは本当にレベル1であり、似たものではありません。

  4. 04

    無料で一般化はしません。ロジックがネイティブ UI 層と絡み合った製品はこの方法では公開できません。だからこそ「エンジンの境界はあるか」は、作ったあとではなく作っているあいだに問う価値のある問いになります。

動いているところを見る

このサイトのために書かれた再現版です。ZUPI のコードではありませんし、そうだとも言いません。公開されているゲームのソースはスタジオのリポジトリにないので、これは公開されている App Store の掲載情報から組み立てられました。Pulse Core、三秒の静止の規則、そらすことで Pulse が充電されること、Pulse ひとつにつき六回、Pulse だけが壊せる装甲された脅威、分裂、追尾、ガードバンドです。数値と挙動はその掲載情報とスクリーンショットから来ています。レベル、難易度曲線、手ざわりはこのサイトのものであり、ゲームのものではありません。2026 年 10 月 3 日まで、このページは前のゲームのエンジンを動かし、それが公開中のものだと言っていました。