ブロックチェーンゲームはその約束を果たせませんでした。規模の制限と高いコストにより、ほとんどのチェーンゲームはゲームアセットのトークン化に制限されています。しかし、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 で書かれているため、証明が必要なコードの効率を最大限に引き出します。
Sozuは、特に開発とマイグレーションプランニングのために作成されたツールチェーンです。つまり、Sozu は Starknet 上で開発したゲームをデプロイするために使用できます。単純なsozo migrate
コマンドを使用して、ゲームの「ワールド」のインスタンスをチェーン上にデプロイできます。Sozu は現在、コマンドラインインターフェース(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 チームと協力して、ストレージプルーフを Dojo に実装し、クロスチェーンアセットの移動を不要にすることを検討しています。ストレージプルーフを使用して、異なるチェーンからのアセットの所有権を証明し、ユーザーは異なるチェーンやレイヤの異なるゲームで自分のアセットを使用することができます。
オリジナルの記事はこちら:https://starkware.co/resource/dojo-on-starknet-game-on/