ページ 12

【解決済み】アツマールでのセーブデータ肥大化

Posted: 2021年4月27日(火) 10:45
by ハイツ
ゲームアツマール(旧RPGアツマール)でブラウザゲームとしてゲームを公開しております。


【困っていること】
ゲームをアップデートする度に人によってアップデート前のセーブデータで遊ぶと数百ブロック以上に肥大化してしまうようで困っています。

自分でプレイしてもセーブデータは肥大化せず、10ブロック程度で問題なく遊べています。

アップデートも、マップを追加したり、条件分岐でドアを開かなくしたり、イベントのプライオリティを変更したり、セリフを変えたり、変数の加算減算を修正したり等でゲームのコアの部分(?)には触れていません。


【環境】
自分の動作環境はMac,Safari、iPhone,Safari,Chrome
肥大化してしまう方はWindows,Chrome です。

【試したこと】
画像の軽量化、アクターやスキルを使っていないので最大数を1〜2に、並列処理しっぱなしがないか確認


プラグインの競合とも考えましたが、それだと一部の人のみ肥大化するというのが腑に落ちません……

ストーリーものではなくシミュレーションの為、どんな操作をしたら肥大化に繋がるのかをプレイヤーさんから引き出すことも困難です。


【質問】
肥大化の原因を探る方法がわからないので、知っている方がいらっしゃったら教えていただけると大変助かります。
よろしくお願いします。

直し方や、自分はこうしたら改善した等もありましたら教えていただけたら大変助かります。

何卒よろしくお願いします。



______________

セーブデータ肥大化ですが、解決いたしました。
今後同じようなことが起こった方がいた時のため、以下に記させていただきます。

結論としては、恐らくプラグインの競合でした。

こちらのブログ記事を参考に
http://leeroynto.livedoor.blog/archives/16057544.html
セーブデータの中身を見てそのことが判明しました。

推測ではありますが、他のプラグインとの競合によりトリアコンタン様の時間内導入プラグインのスイッチタイマーの情報が破棄されず溜まってしまっていたようです。

セーブデータにタイマーの情報が大量に列挙されていたのでそのように考えました。

「アップデート前のセーブデータで肥大化する」というのはアップデート前からやりこんでいる方の方がタイマーを作動させる回数が多いためたくさん溜まっていたということのようです。

そもそもこのタイマーを多用しすぎていたため、時間内導入プラグインのタイマーをなるべく使わないようゲームを修正する予定です。

皆様ありがとうございました!

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月27日(火) 11:06
by ムノクラ
ハイツ さんが書きました:ゲームアツマール(旧RPGアツマール)でブラウザゲームとしてゲームを公開しております。


【困っていること】
ゲームをアップデートする度に人によってアップデート前のセーブデータで遊ぶと数百ブロック以上に肥大化してしまうようで困っています。

自分でプレイしてもセーブデータは肥大化せず、10ブロック程度で問題なく遊べています。

アップデートも、マップを追加したり、条件分岐でドアを開かなくしたり、イベントのプライオリティを変更したり、セリフを変えたり、変数の加算減算を修正したり等でゲームのコアの部分(?)には触れていません。


【環境】
自分の動作環境はMac,Safari、iPhone,Safari,Chrome
肥大化してしまう方はWindows,Chrome です。


プラグインの競合とも考えましたが、それだと一部の人のみ肥大化するというのが腑に落ちません……

ストーリーものではなくシミュレーションの為、どんな操作をしたら肥大化に繋がるのかをプレイヤーさんから引き出すことも困難です。


【質問】
肥大化の原因を探る方法がわからないので、知っている方がいらっしゃったら教えていただけると大変助かります。
よろしくお願いします。

直し方や、自分はこうしたら改善した等もありましたら教えていただけたら大変助かります。

何卒よろしくお願いします。
ご参考まで。

セーブデータの容量対策とプラグイン(MV限定)
https://fungamemake.com/archives/7442


MZ用のこの類のプラグインは、まったく出揃っていないですね…

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月27日(火) 11:26
by ハイツ
ありがとうございます。
すぐにご回答いただけて嬉しいです。

ムノクラ様のサイト大変参考にさせていただいております。

こちらも参考にした上で、アクターは1人しかいないので最大数を2にしてマップ情報のプラグインのみ入れております。(アクター2を出現条件にテストプレイ用の便利イベントを隠しているので2にしてます)

イベントもなるべくセルフスイッチで次ページやコモンイベントを使用して長くなりすぎないようにしております……

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月28日(水) 09:04
by Plasma Dark
プラグインの競合とも考えましたが、それだと一部の人のみ肥大化するというのが腑に落ちません……
セーブデータに影響する(セーブデータに何か情報を追加する)ようなプラグインを採用していないか、確認してみてはいかがでしょうか。
プラグインも玉石混交で、たまに信じられない処理をしてセーブデータに余計な情報を追加してくるものがあります。

