ページ 11

【解決済み】セーブファイルの名前を変更したい

Posted: 2024年6月01日(土) 18:59
by ちきぼん
現在制作しているゲームのセーブファイル名を変更したいです。

こちら↓
https://jadetea-sui.fanbox.cc/posts/3220444
の「◆セーブ名の変更方法」を参考にしながら奮闘したのですが、私が今使っているのがMVではなくMZなので、rmmz_windows.jsをメモ帳で開いて「Window_SavefileList.prototype.drawGameTitle = function(info, x, y, width)」など検索しても出てきません。

一応こちら↓
https://note.com/arixtkool/n/n3c9e28acbf0a
も参考にしてみましたが、コアスクリプトが更新されるたびに元に戻ってしまうとのことだったので、日記最後のプラグインを導入させて頂いたところゲームが動作しなくなります。

下手にいじってバグったことがあるので、ここでご質問させて頂きました。
ちなみに「AltSaveScreen.js」は導入しております。
ゲームタイトルが表示されるので、進行度やマップの名前に変更したいです。

もしよければお力添えお願い致します。

Re: セーブファイルの名前を変更したい

Posted: 2024年6月01日(土) 22:05
by Plasma Dark
有楠さんの記事は手順がわかりやすくまとまっています。
記事では、AltSaveScreen.jsを書き換え、末尾のリンク先にあるプラグインを導入し、ゲーム内で対応する変数を操作してセーブ画面に表示する文字列を変更しています。

さて、記事からリンクされているプラグインは、global.rmmzsaveに含めるセーブファイル情報を組み立てるときに、その内容に変数の値を追加するというものです。
これを導入してゲームが動作しなくなるというのがどういう状況であるのか、読み手からはいまいち想像がつかないので、ここを詳細にご説明いただけると解決策が見えてくるかもしれません。

確認すべきは2点です。

1. プラグインが正しく導入できているかどうか
2. ゲームが動作しないとはどういうことか

順番に説明します。

1. プラグインが正しく導入できているかどうか

対象のプラグインはサンプル実装のため、説明などのヘッダ情報を全く書いておらず少しわかりにくい部分がありましたので、そこだけ更新しました。(プラグインとしての挙動は全く変わりません)
Rawボタンを右クリックして対象をファイルに保存し、プロジェクトのjs/pluginsフォルダに入れます。
RPGツクールMZのプラグイン管理に、対象のプラグインがちゃんと表示されているでしょうか。
プラグインリストのスクリーンショットがあると回答者との間に認識の相違が生じにくくなります。
Windows OSの場合、Shift + Windows + Sでスクリーンショットを取ることができますので、活用してみてください。

2. ゲームが動作しないとはどういうことか

動作しないとだけ書かれても、読み手には状況が伝わりません。
テストプレイの起動時に何か起きているのでしょうか。

エラーメッセージが表示されている場合、その内容はどんな問題が起きたかを端的に表してくれています。
スタックトレースがあると、なお原因がわかりやすいですね。

https://fungamemake.com/archives/12097

Re: セーブファイルの名前を変更したい

Posted: 2024年6月01日(土) 22:11
by すおう
書こうと思ったら先に書かれていたので1つだけ
マップ名は以下のスクリプトで取得できます

コード: 全て選択

$gameMap.displayName()

Re: セーブファイルの名前を変更したい

Posted: 2024年6月02日(日) 16:43
by ちきぼん
Plasma Dark さんが書きました:有楠さんの記事は手順がわかりやすくまとまっています。
記事では、AltSaveScreen.jsを書き換え、末尾のリンク先にあるプラグインを導入し、ゲーム内で対応する変数を操作してセーブ画面に表示する文字列を変更しています。

さて、記事からリンクされているプラグインは、global.rmmzsaveに含めるセーブファイル情報を組み立てるときに、その内容に変数の値を追加するというものです。
これを導入してゲームが動作しなくなるというのがどういう状況であるのか、読み手からはいまいち想像がつかないので、ここを詳細にご説明いただけると解決策が見えてくるかもしれません。

確認すべきは2点です。

1. プラグインが正しく導入できているかどうか
2. ゲームが動作しないとはどういうことか

順番に説明します。

1. プラグインが正しく導入できているかどうか

対象のプラグインはサンプル実装のため、説明などのヘッダ情報を全く書いておらず少しわかりにくい部分がありましたので、そこだけ更新しました。(プラグインとしての挙動は全く変わりません)
Rawボタンを右クリックして対象をファイルに保存し、プロジェクトのjs/pluginsフォルダに入れます。
RPGツクールMZのプラグイン管理に、対象のプラグインがちゃんと表示されているでしょうか。
プラグインリストのスクリーンショットがあると回答者との間に認識の相違が生じにくくなります。
Windows OSの場合、Shift + Windows + Sでスクリーンショットを取ることができますので、活用してみてください。

