Voxel Topia について
>> You can read this article in English <<
※本記事はハッカタス審査員さんに向けて、また現段階で遊んでくれるユーザーに向けて書いた記事になります。
将来的にはもっと色んなことをしたいのですが今回はハッカタスにエントリーするために、VoxelTopiaの一部機能版にてエントリーしました。以下ハッカタス向けを解説します。
※とにかく読むのが面倒、すっ飛ばして適当に遊びたい人はここからゲームをDLしてください。
Voxel Topiaとは?
16 * 16 pixelをペイントしオリジナルのVoxel(立方体)を作成できます。
さらにはそのVoxelを自由に配置し自分だけのオリジナルワールドの作成が可能です。
また、作成したオリジナルVoxelはSymbolブロックチェーンに登録することで、(手数料が10XYM必要です)他者への販売も可能となります。
ブロックチェーンへの保存はMetalというプロトコルを活用し、画像データやVoxelデータはフルオンチェーンとなります。この時、保存のためのネットワークへの手数料はユーザー負担ですが1Voxelあたり1XYMにもなりません。クソ安いです。
またUnity(C#)でMetalを使うためにMetal on Symbol for Csharpを作成しました。興味ある方はぜひ使っていただければ幸いです。
Voxel Topiaの目指す理想
僕は8歳の男の子の父親ですが、彼がマイクラが大好きでピクセルアートも好きなんです。レゴのようにVoxelを自由に配置して自分の好きな世界を作っている姿は、創造力を成長させ、さらにはロジカルに物事を考える力も養っているように思っています。(マイクラの話ですがレッドストーン回路を自由自在に操っている)
話は変わりますが、先日xembookさんが国内の市町村にSymbolアドレスをマッピングしたという話がありました。
この2つの話をもとに考えたのが、
子供たちがこのVoxelTopiaを使って自分の町を再現し(もちろん再現でなくオリジナルでも)そのワールドを地域アドレスの管理者に販売や譲渡する。
地域の管理者はそれを使って地域振興のようなことも可能じゃないかなと。
例えばワールドをメタバース化して、オンラインで特産品を販売したり、イベントにオンラインで参加できたり。
子供がクリプトネイティブに育って欲しいという想いがあるだけで、もちろん大人が遊んでもらっていいです。(というかスタートはSymbol界隈の大人しか知らないし)
地域創生 × 子供 × ブロックチェーン
という部分が今回のハッカタステーマである - Connection - となります。
あくまでも想像の範囲で、今後そういう動きをとっていくかは未定なのですが、そんなことも考えて進めたら面白いかなと。何より自分の息子が遊んでくれてるので、それだけでも満足なんですけど。
前置きが長くなりましたが以下説明書です。
事前に準備するもの
Symbolテストネットアカウント(100XYM程度あれば十分)
テストネットアカウントの作成は以下記事を参考にしてください
ネットワークタイプ選択でテストネットを選択することを忘れずに!
また、こちらで必要なテストネット用XYMを調達可能です
ゲーム本体のダウンロード
スマホ版やWEB版はありませんのであしからず。
いずれも解凍するとVoxelTopia.(app or exe)ファイルがあるのでそれを起動してください。
アカウント作成
ゲームを起動するとまずはサインアップします。
※言語選択はトップの右上に国旗があるのでそちらで選択してください。デフォルトは日本語です。
秘密鍵とSymbolアドレス、パスワード、お名前を登録してください。
パスワードは半角英数で8文字以上です。お名前はVoxelを販売する際などに表示されます。
2回目以降の起動ではサインイン画面からスタートします。設定したパスワードでサインインしてください。忘れた場合は、Twitterなどで連絡ください。もしくは、違うアドレスでのアカウントの作成をお願いします。(細かい点が未実装)
※暗号化された秘密鍵は端末にのみ保存されます。
Voxelの作成
アカウント作成、もしくはサインインするとエディタ画面に遷移します
① 新しいVoxelを作成します。名前を入力してください。
② カラーを作成するエリア
③ カラーパレットです。10個まで作成でき保存します
④ ドローモード、マウス左クリックでパレットの色で描きます
⑤ 消しゴム、同じく左クリックで消します
⑥ クリックするとキャンバスを全て削除します
⑦ 塗り、クリックした箇所と同色で隣接するピクセルを塗りつぶす
⑧ スポイトです、選択しているパレットに色を反映します
⑨ Redo Undo
⑩ ピクセルを端末に保存します(ブロックチェーンには保存されません
⑪ 端末に保存されているVoxelの再編集を行います
⑫ Symbolブロックチェーンに登録します(後ほど詳しく解説
⑬ 編集画面
⑭ 立方体なので6面ありますが、面ごとに違うデザインにしたい場合はこれを使う。ボタンの色が変わるので同じ色は同じデザイン
⑮ 編集する面を変更するボタン
⑯ ワールド作成画面へ
⑰ Voxel販売画面へ
⑱ ゲームの終了
Symbolへの保存
PublishのチェックボックスをONにすると他の人が購入できるようになります。OFFにするとチェーン上に保存されるだけで使えるのはあなただけです
ONにした場合の価格を決定できます。単位は1XYM(小数点以下は無し)です。0に設定も可能です。その場合でも購入希望者は0XYMトランザクションを送信する必要があります
アカウントのパスワードを入力し「Estimate」をクリックするとブロックチェーン手数料と、PublishがONの場合はVoxelTopiaへの10XYM手数料の合計が表示されます
金額に納得する場合はSaveをクリックして保存してください。Voxelのデザインや構成データがMetalを通してSymbolに保存されます。
今のところNFTにはなりません。あくまでもデータ保存。
本来Metalは削除できるメタデータという仕様ですが、データの販売を行うため削除できません
メタデータのターゲットアドレスをゲーム内で新規アカウント作成し一度キリのアカウントとして秘密鍵をどこにも保存しません。
ユーザーはソースアドレスになります
そのためメタデータ削除などは基本的には不可能です(僕が実はどこかに保存するなどのコーディングをしていたり、ユーザーがうまくハックすれば可能かもですが、そこはトラス…Metalは仕様上削除したとしてもMetalIDさえ分かればトランザクションを辿って復元は可能なので場合によってはいずれそういう対処も必要かもしれない)
SHOPについて
SHOP画面では公開されている全てのVoxelを見ることができます。また、欲しいものがあれば提示されている金額を支払うことで自分の端末にダウンロードすることが可能です。
24件のVoxelが表示されますが画面を下にスクロールするとさらに追加されます。デフォルトは最新の登録順です。
Searchボタンをクリックすると検索ボックスが表示されます。
今のところ
VoxelName
CreatorName
Latest or Oldest
でフィルタリング、ソートできます。
好みのVoxelがあればクリックすると購入ボタンが表示されます。パスワードを入力し送信すると送金され、端末にVoxelがダウンロードされます。
Editor画面で編集が可能です。またワールド作成時に購入したVoxelを使ってワールド制作することも可能です。
なお、一度購入したVoxel、もしくは自分で作成したVoxelは再ダウンロードが可能です。万が一端末からデータが消えた、MacでプレイしていたけどWindowsでもプレイしたい、などが対応可能になります。
先ほども書きましたがNFT(FT)ではありません。単なるデータ販売です。いずれNFT化するなども可能だとは思いますが日本の法律が関係してくるので今は考えていません。
Worldについて
World画面では新たなWorld作成とロードができます。
[NewWorld]をクリックすると使用したいVoxelを選択できます。今のところ最大64Voxelsまでが選択可能です。
[LoadWorld]をクリックすると保存されたWorldをロードできます。また、この際にVoxelを追加することが可能です。新たに購入したり作成したVoxelを追加してみてください。ただし、一度選択したVoxelを削除することはできません。同じく最大64Voxelsまで登録できます。
World作成画面での操作について
※このモードだけコントローラーが使えます(いずれ他シーンでもコントローラー使いたいけどそのうちね)
Worldに入ると登録したVoxelを自由に配置できます。9種類のVoxelまではツールバーに初期設定されますが、それ以外のVoxelを使いたい場合は[ I ]をクリックするとインベントリが開きます。ドラッグアンドドロップでツールバーにVoxelを配置できます。
またインベントリを開くとSAVEボタンが表示されます。ローカルにWorldデータを保存することでLoadで続きから遊べます。
さいごに
ここまでが今のところできることです。
Voxelの一面は16*16pixelですが32だろうが64だろうが128だろうが可能。その分データ量は大きくなるけどクリエイターの自由度は上がる。
Worldデータもローカルに保存しているので、今後それをMetal化することは可能です。World配置データを他ユーザーに販売することでそのユーザーがWorld再現できます。その際にもVoxelデータは所有する必要がある(World購入者は使用されているVoxelの購入が必要)ので、WorldクリエイターはWorldを作成して稼ぎ、VoxelクリエイターはWorldクリエイターに使わせれば二次的にVoxelの販売をすることが可能になります。
World編集もオンライン化し複数プレイヤーで作成なども可能です。また、いずれはマイクラのレッドストーンのようなものやピッケルでしか壊せないブロックなどを実装し、単なるブロック配置だけではなく、いろいろ遊べる仕様にもしていきたいですね。宝探しでXYMとかNFTゲットとかね。
冒頭で書いたように子どもたちが遊びながらVoxelやWorldを作成し、地方自治体が購入し、地域振興などに役立てる。こんな状況が作れたら理想的です。が、そこまで僕の体力が持つかは別問題w
ではでは長々と失礼しました。ここでお腹いっぱいにならずにぜひ少しだけでも遊んであげてください。バグ取り、エラー処理などが完璧じゃない(いつもながら)と思われるので不具合などがあれば連絡いただければ幸いです。