【RPGツクールMV】アツマールに投稿するならセーブデータ容量にも気を配ってみよう

アイキャッチ画像 ゲーム制作
スポンサーリンク

こんにちは、slashです。
今回はRPGツクールMVの
セーブデータの容量に関するお話です。

ポイント

RPGアツマールに投稿する場合、
セーブデータの大きさにも多少は気を配った方がいい。

セーブデータの容量を気にする理由

ツクールMV製ゲームのセーブデータ容量は
ゲームの内容にもよりますが、
セーブスロット1つにつき
数KB~数十KB程度とそれほど
大きなファイルではないので、
ゲームをPCにダウンロードしてプレイする分には
この容量のせいで何か問題になることは
あまりないかと思います。

私も
ふりーむ!やベクターなどで
ダウンロードして遊ぶゲームを
公開していた時は、
セーブデータの大きさに気を遣う
ことはありませんでした。

しかし、
RPGアツマールに投稿するとなると
ちょっと話が変わってきます。

容量はカツカツ

RPGアツマールでゲームの
進行状況をセーブすると
「ブロック数」を使用します。

しかし、このブロック数・・・
ニコニコの無料会員だと
あまり最大数が多くないので
いくつかセーブデータを作ってしまうと
すぐに使い切ってしまいます。

そのため、
新しいゲームをやろうとすると
古いゲームのセーブを
消さなければならない!

と、なってしまう事が多いのです。

プレイヤー側でできることといえば・・・

・無駄なセーブデータを作らない
・こまめに不要なセーブを消していく
・ニコニコプレミアム会員(有料会員)になる
(プレミアム会員になると使用できるブロック数が大幅に増える)

といった事になると思いますが、
ゲーム制作者側でも対策できる事はあります。

セーブデータの容量を削減する

スポンサーリンク

制作者側でできる事とは
少ない容量でセーブが
できるように工夫する事です。

特に難しい知識がなくても
ツクールMVのエディターが多少使えれば
できるような方法を紹介していきます。
(私自身、それほど難しい事ができないので簡単な方法しかご紹介できない・・・)

セーブデータに何が含まれているか?

セーブデータには、当たり前の話ですが
ゲームの進行状況の情報が詰まっています。

少し具体例を挙げるとしたら、
アクターのレベルなど、パラメータはどうなっているか?
どんなアイテムをいくつ持っているか?
プレイヤーキャラはどのマップのどの座標にいるのか?
マップ内に配置したイベントの状態はどうなっているか?
変数やスイッチの値はどうなっているか?

などの情報です。
これらの情報をなるべく少なく
済むようにすれば
容量も軽くなっていきます。

実験結果

ここからは実際にどの程度の
容量の差が出るか
実験してみたいと思います。

まず、
容量がどの程度大きくなったか
(小さくなったか)を評価するため、
「基準」となるデータを作りたいと思います。

まずは、
セーブ容量のテスト用に
新しくプロジェクトを作成し、

・アクターは1人(ハロルド)だけ
・装備品、アイテム、スキルは何もなし
・スイッチ、変数はそれぞれ最大数1個だけ
・マップは1個だけ
・マップ内にイベントを1個だけ設置

こんな状態ですね。
草原に立つハロルドです(笑)

草原のハロルド

この状態でセーブします。
するとsaveフォルダにある、
file.rpgsave5528バイトでした。
ここからはこの5528バイトを基準に
比較していきます。

セーブファイル

ちなみに上記の条件でアツマールで
セーブしてみたら容量は3ブロックでした。

ゲーム内スイッチ

ゲーム内スイッチは
ON(true)、OFF(false)の2値しかとらないので
情報量としては少ないです。

エディターの設定ではスイッチは
MAXで5000個まで作れますが
おそらく中短編のゲーム制作で
MAXまで使うことはそう滅多に
ないと思われるので、
とりあえずスイッチは1000個もあれば
大抵は問題なくゲームが作れるかな・・・

という事で最大数を1000個にして
全部ONにしてみました。

この状態でセーブすると、
6144バイト
ちょっと増えましたが、
1000個でこの程度なので、
スイッチについては
あまり気にしなくてもよさそうです。

ゲーム内変数

