Tileverse

Network:

Contract :

Player :

I am spinner.

説明

Tileverse はブロックチェーンを利用した探索ゲームのようなものです。ゲーム性はありません。

Tezos ブロックチェーンのテストネットである ghostnet を使用しています。 遊ぶためには

が必要です。

wasd キーで移動、壁に向かって移動すると穴を掘ります。運が良いとタイルという名の 色のついた四角が出てきます。アイテムの上で 0..9 キーを押すとタイルを取得できます。 取得したタイルは 0..9 キーでマップ上に再配置できます。タイルには希少性があり、 珍しいものは珍しい色をしています。どれがどんな色かは忘れました。

Enter キーを押すとプレイ履歴をブロックチェーンに保存できます。プレイ履歴はブロックチェーン側で 真正なものか検証を行いますので、チートはできません。(なお、リロードしてやり直すのはチートではありません。)

複数の人が同時に同じ領域を探索している場合、プレイ中に自分の周囲が他人に書き換えられて しまう場合があります。プレイ履歴が書き換えられた世界と矛盾してしまう場合は履歴保存ができません。 新しい世界でやり直しとなります。

費用

穴を掘るとマップにデータが加わります。その変更をブロックチェーンに書き込む場合には記憶域料金が 発生し、これがこのゲームでのメインの費用となります。大体、30ほど掘ると 0.09tz ほどかかるようです。 ちょっと高いかなあと思います。全データをチェーンに書き込んでいるのでしょうがないですね。

ゲーム性はない

Tileverse は Tezos での dApps の簡単なデモとして作ったもので、ゲーム性は全くありません。ただ工夫次第で色々加味できるでしょう:

技術スタック

使用している技術は、 Tezos で標準的に使われているものではなく、作者本人の都合に併せた全く非標準なものですので、お勧めしません。一応書いておきます: この方法は、オンチェーン(スマートコントラクト)とオフチェーン(アプリ)では同じ OCaml を使っています。 ゲームロジックはオンオフ両方でほぼ同じコードが使えるので、そこだけ経験が良いです。一度も齟齬が発生しませんでした。

この方法は、全くお勧めしません。OCaml と Tezos をよく知っている人しか使えない方法です。

通常は SmartPy, LIGO でスマートコントラクトを書いて、 Taquito や ConseilJS を使ってウェブアプリを書いてください。 自分はこのどれにも詳しくないので選択しませんでした。