そして、おさらいとしてアーカイブスを眺めてたら、そう言えばPrismaticallization*1があったのか‥‥

簡単に言うと、フラグ管理を(一般的な)フラグ個数分のboolean配列でやるんじゃなくて、5つしかないフラグレジスタに任意でフラグ番号をMOVして管理するADV。
当然、trueエンドに行くためのフラグは5つどころじゃないうえ、「axとbxを使って取得したフラグをaxにMOVしてbxに0をMOVする」鬼畜仕様*2なので、この周回でミスした場合にフラグを復旧させるための周回をやり直す必要がある*3、という、関数型プログラミングのありがたさを身を持って体感させてくれるゲームですww(ちなみに攻略サイトでは、「午後に雨が降らなかったらリセット」が最適解らしいです)


今までのADVが「フラグ」でシナリオを管理してたのに対して、このゲームは「ステート」でシナリオを管理している訳ですよ。
キャラクターをオブジェクトとして単純な有限個数のboolean値プロパティを管理する今までのゲームとは違って、「シナリオ」をオブジェクト化しステートという立体的で複数の要因が絡み合った要素をキーにルートを遷移させていくという、ADVの新たなパラダイムになりえた、かもしれないゲーム。*4
RPGとかADVの攻略チャートがフローチャートじゃなくてUMLで描かれる時代は近い‥‥?

*1:「プリズマティカリゼーション」。これをさらっと読めたらクソゲーハンター初級

*2:と言われているけど、これはレジスタを使ってステートマシンを管理するには当然の仕様。新しいステートには不要な値を残しておいて、しかもそれを参照しちゃうとか問題外。問題なのはこのステートマシンを「ゲーム」というインターフェイスで管理させることですじょ

*3:しかもランダムに変化する天候が特定の値でないと発生しないイベントがあって、特定の値以外だった場合はレジスタを引き継いで次周回、と思いきや手詰まりと見なされ次周回でレジスタがゼロクリアされる。さすがにステートマシンに乱数を持ち込むのはちょっと‥‥

*4:「街」のzappingだよねそれという突っ込みは却下ですw