Ethereum(イーサリアム)のプラットフォームでは、これまでERC721などのトークン規格などを利用したDAppsゲームなどの開発が盛んに行なわれてきました。

本記事執筆辞典でも、そんなイーサリアム上で開発が行われているDAppsの数は1800を超えています。(参考:State of the ÐApps)

今回は、6月の中旬に新たなトークンの規格として発表された「ERC1155」についてまとめていきたいと思います。

ERCトークンについて簡単におさらい

一般的にEthereum(イーサリアム)のブロックチェーン上で発行されるトークンは、ERCと呼ばれるトークン規格に則ったものとなっています。

現存の多くのDAppsやICOなどはイーサリアムのブロックチェーンを利用しているため、これらのトークンはすべて「ERC」という規格でEVM(Ethereum Virtual Machine)との互換性を持つ形で発行されています。

ERCトークンについての詳細はこちらをご覧ください。

DAppsでは主に以下の「ERC20」と「ERC721」の二種類のトークン規格が採用されているのでこれを紹介していきます。

ERC20

ERC20は2014年に開発され2015年に導入された規格で、現在はEthereum上に存在する多くのトークンがこの規格を採用しています。

この規格は、設計がとてもシンプルで小数点以下の桁数や発行枚数など簡単な設定を行うのみで発行することができます。

DAppsはゲームからギャンブル、分散型取引所(DEX)などと様々な種類がありますが、こちらのERC20と呼ばれる規格は分散型取引所のトークンなどに多く採用されています。

ERC20を採用しているDApps
  • Kyber Network (KNC)
  • IDEX (Aurora)
  • 0x (ZRX)
  • Decentraland (MANA)

基本的にサービスやDApps内で通貨として利用するようなものがERC20を採用しているイメージです。

上述の例ではほとんどの例が分散型取引所のトークンですが、最後のDecentralandはゲームで採用されるトークンとなっています。

ERC721

ERC20トークンがDApps内で通貨のような役割を果たすトークンとして扱われると説明しましたが、ERC721はどうでしょうか?

DAppsにおいてゲーム要素(成長・競争・発展)などの要素をERC20(通貨)だけで表現しようとすると、Pay to Win(P2W)に寄る仕組みとなってしまい、その面白さが損なわれてしまいます。

Pay to Winとは?
基本無料で課金システムもある(フリーミアム型の)ゲームにおいて、課金システムを利用したユーザーが圧倒的に有利になるようなゲームバランスのゲームのことである。
引用元:Weblio辞書

ソーシャルゲームなどは通貨(日本円)の数字(課金額)に応じてある程度の実力差が出てしまいます。

これを解決するのがERC721が採用する代替不可能なトークン(Non-Fundgible Token – NFT)でしたね。

ERC721ではこれまでのようにゲーム内のトークンが枚数ではなく、トークンが持つ性質が価値となります。日本のゲームですと以前Crypto Timesでも紹介した「くりぷ豚」などがこれを採用しています。

ERC721に関しての詳細はこちらをご覧ください

新たなトークン規格「ERC1155」とは?

6月中旬、ENJINと呼ばれるDApps開発プラットフォームのWitek Radomski氏により「ERC1155」という規格が発表されました。

この規格はERC20の特徴とERC721が持つ代替不可能という特徴のハイブリッド型と呼ぶことができます。

ERC1155はGithubを見ると「Crypto Item Standard」と記載されており、主に個数の概念を用いるアイテムの導入を目的としていることがわかります。

以下でこのERC1155の特徴を紹介していきます。

複数のアイテムの一括交換

マルチプレイヤーのゲームにおいて例えばトラストレスな形で名前も顔も知らない第三者とアイテムなどの交換を行う際アトミックスワップというマルチシグアドレスを利用したTXsが必要になります。

しかし、EnjinのMediumで以下の図に示されるように、これには4つの承認ステップを踏む必要があります。

これは、ゲームにおけるユーザビリティを大きく損なう可能性があります。

ERC1155を利用することで、以下の図のように複数のアイテムをまとめて交換することが可能になり、承認のステップも大幅に削減することができます。

RPGなどのゲームで、装備Aと装備Bの作成に必要な素材がそれぞれ3種類あるシナリオを想定して、これに関して考えていきましょう。

従来の場合だと、おそらくプレイヤーが一つのマルチシグアドレスに3つの素材をデポジットすることで、その装備を受け取ることができる仕組みでした。この場合、プレイヤー側だけで考えても2つの装備の受け取りに12ステップの承認が必要な計算になります。

ERC1155では、この12回の承認を必要としていたものを一つにまとめることができます。従来のゲームで言えばレシピのようなイメージです。

交換する場所に必要なアイテムを持っていくことで、武器を受け取るいままでのようなゲームをプレイヤー間で実現できるようになる可能性を秘めています

複数のユーザーに一括送信

タイトルが少しわかりにくいかもしれないですが、上の図をご覧ください。

ERC1155では一つのコントラクトで複数のアイテムを一括で複数のユーザーに送信することができます。

マルチプレイヤーでのボス戦などを想像するとわかりやすいかもしれません。

従来の規格では、複数人でボスを倒したときアイテムごとにコントラクトを設ける必要性がありましたが、ERC1155を利用すると一つのコントラクトで、条件を分岐させて複数のプレイヤーに同時にアイテムが付与される仕組みを実装することができます。

まとめ

これまでERC20だとFungibility(代替可能)の概念しか取り入れることができず、一方でERC721では個数が限られていたため、ゲームのシステム自体に制約がありましたが、ERC1155を利用することでこれらを解決し、より現代的なゲームに近づけることができると考えます。

将来的に、ERC721のコレクタブルなどのシンプルなゲームから、オンラインでマルチプレイヤーと協力するようなゲームの開発も見られてくるのではないかと思います。