〜ゲームについて素人から知れる、作ろう〜 アイディア検討(ゲーム制作ツール「machination」:実践編その4
「machination」Activationとグラフ作成
前回までは主にmachinationの確率操作についてや、State connectionという他のものの値を動作中に変更するものについて触れました。
下図は前回までのところ。
今回は前回軽く触れたactivationについて触れて、その後はみなさんお待ちかね(?)のグラフについて触れていきたいかと思います。
ではまずはactivationについてから、、
前々回では星マーク、そして前回では二重丸のマークのものについて触れました。
これはそれぞれ”自動で作動”と、”クリックによって作動”というモードでした。
そして動かしていて既にわかっているでしょうが、一番左のただの丸はデフォルトの”何も働かない”というモード。
ということであとは右の「S」というものだけ!!結構気がついたら、わかっているものが増えてきているのではないでしょうか!!!(個人的にこういうの純粋に嬉しい
ということで「S」のやつですが、こちらは、、、、
『最初一回だけ作動』
はい、正直あまり使わなさそうなものですね(笑
おそらくシステム全体の起動用みたいな使い方になるのではないでしょうか。
ここまででActivationについてはマスターしたのではないでしょうか。
ということでグラフの作成について作業に戻っていきたいと思います。
はいactivationをちょっといじりました。
前回の途中の状態だと思います。
machinationではプールやレジスタ?(これはまだ触れていませんね)の状態を時間を追ってグラフに記録できるそうです。
一応グラフについては基本的にはどの要素での記録ができるようになっているそうですが、poolとレジスタがリソースや値を蓄積できるものということで、この二つしかほとんど使わない。
まあ説明はここまでで、実際にやってみましょう!
ということで、Graphの中のChartというものを選択してドローイングエリアに置いて見ましょう。
これを、置くと、、、
はい!いかにもグラフという枠が出てきてまいりました。
これだけでは何も表示されないので、poolからグラフに向けてStateを繋いでいきます。
これなんですが、選択を外すと、
このように特別な表示となります。選択時だけはいつも通りの点線矢印ですが、選択を外すとこの表示になるということで、見た目だけです(笑
乱雑でなく、結構見やすくなるかと思います。
ちなみにこの状態はStateのthicknessを0にするとグラフに繋がっていないものでもできます。しかしこれは非常にわかりにくくなってしまうので、本当に乱雑なのを解消したくて、ダイアグラムへの理解が十分なされている場合に限りという感じですね。
それではこの状態でrunして見ましょう!!
結果がこちら!!!
はい!!グラフを見ていただくとわかると思いますが、二回ほど大きく下がっているところがあるかと思います。こちら、賢明な方には既にわかっているかもしれませんが、converterを使ったところです。
converterを使うと一時的にpool内の数は減りますが、増加速度をあげることができ、将来的に数が大きくなります。
目先の利益だけを見て、先行投資をしないでいると、先行投資している人たちにどんどん追い越されていく、、、なんか人生みたいですね(意味深
話が大分逸れましたが、こんな感じでグラフを使っていきます。
実際にやっている人は気がついたと思いますが、このグラフはデフォルトだと、自動でX軸Y軸がリサイズしていきます。つまり、時間が経つとグラフがどんどんと伸びていくわけですが、それに合わせてグラフの縦横のメモリが大きくなっていき、グラフのサイズとしては常に一定で枠内に収まっている訳です
(下図参照、、、頑張って作ったものなので、矢印に影がかかっていることには触れないこと笑
ちなみに自動拡張の際は最大がそれぞれ横軸100s、縦軸5000のようです。
これを一定にしたい場合、また最大をより大きくしたい場合は、グラフのエレメントパネル(ステータス)でScaleXとScaleYを設定することで解決できます。
もちろんラベル(名前)と色も変更できます(下図はX,Yが小さすぎて、10s以上の部分が見えなくなっていますね笑
このグラフ機能ですが、右上のclearを押すと、データを消去できます。消去しないまま実行すると、前のものが薄い線で表されたままとなります。
また、右下のexportをクリックで外部にデータを保存できます。ファイル形式はCSVファイルですね。
ちなみにmachinationではずっと放置しておくと、、、
このように100%を超えてどんどんと増加していきますよね。
これを100%で止めたいときはmaxを100に設定するといいと前回紹介しました。
しかし、それ以外にもより直接的な方法があるので、そちらも紹介しておきたいと思います。
それがこちら、
stateをpool2からconverterに向かって繋いでいます。
これは<5ということで、pool2が5よりも小さいときに機能するようになっています。
つまり、5を超えた瞬間、、、、
はい、このようにクリックできなくなる、この部分が機能しなくなるようにできるのです。
これはもちろん問題もあって、poolに溜めておいて一気にconverterを連打したりすると、封鎖される前に送り込まれてしまい、100%を超えてしまったりするのですが、このような機能自体を使えなくするという手法はなかなか使えそうではないかと思います。
ということで、今回はここまでとしたいと思います。
次回は最後に必要である、終了条件付けや自動で働く人口プレイヤーについて触れていこうと思います。
ここまでできればとりあえずmachinationの基本的機能は網羅したと言えるかも(!?)
ということでまた次回お会いしましょう。
またね!