ブロックチェーンゲームはその約束を果たせませんでした。規模の制限と高コストにより、ほとんどのチェーンゲームはゲームアセットのトークン化に限定されています。しかし、Starknet 上の安価で高速なトランザクションと新しい Dojo チェーン上ゲームエンジンにより、ゲーム内アセットを個人所有できるだけでなく、ゲームロジックをチェーン上で検証可能にすることができます。
2023 年までに、グローバルゲーム市場の評価額は 2450 億ドルに達し、世界のエンターテイメント産業の中で最大のセグメントの 1 つです。さらに、ブロックチェーンゲームは無限の相互運用性を許すことで、現在の状況よりも興奮をもたらすオープンな空間をゲームの世界に提供しています。マルチプレイヤーゲームがゲームエコシステムに新たな次元の可能性をもたらしたように、チェーン上ゲームもより面白く関連性のあるものになることができます。
しかし、この約束はブロックチェーンの現実の課題に直面しています - 高コストと遅延したトランザクション。これらはゲームにとって絶対に許容できない 2 つの問題です。したがって、成功するチェーン上ゲームを作成することはほぼ不可能です。
しかし、有効性ロールアップ技術の成熟とともに、チェーン上ゲームの約束はついに実現されました。
この記事では、Starknet がサポートする高 TPS がどのようにチェーン上ゲームを実現するかについて説明します。また、コミュニティによって構築された最初の検証可能なゲームエンジンである Dojo が Starknet を活用してビルダーに力を与える方法についても見ていきます。最後に、Dojo の将来とブロックチェーンゲームの解放についても探求します。
暗号ゲーム#
ブロックチェーンゲームについて話すとき、ブロックチェーンが可能にする 2 つの最も人気のあるアイデアは、ゲーム内アセットの所有権と相互運用性です。
ゲーム内アセットの所有権は、ゲームアセットがユーザーの所有するウォレットに属していることを意味します。つまり、それらはゲーム開発者や中央サーバーに保存されている単純な電子メールアカウントではなく、遠隔で削除することはできません。ブロックチェーンゲームでは、作成または獲得したアセットは実際にあなたのものです。
これらのアセットがあなたのものになると、ゲームは相互運用性を実現することができます。相互運用性があれば、1 つのゲームのキャラクターやアセットを別のゲームや世界に移動することができます。数百時間を 1 つのゲームに費やしたが、もうプレイしないと決めた場合、その苦労して獲得したアセットを選んだ新しいゲームに持っていくことができます。
これらの 2 つの概念を実現するには、ゲームはチェーン上に構築する必要があります。つまり、すべてのゲーム内アセット、プレイヤーの行動、およびその他の状態変化は、ブロックチェーン上のトランザクションとして行われなければなりません(各アクションは個別に行われるか、定期的にプッシュされる集約トランザクションとして)。比較的分散化されたブロックチェーン上では、1 つのトランザクションのコストは数セントから数百ドル(混雑時)になる可能性があり、数分またはそれ以上かかる場合があります。明らかに、このようなプラットフォームで大規模なゲームインフラストラクチャを運営することは非常に高価で遅く、現実的ではありません。
Starknet と低コストの計算#
しかし、有効性ロールアップメカニズムである Starknet などの登場により、すべてが変わりました。
Starknet は、StarkWare が開発した Layer 2 の有効性ロールアップメカニズム(通常は ZK-Rollup メカニズムと呼ばれる)であり、計算およびストレージコストを大幅に削減するための STARKs と呼ばれる暗号システムを使用しています。
Starknet(および Starknet のスマートコントラクト言語である Cairo)は、最小限のコストで高いトランザクションレートを処理する分散アプリケーションを可能にし、同時に Ethereum のセキュリティを利用しています。この低コストで高速なトランザクションは、ブロックチェーンゲームの約束を実現するために必要です。ゲームは今や完全にチェーン上で高速かつ手頃な価格で実現できます。
しかし、チェーン上で実現できるとしても、ブロックチェーンゲームが繁栄するためには、もう 1 つの重要な要素が必要です:検証可能なゲームエンジン。
ゲームエンジンとは何ですか#
ゲームエンジンは、お気に入りのゲームで美しいシーン、迅速なプレイヤーの移動、現実的なキャラクターの振る舞いを可能にするソフトウェアフレームワークです。ゲームエンジンには通常、物理、グラフィックス、ゲームメカニクスなどの基本システムを再作成する必要がないように、ライブラリやサポートプログラムが含まれており、開発者にフレームワークを提供します。ゲームエンジンには、オーディオやビデオ処理、3D エフェクトのレンダリング、AI 機能なども含まれることがあります。
ゲームエンジンはゲームの舞台を構築するものです。
私たちが楽しんでいる多くのゲームは、世界で最も人気のある 2 つのゲームエンジン、Unity と Unreal Engine によって可能になっています。Epic Games が開発した Unreal Engine は、人気のあるゲームである「Fortnite」、「Street Fighter V」、「Gears of War」シリーズなどに使用されています。もう 1 つの主要なプレーヤーである Unity は、「Hearthstone」、「Ori and the Blind Forest」、「Pokémon Go」などのゲームを現実のものにしました。
Starknet が暗号ゲームの約束を実現したことで、多くのプロジェクトが Starknet 上でゲームを構築し始めています。しかし、まだ暗号ゲームエンジンが欠けています。これにより、開発者はカスタムコードを書かずに基本的な物理、ロジック、ゲームメカニクスを構築することができます。
Dojo - 最初の検証可能なチェーン上ゲームエンジン#
Dojo は、暗号ゲームエンジンです。これは、コミュニティによって構築された検証可能なゲームエンジンおよびツールチェーンであり、チェーン上ゲームと自治世界を構築するために使用されます。これにより、暗号ゲームの約束が現実になります。
Starknet 上で Dojo を使用したゲームの数は急速に増加しています。最も人気のあるものには以下があります:
Influence - 遠い小惑星帯に設定された大規模な戦略的 MMO で、プレイヤーが所有するオープンエコノミーを持っています。ユーザーは NFT を購入して小惑星を探索し、開発することができます。すべての小惑星は同じ世界に存在し、プレイヤー同士が相互作用することができます。
Realms - 地図上に特定の名前、形状、サイズ、地理的特徴を持つ 8000 の土地があるストラテジーゲームで、これらの特徴は土地所有者(ユーザー)にチェーン上の利益をもたらします。リソース生成や代替可能な住宅プロトタイプなどの利用が可能で、経済ゲームが行われます。
CafeCosmos - 土地に基づいたチェーン上ゲームで、ユーザーはリソースを効率的に管理する必要があります。これにはリソースの収集、農耕、家畜の飼育、家電や家具の製造、アセットの取引などが含まれます。
Dojo のコンポーネント#
Dojo エコシステムには、次のコンポーネントが含まれます:
- Cairo 言語で書かれた ECS(Entity Component System)
- Sozu マイグレーションプランナー
- Torii ネットワークとインデックススタック
- Katana RPC 開発ネットワーク
ECS システムは、コードの保守性を向上させるためのゲーム開発で使用されるデザインパターンです。ECS システムは、ゲームオブジェクト(エンティティ)に一意の機能(コンポーネント)を追加することで、シーン全体が統合システムとして機能するようにします。Dojo の ECS フレームワークは、ブロックチェーンベースのゲーム開発に特化しており、モジュール化、効率性、柔軟性を向上させ、ブロックチェーン環境の管理上の独自の課題に対応しています。これにより、ブロックチェーン上で複雑でダイナミックなゲームを作成し、さまざまなゲームメカニズムと相互作用をサポートすることが可能になります。Dojo は Cairo で書かれているため、証明が必要なコードの効率を最大化しています。
Sozoは、特に開発とマイグレーション計画に使用するために作成されたツールチェーンです。言い換えれば、Sozo は Starknet 上で開発したゲームをデプロイするために使用できます。単純なsozo migrate
コマンドを使用して、ゲームの「ワールド」のインスタンスをチェーン上にデプロイできます。Sozo は現在、コマンドラインインターフェース(CLI)ツールとしてのみ利用可能です。ただし、現在、グラフィカルユーザーインターフェース(GUI)も開発中です。
Toriiは、Dojo ワールドの包括的なインデックスとネットワークレイヤーです。Torii システムは Dojo の上に構築されており、デプロイされたゲームワールドで発生するイベントをインデックス化します。これにより、Dojo ワールドの状態が体系的に整理され、クライアントがデータを効率的にクエリできるようになります。多くの状態の変化がゲームで発生することを考慮すると、クエリシステムの効率は Dojo スタックの有用な機能です。Torii 上のクエリは GraphQL を使用して行われます。
Katanaは、高速なローカル Starknet ノードであり、Dojo のローカル開発をサポートするために設計されています。Katana を使用すると、開発者はこの「開発ネット」でアプリケーションをテストし、迅速なローカル開発を実現できます。開発者は Katana ネットワークを使用してゲームで送信されるトランザクションをテストすることができます。Katana は便利な RPC メソッドを提供し、ネットワークの設定を必要に応じて変更することができます(ブロック時間の変更、ゼロ料金トランザクションの許可など)。さらに、Katana は Starknet JSON-RPC 仕様の v0.3.0 バージョン(2023 年 6 月時点の最新バージョン)をサポートしています。Katana 上では、starknet_getTransactionReceipt、starknet_getStorageAt などのローカル Starknet JSON 呼び出しを使用できます。
Dojo と暗号ゲームの未来#
Dojo コミュニティは、暗号ゲームの発展を推進するために継続的な研究と開発を行っています。既存のコンポーネントの改善に加えて、主要な開発者は以下に取り組んでいます:
- ゲーム向け L3s
- オプティミスティックロールアップのアップデート
- クライアントプルーフ
- クロスチェーンアセットトランスファー
ゲーム向け L3s - Dojo は、Starknet 上でゲームを L3s として開発する可能性を研究しています。これは、Starknet 上に独自のチェーンをデプロイし、そのチェーンが定期的にトランザクションの実行を証明し、その証明を Starknet(L2)に提出することを意味します。Starknet はこの証明を他のネットワーク上のトランザクションと結合し、Ethereum L1 に提出して証明を検証します。このソリューションにより、ゲームのスケーラビリティが向上し、数倍に増加する可能性があります。(さらにステップとして、プレイヤーがゲームのレベルを試すたびに、一時的な新しいレイヤーをゲームレイヤー上に構築すると想像してください。)
オプティミスティックロールアップのアップデート - 私たちは静かに座って、ウォレットの中の「トランザクションが進行中です...」というテキストが緑色に変わり、「検証済み」と表示されるのを待っていることがよくありますね?何度も。プレイヤーの各アクションが個別のトランザクションとして送信される場合、プレイヤーはトランザクションが受け入れられるのを待つために多くの時間を無駄にします。オプティミスティックロールアップのアップデート - Dojo は、スタックの追加機能の 1 つとしてこれを改善するために取り組んでいます - プレイヤーがブラウザ内で楽観的にトランザクションを実行し、プレイヤーがゲームを続けることができるようにします。何らかの理由でブラウザで実行される結果とトランザクションの結果が異なる場合、ゲームは変更を調整します。
クライアントプルーフ - クライアントで実行される楽観的な更新と共に、Dojo は、チェーンに送信されるトランザクションの一部をクライアントプルーフする可能性を探っています。これにより、Dojo 上に構築されたゲームは、ユーザーが渡す一部の入力をクライアントで作成するゼロ知識証明(ZK proof)として隠すことができます。逆に、この ZK 証明は、オーダラーに送信され、トランザクションの残りの部分を実行します。
ストレージプルーフの活用 - ストレージプルーフは、ブロックチェーン情報をストレージするための暗号化手法であり、クロスチェーン共有が可能になります。オラクルとは異なり、ストレージプルーフは情報の真正性を証明します。ただし、ストレージプルーフでは、信頼はストレージに置かれます。ストレージプルーフは、別のチェーンまたは Ethereum 上のレイヤの状態の有効性を証明することも可能です。
Dojo は Herodotus チームと協力して、ストレージプルーフを実装し、クロスチェーンアセットの移動を不要にすることを目指しています。ストレージプルーフを使用して、異なるチェーンからのアセットの所有権を証明し、ユーザーは異なるチェーンやレイヤ上の異なるゲームで自分のアセットを使用することができます。
オリジナルの記事はこちら:https://starkware.co/resource/dojo-on-starknet-game-on/