blockchainjapan’s blog

旬のブロックチェーンを記事を厳選して提供!

新たなAptosトークンオブジェクトがゲームチェンジャーとなる理由


新たなAptosトークンオブジェクトがゲームチェンジャーとなる理由

METAPIXEL

METAPIXELとAptosはAIP 11で協力し、ゲーム資産をオンチェーンで動的かつ柔軟に管理できるようになりました!

こんにちは、METAPIXELでブロックチェーンとプラットフォームのバックエンド開発に取り組んでいるWillingです。

今回は、最近Aptosのメインネットに実装された「Token Object」についてお話したいと思います。今年に入ってからAptosのブロックチェーンに大きな変更がありました。AIP(Aptos Improvement Proposals)9(リソースグループ)[1]、10(オブジェクトの移動)[2]、11(オブジェクト・トークン)[3]がAptosコミュニティに提案され、データアクセス性、ストレージ効率という課題に取り組み、トークン作成にオブジェクトモデルが導入されました。今回のToken Objectsのアップデートによって、動的なデータ処理と合成が可能になり、スマートコントラクトやdAppsの中でより多様で柔軟な運用が可能になりました。

このようなデータモデルの変化が、NFTサービスにどのような変革をもたらし、どのようにゲームに組み込まれるのかを探ってみましょう。

一般的なWeb2ゲームでは、データは各ゲームサーバーに保存・管理されています。こうした機密情報は、外部からアクセスしたり区別したりすることが非常に困難です。キャラクターやアイテムを取引するにしても、システム内でしか行えず、その価値をゲーム環境の外で検証することは困難なものとなります。

一方、ブロックチェーン技術を用いたWeb3ゲームでは、ゲーム外でもゲーム内アイテムの識別や定義が可能で、ユーザーが取得したデジタル資産(ゲームアイテム)の真の所有権を獲得することができます。つまり、ユーザーがゲーム内で獲得したweb3資産のライフサイクルは、ゲームサーバーではなく、ユーザー自身がコントロールすることが可能です。ユーザーは、費やした時間やお金の価値を確実に反映させ、デジタル資産に真の価値を割り当てることができるのです。この仕組みは、現状を打破し、新たな市場を創出することにつながるでしょう。

しかし、私のような開発者の立場からすると、Web3ゲームが提供する価値とその実現は、また別の話です。ゲーム内のデジタルアセット(アイテム)には、常に変化し、進化していくという特徴があります。残念ながら、既存のブロックチェーン技術では、ゲーム資産が持つ柔軟性やダイナミズムを捉えることは困難でした。

Aptos Labsチームとコワーキングセッション中のMETAPIXELチーム

そこで、Aptosチームと緊密に連携しながら、共同開発に取り組んできました。その結果、ゲームアセットの表現と開発のための「Token Object(AIP 11)」というAptosの標準規格を共同で作成することができました。

今回は、トークン・オブジェクトとは何か、なぜ必要なのか、どのように活用できるのかを探っていきます。

ゲームアセットの表現方法としてのトークン・オブジェクト

前述したように、ゲームアセット、特にゲームアイテムは、通常、作成されずにそのまま放置されることが多い。一度作ったアイテムは、ユーザーのキャラクターと一緒に成長していくのが一般的です。アイテムはさらにアップグレードされ、変更され、その属性は頻繁に変更されます。また、アイテムはアカウントやキャラクターに縛られ、アカウントやキャラクター間で譲渡することができません。このような特徴や挙動をすべて表現するためには、ゲーム内資産をブロックチェーン上で動的に表現し、その価値を伝えることが必要です。

トークンv2 — オブジェクトとしてのトーク

オブジェクトモデルの導入前、Aptosはすでにこれらの概念を表現することができましたが、若干の複雑さとコストを伴っていました。下図は、Token v1モデルで資産がどのように表現されていたのか、そしてオブジェクトモデル導入後のToken v2(Token Object)でどのように表現されているかを示しています。

Token v2での大きな変更点は、NFTをユーザーアカウントと同じレベルで表現していることです。Aptosでは、ユーザーアカウントは32バイトのアドレスで識別されますが、同様にNFTも同レベルのアドレスで識別されます。NFTの構造と内容は、AIP-10 Move Objectによって定義されます。つまり、NFTへのアクセスは、ユーザーアカウントによるトークンアクセスと同様に、グローバルアドレスで行うことができ、より直感的でわかりやすいリソースの取り扱いが可能となります。

さらに、オブジェクトアドレス空間内では、オブジェクトであることを示すObjectCoreリソースが定義され、オーナーフィールドは、オブジェクトの所有者を示すために使用されます。つまり、多くのブロックチェーンでNFTの所有権を決定するために複雑なプロセスを経る代わりに、グローバルアドレスを通じてオブジェクトにアクセスし、内部で所有者情報を取得することができるようになります。

