ハウルの動く城
今日はDVDのハウルの動く城を見ましてね。
キャラクターがとてもいいですね。
最初見たとき絶対ただの脇役だと思っていた案山子のカブと火の悪魔カルシファーが重要人物だったり、荒れ地の魔女がわりとすぐにただの婆さんになったり、物語上おそらく最強であろうサリマンが一度その強さを見せただけ―本当にただ見せただけ―で終わって最後のオチの役をしてくれてたり。
あと、ソフィーってすげえ婆さんだ。
若返ったり年食ったり。
呪いをかけられる前に比べて度胸が座ってるし。
火を消しちゃったことで大号泣しちゃうし。
ふにゃさん、今日はステージセレクトについて考えていました。
ステージセレクトって、便利な機能ではあるけど反則っぽいんですよね。
最初から行ったら何回もミスしていくようなところを丸ごとすっ飛ばしていくんだから。
だけど規模の大きなステージだと最低限前の続きから始める機能は必須となるわけですよ。
だからちょっと、最後にプレイしたステージから始めるという機能について考えてみました。
ちょっとその前に用語の整理を。
一つのステージファイルの中にはステージが沢山あって、そのまとまりもまたステージと呼ばれる。
でもこれってまぎらわしい。
マップという言い方もあるけど気に食わないので、区別するには小ステージという用語を使ったらよさそうです。
というわけで、最後にプレイした小ステージを、ポーズ画面からタイトルにもどるかゲームオーバーになるかして終了したときに記録しておいて、続きからプレイする場合はその小ステージの最初から開始ということになります。
だけどこれには問題があって、このシステムをまともに組むと、1ミスしたら一旦タイトルに戻って続きからはじめると残り人数が復活していてノーコンティニュークリアができてしまうのですよ。
それなら最後にプレイしたときの残り人数も記録しておけば、と思うわけですがそうするとゲームオーバーからタイトルに戻ったときは続きからはじめた瞬間またゲームオーバーになるわけですよ。
残り人数が復活してもらっちゃ困るけど、残り人数を保存しても困る。
そこで原点に返って考えると、そもそもステージセレクトで私が危惧しているのはゲームオーバーのペナルティ逃れなのです。
だとすれば、続きからはじめるときにはゲームオーバーと同じだけのペナルティを課せばよいのでは、と考えたわけです。
というわけで、「はじめから」(ペナルティはかからないけど1面から)と「続きから」(ペナルティがかかるけど前に行ったステージから)という2つのオプションが付くことになります。
しかし、この、何面からはじめるかという情報、これをどこに記録するかが次なる問題です。
普通に考えればセーブデータに一緒に書き込めばよさそうですが、ステージファイルが減ったり名前が変わることもあるのでチェックサムの関係で余計なデータを消した瞬間全データリセットという可能性もあるのです。
それにセーブデータは忘れっぽい自分のために、決まりきった形式を使うことでデータの保存し忘れなどを防ぐ仕組みになっていて、ステージ進行状況はこの決まりきった形式に全く合わないのです。
だから他のファイルに保存すべきか、などと思っていたのですが結局結論が出なかったのでこの問題は棚に上げておいて、今日はキー操作設定を実装しました。
此方はバッチリ決まりきった形式に当てはまっていたのでスッキリと通常セーブデータに記録するようにしました。
あとついでに、キー操作設定とかかわりが深いシークレット機能もサックリと実装しておきました。
そうそう、そろそろリリース間近なのでリリースコンパイルにしたら2.26MBあった実行ファイルのサイズが676KBになりましたよ。
あー。あと忘れかけてたけどタイトルもちょっと改良しました。