メモログ

Monapartyで作るDApps:宇宙モナコイン

anipopina
2020/09/01 20:28


こんにちは。Monaparty流行らせ部です。

今回はMonapartyでDAppsを作るお話その1ということで宇宙モナコインについて書きます。そもそも宇宙モナコインをDAppsと呼べるのかどうか引っかかる方もいるかもしれませんが、宇宙モナコインというアプリを司る各種トークンの情報がブロックチェーンに刻まれていて、私が死んでもモナコインが生きている限りはそこにあり続けるのですから、これはもう間違いなくDAppsなのです。

 

宇宙ウォレット: https://spacemona.komikikaku.com/

 

コンセプト

Monapartyトークンの発行枚数は最大で9,200,000,000,000,000,000ぐらいまで許されていますがこれは尋常な枚数ではなく、どんなに悪質な詐欺コインでもここまでの枚数は必要としないのでこれはもうCounterparty/Monaparty開発陣からの挑戦状と考えるのが妥当でしょう。つまり、やれるものなら使いきってみせろと。しかしこれでもまだアボガドロ数には5桁ほど足りないわけですから、令和時代を迎えすでにかなり原子分子を使いこなしているといっても過言ではないわれわれ人類ならば必ずや9,200,000,000,000,000,000枚のトークンを遊び尽くせるはずだ。そういう強い気持ちから生まれたのが宇宙モナコインです。

大きな数字といえば当然連想されるのはCookie Clickerです。2013年に流行ったやつ。クッキーを焼いてグランマを買い、さらにクッキーを焼かせる。これをMonapartyで実現しようとしたときに問題になってくるのはやはり、いかにしてグランマの数に応じたクッキーが焼けるようにするか、という点でしょう。しかし偶然にも、いえもはや意図的としか考えられませんが、これと同じことを実現するための専用の機能がMonapartyには備わっています。

 

配当(dividend)

グランマトークンを保有しているすべてのアドレスに対して、グランマトークンの保有枚数に比例する枚数のクッキートークンを送りつけるためのトランザクション

 

ここまでお膳立てされてはもうやるしかありません。クッキーを宇宙モナコインに持ち替え、9,200,000,000,000,000,000枚を使い切るためだけのアプリを作りましょう。

 

作り方

  1. デザインする
    • 各設備の生産力とか初期販売価格とかを決めます。参加者がほどよく飽きないペースで生産設備をステップアップできるように、また、全体の生産ペースが9,200,000,000,000,000,000枚に対してどの程度になるかなどを考えないといけないので、意外と面倒です。
    • 各設備に対してセンスのある名前と設定を決めて、モナカード画像と宇宙ウォレット用のアイコン(1個分と10個分)を描きます。これが全行程の中でも圧倒的に面倒です。面倒なので私はステップアップにあわせて逐次的に準備しましたが、やはり面倒でした。
  2. トークンを発行する
    • 専用のアドレスを用意して宇宙モナコインと各種設備のトークンを発行し、モナカードを設定します。
  3. ビューアを作る
    • 実用的には既存のウォレットでもいいですが、宇宙モナコインが増殖する様子が数字として見えるだけではやはり味気ないので、専用のビューアーとして宇宙ウォレットを用意します。宇宙ウォレットはMonapartyサーバにアクセスして、与えられたアドレスの宇宙モナコイン残高や設備の数を取得してお洒落に表示してくれるWebページです。
    • 保有者本人しか見られないようにするのであればウォレット連携が必要ですが、この場合表示する情報はけっきょくトークン残高だけです。Monapartyに刻まれた情報はどうせ誰にでもわかるので、あえて秘密鍵を扱うリスクを冒す必要もないでしょう。というわけで宇宙ウォレットは他人のアドレスでも楽しめます。
  4. 配布プログラムを書いて仕掛ける
    • 各設備トークンに対して宇宙モナコインを送りつける配当トランザクションを発行するプログラムを書きます。(つまりcreate_dividendして署名してbroadcastするプログラムです。初めての人にはもにゃのコードとかが参考になります。)
    • プログラムを1日に1回ずつ実行するように仕掛けます。仕掛け方はご自由に。私のおすすめはもちろんAWS Lambdaですが、これは話し出すと長くなるやつです。頻度はもっと多くてもいいかもしれませんが、設備の種類が複数あるとそのぶんだけ配当トランザクションを発行しないといけないので、手数料のMONAやXMP(dividendの発行には配布先の数に応じてXMPも必要)がかかることになります。
  5. ミニゲームを作る(オプション)
    • 宇宙モナコインで遊べる宇宙ルーレットを作ってみました。

 

アプリのデータをブロックチェーンに乗せるところがDAppsの特徴なので、データをどういう形でMonapartyに乗せて、それをどう読むか、どう書くか、みたいな思考で作っていけば間違いないでしょう。宇宙モナコインはトークン主体なのであまり「データ」という感じがしませんが、(あるかどうかわからないけど)D-Board編ではそのあたりがより顕著になります。

 

雑談

地球に宇宙モナコインが襲来してからそろそろ1年が経とうとしています。といっても生産設備をひととおり出した後は配布プログラムが動いているだけで放置してしまっているのですが、それでも順調に宇宙モナコインは増殖して地球表面の約30%を覆うまでになりました。めでたい。

宇宙モナコインで遊んでくれた方はお気づきだと思いますが、宇宙モナコインには「いちど開いた貧富の差が埋まらずむしろどんどん開いていく」という重大な欠陥があります。いろいろ考えてはみましたが、DEXというフェアな市場で生産設備を提供する限りこれは運営の権能をもってしてもどうにもなりません。金持ちに勝つため貧乏人にできることといえば、せいぜい宇宙ルーレットで運否天賦に身を任せ一発逆転を狙うぐらいです。ざわ...ざわ...。

しかしこれが人間社会の本質。むしろ宇宙モナコインは現実とは異なりスタート地点はみな同じだったのだから、かなり生ぬるい世界と考えていいのではないでしょうか。つまり、このぐらいで文句を言ってはいけない。どうしても金持ちを打ち負かしたいのであれば、宇宙モナコインを稼ぐための事業を起こし、自ら新しい市場を切り拓くことで勝負するしかありませんが、努力してまで宇宙モナコインを稼ぐことにまったく意味がないというのが苦しいところです。

というわけで資本主義の縮図である宇宙モナコインに貧富の差を埋める機能は今後も期待しないでほしいのですが、貧富の差は埋まらずとも次の展開はありえます。例えばハイパーインフレが起きたら既存の差はあまり意味がなくなりますから、そういう形でのリセットはできる。すでに限界の9,200,000,000,000,000,000枚が発行されている宇宙モナコインを追加でインフレさせるにはひと工夫が必要ですが、すでに理論は完成しているのだ。

もし次の展開があった場合には、またお付き合いいただけると嬉しいです。

  • 244
  • 12.894654

この投稿に最初のコメントをしましょう!

anipopinaさんのおすすめメモログ!


スポンサーリンク
PR
この投稿に最初のコメントをしましょう!

モナゲして応援しよう!

Loginすることで、モナゲが可能になります。