所有者はObjectCore内部のフィールドに表示

これによって、他のオブジェクトに対するオブジェクトの所有権(コンポーザビリティ)の実装が、より簡易化されます。

オブジェクトが他のオブジェクトを所有する仕組み(コンポーザブルNFT)Freepikの作成アイコン

オブジェクトの利点として、ストレージスペースの有効利用が挙げられます。AIP-9 Resource Groupsでは、オブジェクトのストレージスペースの浪費の問題を取り上げ、ストレージスペースを効率的に使用する方法を説明しています。オブジェクトは、先に定義されたObjectCoreとともに、aptos_framework:object::ObjectGroupのメンバーとして定義された他のリソースとグループ化され、一つのストレージに一緒に格納されます。

これは高いデータローカリティにつながり、以前のアプローチと比較してストレージコストを大幅に削減することが可能です。開発の観点からは、これらのリソースの検索と取得が非常に容易になり、検索時間が短縮されます。

Aptos Token v2モデルでは、NFTはオブジェクト内に定義されたトークンリソースとみなすことができます。トークンリソースは、以下の属性を有しています:

オブジェクトモデルにおけるトークン構造

オブジェクトの属性として追加されるトークンリソースは、aptos_framework:object::ObjectGroup内にグループ化されており、オブジェクトモデルの利点を活用することができます。

さらに、オブジェクトモデルは、タイプの安全性とデータアクセスに改良が加えられています。これにより、ゲーム資産をより安全かつ正確に開発することができ、より良い整合性と信頼性を確保することにつながります。

METAPIXELユーザーにとってのメリット

先に紹介したトークンオブジェクトモデルを活用することで、ゲームアセットをオンチェーンで動的かつ柔軟に管理することができます。トークンオブジェクトをゲームに適用した例を考えてみましょう。例えば、ゲームプレイヤーは、Proof of Play(PoP)システムを通じて、希少で強力なNFTを透過的に獲得することができます[4]。トークンオブジェクトを使えば、これを簡単に実装することが可能です。注目すべきは、作成者(ゲームサーバーなど)がトークンを作成し、作成時にだけ有効なパーミッション(construct_ref)を取得することです。これを利用して、1回だけ転送するためのパーミッション(linear_transfer_ref)を取得して、プレイヤーにアイテムを転送する仕組みです。

ゲームアイテムをNFTとしてミントする場合のコード例

取得したNFTは、ユーザーのウォレットに表示されます。つまり、ミントした時点で、ユーザーは即座にNFTの所有権と管理権を獲得することになります。

トークンv2(オブジェクト)のミントの例

(使用リソースはすべて例です;最終的な実装を表すものではありません)

取得した武器は、装備時にユーザーにバインドすることができます。つまり、武器のNFTをSoulBound Tokenに変換することができます。この機能は、disable_ungated_transferと呼ばれる単一の関数を使用してオブジェクト内に実装することができます。

アイテムをSoulboundさせるコード例

武器にはレベルアップと成長の機能があります。次の例は、property_mapを使用したレベルアップを説明するものです:

この例では、1つのトークンオブジェクトを使用して、ゲームNFTの造形、Soulboundステータスの付与、属性のアップグレード(Dynamic NFT)を行っていることが示されています。トークンオブジェクトを活用することで、他のオブジェクトとの関係を通じてComposable NFTを実装することが容易になります。機能ごとに個別の標準やデータモデルを必要とする従来のブロックチェーン・アプローチとは異なり、トークンオブジェクトはアイテムのリアルタイムでのミント、合成、進化、取引を可能にします。

概要

METAPIXELは、データ主権、不変性、透明性といったWeb3の価値を提供しつつ、ゲーム本来の楽しさをユーザーに提供することを目指しています。多くのユーザーに対してシームレスなオンボーディングを可能にして、誰もが楽しくアクセスできるweb3ゲームを実現するための研究を積極的に行っています。

私たちはこのムーブメントの最前線におり、従来のゲーム体験とは一線を画すWeb3ゲームを自信をもって紹介しますし、今後さらに多くのものを提供していきます。

参考文献

[1] Aptos Community, AIP-9 Resource Group

[2] Aptos Community, AIP-10 Move Objects

[3] Aptos Community, AIP-11 Tokens as Objects

[4] Lucas Ko, Why Gran Saga: Unlimited Is More than Just a Game


METAPIXELについて

METAPIXELは、NPIXELが構築し、Aptosブロックチェーンで提供される、最高のWeb3ゲームエコシステムです🎮

METAPIXELの各コンテンツから参加して最新情報を入手しましょう