ゲーム内変数は
整数の値を取るのでスイッチに比べれば
情報量が多くなると思われます。
(スクリプトを使えば、整数に限らず文字列を代入したり配列変数にしたりと色々できます。)
ここでは変数の最大数を500個にして、
それぞれの変数に1~99999999までの乱数を代入して
セーブしてみました。

容量は9000バイト前後
(乱数の結果次第で多少ブレる)
やはりスイッチよりは大きくなってしまいます。

アツマールでセーブしたら5ブロックでした。

アクター

アクターは、顔グラフィック
歩行グラフィック、名前、職業、スキル、
装備品、レベル、HP・・・
などなど多くの情報を含んでいるので
容量も大きいのではないか?
そんな気がしてきます。

そこで、
今度はアクターのハロルドを量産して
ハロルド4人パーティーでセーブしてみました。

ハロルド4人

容量は7604バイト
アクター4人程度なら
そこまで深く気にすることもなさそうです。

ただ、アクターを大量に作ってしまうと
セーブデータも肥大化しそうです。

ゲームによっては
どうしてもアクターの数が必要に
なる場合もありますが、
そうでなければ、
無駄に作りすぎないように
意識しておいた方が良いでしょう。

マップ内のイベント数

セーブした時、
同じマップ内に設置したイベント
容量に影響します。

そこで、マップ内に
中身空っぽのイベントを20体並べて
セーブしてみます。
すると、容量は11616バイト

イベント20体

イベントを大量に設置してしまうと
容量が増加してしまうようです。
もし、マップ内にいらないイベントを
設置したままにしているなら
削除した方がよさそうです。

イベントの途中でセーブ

ツクールMV製のゲームでは

・メニューを開いてセーブ
・イベント内でセーブ画面を呼び出してセーブ

デフォルトの機能では
この2つの方法でセーブができますが、
イベント内でセーブする場合は
同じイベントページ内にあるコマンドも
容量に影響してきます。

そこで、
次のようなイベントを作成します。

セーブイベント

話しかけると「セーブ画面を開く」が
実行されてセーブができる。
ただそれだけのイベントです。
これでセーブすると
容量は5472バイトでした。

では次にこのイベントに
「注釈」を大量に付け加えてみます。

注釈追加

注釈を1000行ほど、無駄に付け加えました。
これでセーブすると
容量は17616バイトでした。

注釈を挿入しただけで
容量が増加してしまいました。

長いイベントページの途中で
セーブしてしまうと
容量の増加につながる
ので
覚えておくと良いでしょう。

どうしても長いイベント途中で
セーブしなければならない場合は
セーブ以外のイベント処理をなるべく
コモンイベントにまとめてしまえば
容量を抑えられます。

色々書く
コモンでまとめる
コモンイベントでまとめれば容量を抑えられる

「セーブ画面を開く」ほか
プラグインコマンドでイベント中に
セーブする場合も同様に気をつけて
おいた方がよさそうです。

スポンサーリンク

どの程度まで削減できればいいか?

ここから先は完全に私個人の独断と偏見です。
あくまで参考程度と思ってください。

私としては、
RPGアツマールでセーブするとき
セーブファイル1個につき
10ブロック以内
に抑えて
くれたらありがたいな、
と思っています。

もちろん
セーブに必要なブロック数が
5ブロックとか3ブロックで済むなら
その方が嬉しいです。

しかし、ここまで散々
セーブ容量について書いておいて
こんな事言うのもなんですが、
ブロック数削減にあまり
注力しすぎるのも良くないかもしれません。

容量削減について
まだまだ追求する余地はあるかと思いますが、
そこを気にするあまり
ゲームの内容自体が薄くなってしまったら
本末転倒というものです。

たとえブロック数が10を超えていようとも
肝心のゲームが十分に魅力的なら
アリだと思います。

私個人の意見としては
容量が極端に大きくならないように
配慮する程度でいい

という感じです。

「容量をガッツリ削減するぞ!」
というよりは
「容量が大きくなりすぎないように気をつけよう」
という心構えでいいんじゃないかと
思っています。

すたーちゃん
すたーちゃん

まぁ要するに
セーブ容量に気を遣うのも
「ほどほどに」ってコトで

コメント

タイトルとURLをコピーしました