有限状態マシン図

FSM図

今日もゲームの設計手法について書きます。
(参考:ゲームクリエーターズバイブル
 
ちなみにどの工程で役に立つのかというと、
ゲームデザインが終わった「基本設計〜詳細設計」のあたりになると思います。
 
さて、トークンが複雑に状態遷移する場合には、
相互作用表よりも、有限状態マシン図(以下、FSM図)を
利用した方がよいです。
 
確かに相互作用図は、「全てのトークン」の作用の一覧を確認することができます。(全体)
しかし、「1つのトーク」がどのような作用をするのかを
細かく書きたい場合があります。(個別)
 
それがFSM図です。
 
例えば、「マリオ」トークンを中心にしたFSM図がこの図です。
 
矩形が「トークンの状態」を表します。
丸が「発生するイベント」です。
 
見方としては、例えば、キノコ取得イベントが発生します。
そのイベントは「赤の線」でトークンの状態とつながれていますので、
さらに赤の線をたどります。
つまり、その先のスーパーマリオ状態になるわけです。
 
その状態で、クリボーに衝突すると、青の線をたどりチビマリオになりますよね。
 
これを相互作用図で書こうとすると、項目が多くなりすぎたり
イベントの処理の記述量が増えてしまい可読性が落ちてしまいます。
 
それでは、仕様を確認するのが大変ですよね。
 
という感じで、あるトークンが複雑に状態遷移する場合、
このようにトークンの状態遷移を視覚的に確認できるのがFSM図の利点です。
 
まあ、、昨日と同じ結論ですが、仕様漏れが防げるわけですね。