Rso's Jotter

日々の開発の知見のメモやその他雑記

ブロックチェーンをゲームで使う意義

先日の マイクリハッカソン でゲームにブロックチェーンを組み込む意義みたいな話が出て、その内容が興味深かったのでメモしておきます。

 

なぜブロックチェーンでゲームを作るのか 

 

以下に内容はパブリックブロックチェーンを想定しています。

主な理由として以下の2点が考えられます。

 

永続性

プログラムが正常に動いてさえいれば、仮に運営がメンテナンスを放棄してしまったとしても、ゲーム自体は維持されます。人気のあるゲームが運営の金銭的な理由によってサービス停止されたり、一部のニッチ層だけが楽しんでいるゲームが維持できなくなり、停止するなどの事例はいままで起こっていますが、それが防げる可能性があり、ユーザのコミュニティで維持されることが期待できます。MMOのエミュ鯖が近いイメージです。

公正性

ブロックチェーン内の情報は誰もが閲覧できるので、その途中経過に不正がないことを証明でき、改ざんも防げます。またイーサリアムのようなコントラクトをブロックチェーンで管理することで、どのような処理が実行されるかも公開され、透過性を保つことができます。

またデメリットや、課題として、以下が挙げられます

複雑な処理ができない

現在のイーサリアムの仕組みでは、計算量がコストに結びつくため、複雑な処理をするほど費用がかかってしまうゲームになります。現時点ではこの計算コストが安くないため、ゲームの処理をブロックチェーン上で実行できたとしても、ごく単純な処理に限られてしまいます。その単純な処理だけでは、どうしても単調なゲームになりがちで、ゲームそのものの面白さを表現することが、ブロックチェーンを使わない従来のゲームに比べて難しいと考えられます。

 

改変の難しさ

ブロックチェーン状のプログラムや処理結果は改ざんが難しいという利点がある一方で、既存のプログラムをアップデートしたり、不具合を修正したりすることが従来よりも難しいと考えられます。この辺りは新たな方法が色々提案されていて、模索中の状態のようです。

ランダム性などのゲーム性の担保

プログラムが誰もが見れるというのは公正性を保てるという利点がある一方で、乱数の生成など、内容が見られてしまうことによって都合がよくない場合があります。乱数のアルゴリズムが分かれば、それを解析して有利な結果を得ることが可能になってしまいます。十分にランダムな乱数を得るためには計算量も大きくなってコストも上がってしまうというジレンマがあります。

所感まとめ

ゲームはブロックチェーンの適用例となる良い例かと思いますが、解消すべき課題はまだまだあるのかと思っています。ブロックチェーンを使用してプログラムを組むと、従来までのセオリーが通用しない部分があり、そのあたりがまだまだ発展途上なのかなと感じています。