長い間、私たちがチェーンゲームについて話すとき、ETH のようなスマートコントラクトプラットフォームに基づいています。その理由は明らかで、資産をチェーン上に載せる GameFi ルートを選ぶか、状態をチェーン上に載せる全チェーンゲームルートを選ぶかのどちらかです。どちらのルートでも、スマートコントラクトを使用することが最も簡単な実現方法です。しかし、銘文の出現により、非スマートコントラクトプラットフォームである BTC エコシステムがインデクサーと結びつき、異なる技術実現方法が生まれました。本稿では、BTC エコシステムのゲーム、メタバース、自主世界に関する探求を技術的にまとめ、銘文とチェーンゲームがどのように結びついているかを見ていきます。
全チェーンゲームの別の実現#
典型的な資産をチェーン上に載せる GameFi ゲームにとって、NFT や FT トークンの発行に関しては、スマートコントラクトプラットフォームが最良の選択肢であり、無駄な手間はありません。それでは、昨年大ヒットした全チェーンゲームは BTC チェーンに移行できるのでしょうか?この言葉は最初は奇妙に聞こえます:全チェーンゲームの定義は、ゲームロジックと資産をすべてチェーン上に書き込むこと(ロジックはスマートコントラクトの仮想マシンに書き込まれ、資産はスマートコントラクトで発行される)です。あなたはスマートコントラクトの機能を持っていないのに、どうやって実現するのでしょうか?
最初に Ordz Game(@OrdzGames)が自分たちを BTC に基づく完全なオンチェーンゲームだと言ったとき、私も好奇心を抱きました。以前の記事で触れたように、銘文は任意のファイルを BTC の隔離証明空間にアップロードでき、そのサイズ上限は 4M です。結果、domo は「発行のための JSON 形式のコード」をアップロードし、BRC20 の数十億ドルの市場を生み出しました。それでは、ゲームコードの一部をチェーン上にアップロードしたらどうなるでしょうか?Ordz はまさにそうしたことを行っています。
ウェブベースのミニゲームにおいて、プレイヤーがゲームウェブページにアクセスすると、コードがブラウザのローカルファイルにダウンロードされ、その後ブラウザ内でゲーム全体が直接実行されます。したがって、「銘文版全チェーンゲーム」は、ゲームコードをダウンロードできるオンラインストレージスペースを提供するだけで済みます。BTC の隔離証明空間は、まさにそのような DA 層を提供しています。その原理は以下の通りです:
-
開発:ミニゲームは通常、HTML、CSS、JavaScript(JS)を使用して開発されます。HTML はページの構造を担当し、CSS はスタイルとレイアウトを処理し、JavaScript はゲームロジック、アニメーション、ユーザーインタラクションの核心を担当します。
-
ホスティング:開発が完了したゲームコードとリソースファイル(画像、音声など)は BTC の隔離証明空間にアップロードされます。これにより、ユーザーはブラウザを通じて特定の URL にアクセスすることでゲームをロードできます。ゲームのロジックと実行は完全にクライアント(つまりユーザーのブラウザ)で行われますが、ゲームのファイルは依然としてチェーンからクライアントにダウンロードする必要があります。
-
ロード:ユーザーがゲームのウェブページにアクセスすると、ブラウザは HTML、CSS、JavaScript ファイルをダウンロードします。これらのファイルには、ゲームのすべてまたは大部分のコードが含まれています。
-
実行:ダウンロードが完了すると、ブラウザは HTML と CSS を解析し、ページの構造とスタイルを構築します。同時に、JavaScript コードはブラウザの JavaScript エンジンで実行されます。
-
インタラクション:ユーザーとゲームのインタラクション(クリック、ドラッグなどの操作)は JavaScript によって処理され、ゲームはこれらのインタラクションに基づいてゲームの状態と画面を更新します。これらのプロセスはすべてユーザーのデバイス上で完了するため、応答速度が速く、スムーズなゲーム体験を提供できます。
以上のように、Ordz は確かにゲームコードをチェーン上にアップロードしましたが、厳密に言えば「完全なオンチェーンゲーム」の定義には合致しません。結局のところ、ゲームのすべてのロジックはチェーン外で実行されています。しかし、GameFi タイプの銘文ミニゲームには独自の側面があり、ユーティリティトークン(ORDG)として自らの銘文 BRC20 トークンを発行しました。
メタバースマップとしての Bitmap#
Bitmap(@bitmapdev)は、ビットコインエコシステムの最初のメタバースプロジェクトを自称しており、Twitter ユーザー @blockamoto が 2023 年 6 月 13 日に Twitter で提案し、その後一部のメディアに注目され宣伝されました。Bitmap は序数理論(Ordinals theory)とビットマップ理論(Bitmap theory)に基づいて構築されています。序数理論は、各 sat に序号を割り当てることを意味し、ビットマップ理論は、ビットコインが 10 分ごとに生成するブロックをデータ構造のパラメータに基づいて地図データとして定義することが非常に簡単です。両者の組み合わせは、各ブロックを地図 NFT として扱い、その NFT を ordinal で特定の sat にバインドすることを意味します。
Bitmap 理論自体は、2 つの基本ルールを定めています:
-
各ブロックは「地区」(District)として定義され、ブロックの高さで表されます。
-
ブロック内の各取引は「地塊」(Parcel)として定義され、順番に 0 からカウントされます。
したがって、いわゆる「銘刻」は、地区と地塊の序号をフォーマットに従って隔離証明空間にアップロードし、sat にバインドすることです。例えば、ブロック高さ 31209 のブロックでは、(31209.bitmap)という文字列を sat にバインドすることで所有権を宣言します。31209 ブロック内の第 5 取引では、(5.31209.bitmap)という文字列を sat にバインドする必要があります。しかし、現在は「district」の所有者のみが「parcel」の所有権を銘刻できることが許可されています。
他のサブルールには、input/output の意味やブロック取引数の意味などが含まれ、異なるプロジェクトによって個別に定義されることができます。これにより、2D 版地図、3D 版地図、VR 版地図などが生まれました。
著名なプロトコル BRC420 は、最初にアバターとビットマップ NFT の相互作用プロトコルを作成しました(再帰的銘文技術を使用し、トークン変換に関する探求も行いました)、これにより bitmap.game という製品が形成され、ビットマップエコシステムで最も有名な開発チームとなりました。その後、このチームは再帰的銘文アバター生成プラットフォーム(rcsv.io)と BTC 第 2 層ネットワーク Merlin Chain を制作し、会社名も Bitmap Tech に変更しました。したがって、Bitmap Tech と Bitmap プロトコルは完全に異なるものであることに注意が必要です。
創世発行段階では、Bitmap の Mint 可能な総量はビットコインのブロック高さに等しいです。Bitmap 標準が発表された時点で、すでに 70 万以上の歴史的ブロックが存在しており、ユーザーはマイナー料金を支払うことで自由に銘刻を選択できます。創設者が発表してから 2 ヶ月以内に 70 万以上の歴史的ブロックが登録されました。
Bitmap の総量はビットコインの現在のブロックにリンクしており、ビットコインは約 10 分ごとに 1 つのブロックを生成します。したがって、理論的には総量は無限です。ビットコインが新しいブロックを生成するたびに、登録可能なビットマップが 1 つ増えます(ルールに従い、ブロックが掘り出された後に開始された銘刻登録のみが有効です)。先着順の原則に従い、誰でもブロック番号.bitmap の純粋なテキスト ordinals 銘文の形式でこのブロックの所有権を登録できます。したがって、毎日 144 の新しいブロックが採掘され、登録可能です。現在、主流の NFT 取引所もリアルタイムで BITMAP の総量を更新しています。
総量の観点から見ると、ビットマップ NFT は希少性を持たないため、現在の投機は特定の地図に集中しています。例えば、
-
特殊な番号、例えば 888.bitmap
-
公式の可視化データに基づいて生成された特殊なパターンの地図、例えば cryptopunk のようなもの
- 重要な歴史的事実を含むブロック、例えば創世ブロック、ピザ取引ブロックなど。
インフラストラクチャの面では、ブロックデータに基づくフロントエンドレンダリングに関するさらなる探求が行われています。以下の図のいくつか:
要約すると、ビットマップは実際には資産マーキングプロトコルであり、Ordinal プロトコルとビットマッププロトコルを通じて無主の資産「ビットコインブロック」を NFT にマッピングし、ブロックの資産属性を活性化し、流通とコレクション価値を生み出します。
ビットコインエコシステムの LOOT#
もしビットマップが地塊の観点からメタバースに切り込むとすれば、rootverse(@ordinals_root)と BRC1024(brc1024_pro)はキャラクターや装備の観点からメタバースに切り込もうとしています。ゲームプレイは LOOT に似ています。
イーサリアムの LOOT は私たちにとって非常に馴染み深いもので、ランダムに組み合わされたテキスト版の NFT のセットです。このテキストの説明は装備の属性を定義し、メタバースの基本ルールを確立します。他の人はこれらのテキスト NFT を基にして、2D 画像の表示、3D 画像の表示、ストーリーの表示など、組み合わせ可能な派生を行うことができます。
BRC1024 は全体的に似ており、メタバースのコンポーネント(Component)を定義するためのいくつかのパラメータを規定しています。以下の図は、ROOT というメタバースに「charactor」というコンポーネントがあり、そのサブコンポーネントが「warrior」であり、このサブコンポーネントの最大数は 20000 個で、elements はこのサブコンポーネントのいくつかの属性であり、一部の属性には複数の選択肢があることを示しています。例えば、「skin color」属性には白色と銅色の 2 種類があります。
ROOT(公式名 Rootverse)は、プロジェクトチームが BRC1024 を使用して構築した最初のメタバースであり、21 種類の部族(つまり種族とそれに対応するサブ種族)が規定されており、各サブ種族には異なる数があり、プレイヤーは無料で鋳造でき、合計 21 万枚のキャラクター NFT が作成されます。以下の図:
要約すると、BRC20 は「FT トークン発行のコード」を隔離証明空間に銘刻して FT コードの発行を実現するものであり、BRC1024 は「メタバースコンポーネントのコード」を隔離証明空間に銘刻してメタバースコンポーネントの発行を実現するものであり、ROOT は「キャラクター種族」というコンポーネントを銘刻したものです。これが銘文の組み合わせ可能性の表れです。
チェーン上ゲームの汎用状態機械#
私たちはメタバースの地図、キャラクター、装備を持っているので、BTC チェーンに基づく完全なチェーンゲームを作ることができるのでしょうか?もし資産(NFT 資産と FT 資産を含む)をチェーン上に載せる GameFi ルートだけを行うのであれば、現在のインフラは十分ですが、よりクリプトネイティブなチェーン上ゲーム(自主世界)にはまだ不十分です。
イーサリアムエコシステムの Dojo は「検証可能なチェーン上ゲーム」(Provable Onchain Game)の概念を最初に提唱しました。Dojo はチェーン上ゲーム開発フレームワークです。これはコミュニティによって構築された、検証可能なゲームエンジンおよびツールチェーンであり、チェーン上ゲームと自治世界を構築するために使用されます。Dojo は、大規模な合意形成プランなしでゲームの状態と計算を検証することを可能にします。Cairo、Noir などの言語で RISC-Zero のゲームを記述または実行することができ、ブラウザのような独立した zkVM 上で独立して実行され、検証可能な出力は実際の実行を保証します。言い換えれば、チェーン外で効率的な VM を使用して計算を行い、チェーン上の部分はデータ検証のみを行って結果の真実性を保証し、「信頼の排除」と「分散化」を実現します。
Redux Protocol(@AutonomousRedux)は Dojo の検証可能なチェーン上ゲームの概念を参考にし、Ordinal 理論を借用して BTC エコシステムのチェーン上ゲーム開発フレームワークを実現しました。BTC チェーンのブロック生成時間は 10 分に達し、スマートコントラクト機能がないため、BTC エコシステムのチェーン上ゲームを実現するには、チェーン外計算とチェーン上検証のモデルを使用するしかありません。
興味深い点は、Redux が「銘文」の使用シーンを拡張したことです。ご存知のように、以前の銘文は基本的に発行に使用されていました。Ordinal NFT トークンか、BRC20 のような FT トークンのいずれかです。Redux はメルケルツリーと銘文を組み合わせて、状態銘文(stateful inscription)の概念を提案しました。実際には、ゲーム内のキャラクターや装備の属性をメルケルツリーの方式でデータモデリングし、保存し、データの不変性を保証します。どこか一箇所で変更があれば、ルートハッシュが変わります。
具体的な方法は、状態銘文を 2 つの部分に分けることです。一部は「不変状態」であり、武器の健康値、アーマー値、攻撃値などです。この部分は銘文の形式で BTC ブロックチェーンに記録されます。もう一部は「可変状態」であり、前述の健康値、アーマー値、攻撃値の具体的なデータです。これらのデータはゲームの進行に伴って変化します。これらのデータはチェーン外のインデクサーによって計算および処理されます。そして「銘刻」自体は、実際にはその銘文の可変状態セットを指すポインタを保存しています。
開発者は世界の基本フレームワークとその状態銘文を構築する責任があります。これには、どの状態が不変(静的)であり、どの状態が可変(動的)であるかを定義し、ユーザーと状態銘文の相互作用のロジックを構築することが含まれます。Redux プロトコルは、開発者がプレイヤーと状態銘文の相互作用方法をカスタマイズできる実行環境を提供します。プレイヤーは状態銘文との相互作用を通じてゲームを体験します。
技術的な路線から見ると、これは Dojo や Paima に似ています。Dojo は ZKP の形式を採用して検証可能なチェーン上ゲームを制作し、Paima は NFT 状態圧縮の方式を採用して検証可能なチェーン上ゲームを制作し、Redux は状態銘文(メルケルツリーを利用)を使用して検証可能なチェーン上ゲームを制作しています。もう一つの違いは、Dojo が Starknet を DA 層として使用し、Paima が自分の主権ロールアップを DA 層として使用し、Redux が BTC エコシステムの DA 層を使用していることです。
以上のように、私たちはこれらのプロジェクトがそれぞれゲームの異なるレベルで Ordinal プロトコルを利用して探求していることを発見しました:Ordz はウェブゲームのコードを銘刻し、Bitmap は BTC ブロックをランダムデータソースとして地図 NFT にマッピングし、ROOT はキャラクターと装備をコードの形式で銘刻し、Redux は状態機械の検証可能なデータを銘刻しています。もしイーサリアムエコシステムのプロジェクトと類似性を求めるなら、Ordz は TreasureDAO に、Bitmap は SandBox や DecentraLand に、ROOT は LOOT に、Redux は Dojo や Argus に類似しています。
参考資料
https://www.panewslab.com/zh/articledetails/leqfrx2o.html
https://rcsv.gitbook.io/brc-420/
https://www.panewslab.com/zh/articledetails/22531q6583yt.html