確認の手段は、それこそ使用しているプラグイン全てを読むのが一番確実です。
過去にセーブデータを拡張しているプラグインを洗い出すような開発用のプラグインも作りましたが、使用方法が難しいため、(作っておいてなんですが)おすすめしません。

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月28日(水) 17:03
by WTR
そもそも10ブロックでもそれなりに大きい部類に入る気がするので(5KB = 1ブロックだったような記憶が)
単にそういう仕様のゲームを作っているというだけかもしれません。
たとえばアイテム収集がメインのゲームで
アイテムに個別性能を持たせてかつ大量にアイテムを所持するようなゲームデザインだと
まぁ肥大化もするだろうという話です。YEP_ItemCore がなんかそういう機能を提供するものだと聞いた気がします。

再現状況とかアップデートに関係するとかいうあたりはよくわからないですが…

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月28日(水) 18:04
by ハイツ
Plasma Dark さんが書きました:
プラグインの競合とも考えましたが、それだと一部の人のみ肥大化するというのが腑に落ちません……
セーブデータに影響する(セーブデータに何か情報を追加する)ようなプラグインを採用していないか、確認してみてはいかがでしょうか。
プラグインも玉石混交で、たまに信じられない処理をしてセーブデータに余計な情報を追加してくるものがあります。

確認の手段は、それこそ使用しているプラグイン全てを読むのが一番確実です。
過去にセーブデータを拡張しているプラグインを洗い出すような開発用のプラグインも作りましたが、使用方法が難しいため、(作っておいてなんですが)おすすめしません。

ご回答ありがとうございます!
余計な情報が追加されることもあるのですね……
勉強しながら少しずつ読んでみます。

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月28日(水) 18:09
by しぐれん
URLがあれば調査しに行けるので、ゲームのURLがあると助かります。
ただ、解決策が見つかる保証はありませんけども。

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月28日(水) 18:15
by ハイツ
WTR さんが書きました:そもそも10ブロックでもそれなりに大きい部類に入る気がするので(5KB = 1ブロックだったような記憶が)
単にそういう仕様のゲームを作っているというだけかもしれません。
たとえばアイテム収集がメインのゲームで
アイテムに個別性能を持たせてかつ大量にアイテムを所持するようなゲームデザインだと
まぁ肥大化もするだろうという話です。YEP_ItemCore がなんかそういう機能を提供するものだと聞いた気がします。

再現状況とかアップデートに関係するとかいうあたりはよくわからないですが…

ご回答ありがとうございます!
10ブロックでも重いということで軽量化に努めて参りたいたいと思います。

ただアップデートすると数百ブロックになる場合があるようで10ブロックの比ではなく……

YEP_ItemCoreも重いのですね……今回は使っていませんが、そのような拡張系(?)のプラグインに注視して改めて見てみます。

Re: アツマールでのセーブデータ肥大化

Posted: 2021年4月28日(水) 21:03
by ハイツ
しぐれん さんが書きました:URLがあれば調査しに行けるので、ゲームのURLがあると助かります。
ただ、解決策が見つかる保証はありませんけども。
しぐれん様ありがとうございます!
大変助かります!

URLはこちらになります。
https://game.nicovideo.jp/atsumaru/game ... k_in=users

何卒よろしくお願いいたします。


その後、自分で色々プレイしてアップデートでセーブデータが大きくなる現象にあたりました。

牧場・農場ゲームなのですが、種を蒔いた時に一気に数百ブロックに肥大化しました。

種を蒔くとトリアコンタン様の「ゲーム内時間導入プラグイン」のスイッチタイマーが作動するのですが、それを畑イベント毎に使っている為、その多用が問題なのではと推測しております。

ただ、まだ推測なので見ていただけると大変ありがたいです。

また、こちら使っていないマップやイベントがあるのですが、その分そもそもの容量が重くなるというのは承知しております。

どうぞよろしくお願いいたします。

Re: アツマールでのセーブデータ肥大化

Posted: 2021年5月02日(日) 11:35
by ハイツ
セーブデータ肥大化ですが、自己解決いたしました。
皆様ありがとうございました。

結論としては、やはりトリアコンタン様の時間内導入プラグインのスイッチタイマーの使いすぎでした。

こちらのブログ記事を参考に
http://leeroynto.livedoor.blog/archives/16057544.html
セーブデータの中身を見てそのことが判明しました。

推測ではありますが、一度作動したタイマーの情報が全部セーブデータに保存されるようで、それが一定の数以上になると肥大化するようです。

「アップデート前のセーブデータで肥大化する」というのは、アップデート前からやりこんでいる方の方がタイマーを作動させる回数が多いためその「一定の数」に達しやすいということのようです。

時間内導入プラグインのタイマーをなるべく使わないようゲームを修正する予定です。

ありがとうございました!