先日はMZの初期プロジェクトを作成し、それをgitで管理しました。
スタートは順調に思えたのですが、ここで1つ問題に遭遇します。
自動で更新されるあの1行のJSONファイルをどうするか?
MZの編集画面でプロジェクトを保存すると、必ず更新されるのがdata/System.jsonです。
差分を見てみると一行になったながーいJSONになっており、パッと見では何が更新されているのか分かりません。
整形ツールを使って差分を取ってみると、versionIdが更新されています。
- "versionId": 52902226,
+ "versionId": 80598927,
Idは保存する度にコロコロと変わります。これはツクールの仕様上仕方のないことだと思います。
ですが、versionId以外にも大事なデータが入っており、エディタ編集した内容の差分を確認するには1行JSONはあまりにも使い勝手が悪いです。
さて、ここからどうしましょうか?
ネット上でもこのような課題はあるようで、調べてみると知見や対策を述べている方がいらっしゃいました。
versionIdはなんとかできそうみたいですが、1行JSONは今のトコロどうにもならない状態みたいだったので、ここからは自分で考える必要があります。
まずJSONが一行で保存されていることが一番のポイントです。
(versionIdはツクールの仕様なので、ここは変わっても仕方がない)
さらに、ファイル変更はエディタ側で監視されていることです。
変更がある場合は、「リロードをしますか?」と確認画面がでてきます。
優秀だな!おい!

なので外部からプロジェクトファイルに対して変更を加えるのは、あまり得策ではなさそうです(公式ツールなどで編集したデータファイルの一括インポートなどは除く)
OSがMacだと、確認画面が出ると下のアイコンがポンポンと跳ねます。
問題を整理すると、
- JSONファイルが1行で保存されている
- プロジェクトのファイルはエディタ側で監視されている
- プロジェクトファイルを外部ツールから直接書き換えるのは得策ではない
ということになります。
正直なトコロ、もう面倒くさくなってきました。
ゲーム開発以外のところで労力をバリバリと使っていますw
この部分は諦めて、ゲーム開発を進めてしまおうかな、、、と思ってしまいます。
もちろん、それは選択肢の一つで正しいです。
大事なのはゲームを完成させるコトなのですから!
でも、自分はこのままではなんとも気持ちが落ち着きません、、、
だからブログのタイトル通り、ゲームが永遠に完成しないのでしょう(笑)
愚痴っぽさが入り少し脱線しましたが、1つ対応策を思いつきました。
どんな方法でしょうか?
それは編集用のリポジトリとコミット用のリポジトリを分けることです。
は?ナニ言ってんの?
まぁ、、、そうですよね。
自分もgitでこんな使い方したことありません。
たぶん、うまくいくと思います。
きっと、うまくいくと思います。
うまくいくといいなぁ、、、
ということで、今回はここまでにします。
次回は対応策について書きたいと思います。
