一定期間更新がないため広告を表示しています
こんばんは。藤川です。最近、普段からは考えられないほどの頻度(頻度ってほどでもないですが)でブログを更新していますが、世間ではこういうのを逃避行動とかいうそうです。
ところで、『砂』には「メッセージスキップ」という名前で付いている、いわゆる既読スキップ機能ですが、これは当然ながらKAG SYSTEM標準のものを利用しています。とても便利でいいんですが、確認作業をしていて、ふとあることに気付きました。メッセージスキップをすると未読部分までスキップしてしまうという、割とアレな不具合です。
といっても、これはKAG SYSTEMのせいでも吉里吉里のせいでもなくて、『砂』特有の不具合です。どういうことかというと。
『砂』は章立てのあるストーリーなので、シナリオを章ごとにフォルダ分けして格納しています。で、シナリオファイルは、章ごとに通し番号のファイル名にしているのですが、これが原因なんですね。
KAGのドキュメントの「未読/既読処理について」の項にある通り、KAG SYSTEMは既読フラグを記録するシステム変数名として、シナリオファイル名を用いています。要するに、上のような方式だと、章なんて関係なく通し番号だけで既読フラグが記録されてしまう訳です(実際にはラベル名も使われますが、『砂』の場合は諸般の事情でラベル名も統一してあるので、やっぱり同じ変数名になってしまうのです)。
これを解決する方法として、すぐ思いつくのは二通り。まず、ファイル名に章番号を挿入すること。でもこれは全てのファイルのjump先を書き直さなくてはならないので、胃がひっくり返りそうです。もう一つの方法は、KAG SYSTEMに少しだけ手を加えること。すなわち既読フラグ記録変数名の決定方法の変更です。
面倒くさがりの藤川としては、当然後者の手でいくことにしました。これはMainWindow.tjsのsetRecordLabel()をオーバーライドするだけなので、大変お手軽です。このメソッドが"trail_hoge_piyo"という文字列を作っている箇所に章番号を挿入して、"trail_1hoge_piyo"ってな感じになるようにしました。
もし同じような問題で悩んでいる方がいらっしゃれば、ご参考までにどうぞ。
こんばんは。藤川です。今夜は随分外が明るいです。
メモリの件、同じ方(多分)から再びアドバイスを頂戴しまして、曰く吉里吉里の実行コアだけ入れ替えてみては如何。かたじけないことに既に体験版で動作の確認までしていただいたようでした。早速2.26をダウンロード。最初いきなりハードウェア例外が出てビビりましたが、dllのリンクでこけているだけでしたので、使っている各種プラグインも移植して再起動。問題なく動きました。
とりあえず、あれですね。通常動作が急に軽くなってびっくりしました。や、私がびっくりしててもアレなんですが(汗)。吉里吉里は日夜進歩しているのであるなぁと詠嘆した次第です。最初にいただいた「System.doCompact()を使ふ」というアドバイスも無事に成功しました。ありがとうございました。
でも、まだ微妙に何者かがリークしている模様。ホストの訪問履歴かとも思いましたが、どうも違うみたいです(一度終了してから起動しなおしてあるデータをロードすると、履歴はきちんと復帰されているが、メモリ使用量はそれほど増えないから)。何だろうな。ホストの構造データを読んだり消したりするときに断片化してるんだろうか・・・。あとはもう純粋に私の努力次第っぽいです。
とりあえずの対処法として、重くなったら一旦終了して、もう一度起動すると何とかなるかと思います。まあその、ゲームは一日一時間(©高橋名人)ということで(^^;
こんばんは。藤川です。山の彼方のなほ遠く、隔週刊を目指したブログがあったとか何とか誰かが言ったような気がする今日この頃ですが、テストプレーに参加してくださっている皆様、エラー報告ありがとうございます。自分で開発して自分で確認をしていると、システムに好都合な操作だけを無意識にやってしまうもので、まだ虫だらけのゲームをテストして、あまつさえ報告までいただけるのは本当にありがたいです。
あと、やっぱりまだまだ重いみたいですね。どこまで軽く出来るかどうかはわかりませんが、快適に遊んでいただけるように最善を尽くしたいと思います。そうそう、重いといえばほづみさんがFEBLOGでも書いてましたが、起動時にホストの情報を全てメモリに読んでおくのはかなりの無茶だったみたいで、よく確認してみたら400MB近くメモリを使ってました。ダウンロードサイズと同じだけメモリを食うソフトってのは、私自身初めて目にしました。そら動かないよなぁ。今は100MB〜200MBくらいをいったりきたりしてる感じで、大分マシなんですけど、もうちょっと何とかしたいです。
とりあえずセーブ/ロードの問題と、その他いくつかの不具合の修正が出来たら、システム部分(data.xp3)だけ再配布させていただくことになるかと思います。また大きなファイル(20MBちょい)を落とさないといけなかったりしてご負担をおかけしますが、どうぞ引き続きよろしくお願いします。