2. ゲームが動作しないとはどういうことか

動作しないとだけ書かれても、読み手には状況が伝わりません。
テストプレイの起動時に何か起きているのでしょうか。

エラーメッセージが表示されている場合、その内容はどんな問題が起きたかを端的に表してくれています。
スタックトレースがあると、なお原因がわかりやすいですね。

https://fungamemake.com/archives/12097



Plasma Dark様


回答頂きありがとうございます。
私が無知故にお手を煩わせてしまい申し訳ないです。
また、プラグインの更新もありがとうございます。先ほど新たに導入させて頂きましたところ、エラーが表示されなくなりました。

エラーにつきましても説明不足で申し訳ないです。
昨日まで起こっていたエラーは以下のような感じです(エラー時のスクショが用意出来ておらず分かりにくいかもしれません…)


1、プラグインを導入すると「このプラグインは動作しない可能性があります」と表示されました。
現在は無事導入することが出来ております、ありがとうございます!
1.png

2、ゲームを起動してみると画面上にエラーの文字が出てゲーム自体起動出来なくなる。
どういった英文だったかちゃんと覚えてないのですが、多分プラグインが読み込めないというエラーだと思います。
調べてみたところ、多分ですが「TypeError Cannot read property '〇〇 of undefined」と出たのだと思います。

Plasma Dark様がプラグインを更新して下さったので、もう一度有楠様の記事を見ながらセーブファイルを理想の形に近づけたいと思います!
ありがとうございます!

Re: セーブファイルの名前を変更したい

Posted: 2024年6月02日(日) 16:45
by ちきぼん
すおう さんが書きました:書こうと思ったら先に書かれていたので1つだけ
マップ名は以下のスクリプトで取得できます

コード: 全て選択

$gameMap.displayName()

すおう様

スクリプトありがとうございます!とても嬉しいです!
早速実装させて頂きまして、無事に理想の形にすることが出来ました!

1つ気になることがあるのですが、「序章 マップ名」と表示するにはどのように記入すればいいのでしょうか?
一応シングルクォーテーションで「'序章-'」と表記しその後ろに「&&$gameMap.displayName()」とスクリプトに記入してみたのですが、マップ名しか表示されないので私の処理の書き方が間違っているのかと思います。

お手を煩わせてしまい申し訳ありませんが、どうかよろしくお願いします。

Re: セーブファイルの名前を変更したい

Posted: 2024年6月02日(日) 17:38
by すおう
& で文章繋げるのはエクセルとかですかね
javascriptなら + ですね

"序章-" + $gameMap.displayName()

" "と' 'はどっちでもいいと思います。

・・・よく見たら && だった。これは論理積だから使い道がそもそも違いますね
条件用に使うやつです。 if(a && b){} はaとbがどちらもtrueであるときのみ{}の中が実行される、とかです

Re: セーブファイルの名前を変更したい

Posted: 2024年6月02日(日) 19:48
by Plasma Dark
+で文字列を結合することも可能ですが、テンプレートリテラルを覚えると+で結合するよりも直感的に書けるのでオススメです。
https://developer.mozilla.org/ja/docs/W ... e_literals

コード: 全て選択

`序章-${$gameMap.displayName()}`
こんな感じの書き方ができます。

Re: セーブファイルの名前を変更したい

Posted: 2024年6月02日(日) 22:50
by ちきぼん
すおう さんが書きました:& で文章繋げるのはエクセルとかですかね
javascriptなら + ですね

"序章-" + $gameMap.displayName()

" "と' 'はどっちでもいいと思います。

・・・よく見たら && だった。これは論理積だから使い道がそもそも違いますね
条件用に使うやつです。 if(a && b){} はaとbがどちらもtrueであるときのみ{}の中が実行される、とかです

すおう様、ありがとうございます!!

わ、私としたことが、一応javascript勉強したのに「+」も分からないなんて・・・汗
&&はif用だったんですね!勉強になりました!

セーブ画面が理想の形になり、大変感謝しております!本当にありがとうございました!!

Re: セーブファイルの名前を変更したい

Posted: 2024年6月02日(日) 22:53
by ちきぼん
Plasma Dark さんが書きました:+で文字列を結合することも可能ですが、テンプレートリテラルを覚えると+で結合するよりも直感的に書けるのでオススメです。
https://developer.mozilla.org/ja/docs/W ... e_literals

コード: 全て選択

`序章-${$gameMap.displayName()}`
こんな感じの書き方ができます。


Plasma Dark様、ありがとうございます!!

テンプレートリテラル、プログラミング学習で習いましたがとっても苦手でちゃんと理解出来ておりませんでした・・・リンク先ご紹介下さりありがとうございます!勉強になります!

すおう様、Plasma Dark様のおかげで無事理想のセーブ画面にすることが出来ました!
これで今年中にゲームを出す目標にまた一歩近づけます!本当にありがとうございました!