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

ハイツ
記事: 9
登録日時: 2020年11月17日(火) 21:17

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

投稿記事by ハイツ » 2021年4月27日(火) 10:45

ゲームアツマール(旧RPGアツマール)でブラウザゲームとしてゲームを公開しております。


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

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

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


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

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


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

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


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

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

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



______________

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

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

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

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

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

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

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

皆様ありがとうございました!
最後に編集したユーザー ハイツ on 2021年5月02日(日) 14:39 [ 編集 4 回目 ]

アバター
ムノクラ
記事: 2011
登録日時: 2018年2月23日(金) 11:41
連絡を取る:

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

投稿記事by ムノクラ » 2021年4月27日(火) 11:06

ハイツ さんが書きました:ゲームアツマール(旧RPGアツマール)でブラウザゲームとしてゲームを公開しております。


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

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

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


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


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

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


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

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

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


ご参考まで。

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


MZ用のこの類のプラグインは、まったく出揃っていないですね…
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
ハイツ
記事: 9
登録日時: 2020年11月17日(火) 21:17

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

投稿記事by ハイツ » 2021年4月27日(火) 11:26

ありがとうございます。
すぐにご回答いただけて嬉しいです。

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

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

イベントもなるべくセルフスイッチで次ページやコモンイベントを使用して長くなりすぎないようにしております……
アバター
Plasma Dark
記事: 676
登録日時: 2020年2月08日(土) 02:29
連絡を取る:

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

投稿記事by Plasma Dark » 2021年4月28日(水) 09:04

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


セーブデータに影響する(セーブデータに何か情報を追加する)ようなプラグインを採用していないか、確認してみてはいかがでしょうか。
プラグインも玉石混交で、たまに信じられない処理をしてセーブデータに余計な情報を追加してくるものがあります。

確認の手段は、それこそ使用しているプラグイン全てを読むのが一番確実です。
過去にセーブデータを拡張しているプラグインを洗い出すような開発用のプラグインも作りましたが、使用方法が難しいため、(作っておいてなんですが)おすすめしません。
アバター
WTR
記事: 560
登録日時: 2015年12月22日(火) 19:14

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

投稿記事by WTR » 2021年4月28日(水) 17:03

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

再現状況とかアップデートに関係するとかいうあたりはよくわからないですが…
Twitter、はじめました。
https://twitter.com/wtr_in_reverie/
ハイツ
記事: 9
登録日時: 2020年11月17日(火) 21:17

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

投稿記事by ハイツ » 2021年4月28日(水) 18:04

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


セーブデータに影響する(セーブデータに何か情報を追加する)ようなプラグインを採用していないか、確認してみてはいかがでしょうか。
プラグインも玉石混交で、たまに信じられない処理をしてセーブデータに余計な情報を追加してくるものがあります。

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



ご回答ありがとうございます!
余計な情報が追加されることもあるのですね……
勉強しながら少しずつ読んでみます。
アバター
しぐれん
記事: 974
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

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

投稿記事by しぐれん » 2021年4月28日(水) 18:09

URLがあれば調査しに行けるので、ゲームのURLがあると助かります。
ただ、解決策が見つかる保証はありませんけども。
現在、プラグイン依頼はお休み中です。
ハイツ
記事: 9
登録日時: 2020年11月17日(火) 21:17

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

投稿記事by ハイツ » 2021年4月28日(水) 18:15

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

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



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

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

YEP_ItemCoreも重いのですね……今回は使っていませんが、そのような拡張系(?)のプラグインに注視して改めて見てみます。
ハイツ
記事: 9
登録日時: 2020年11月17日(火) 21:17

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

投稿記事by ハイツ » 2021年4月28日(水) 21:03

しぐれん さんが書きました:URLがあれば調査しに行けるので、ゲームのURLがあると助かります。
ただ、解決策が見つかる保証はありませんけども。


しぐれん様ありがとうございます!
大変助かります!

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

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


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

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

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

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

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

どうぞよろしくお願いいたします。
ハイツ
記事: 9
登録日時: 2020年11月17日(火) 21:17

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

投稿記事by ハイツ » 2021年5月02日(日) 11:35

セーブデータ肥大化ですが、自己解決いたしました。
皆様ありがとうございました。

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

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

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

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

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

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

“MV:質問” へ戻る