見出し画像

ティラノスタジオの作業ウインドウがいつの間にか小さくなったときの解決方法

ティラノスタジオを使用して開発していると、気が付くと起動時にティラノスタジオのウインドウが小さくなっていくことはありませんか?


極端な例だとこんな感じ

ウインドウを手動で広げたら普通に使えるようになりますが、起動の度にいちいちウインドウの端っこをつまんでグイっと引っ張るのも面倒ですよね。

仕組みとしては、TyranoStudio.exeを起動時に読み込まれる(同一フォルダー内に存在する)appConfig.jsonの中にウインドウの大きさが保存されているのですが、どうやらこの数字が特定の操作で小さくなっていく模様。

開発中に別のプロジェクトに切り替えたり、なんやかんや操作を行うたびに、この数字が小さくなることで次回起動時のウインドウサイズも小さくなっていくと言った感じです。

多分バグなのでいつかは修正されるとは思いますが、今不便!って方の為に解決方法を置いておきます。

修正用の実行ファイル

まずはこちらを置いておきます。

Windowsのみ使用可能です。Macは動作確認する術を持っていないのでごめんなさい。

TyranoStudioResizing.zipをダウンロードしたら展開後のTyranoStudioResizing.exeをTyranoStudio.exeと同じフォルダーに置いてください。

その後にTyranoStudioResizing.exeを実行すると、あら不思議!
小さくなる前の本来の大きさでティラノスタジオが立ち上がります。

※あくまで自己責任でご利用ください。

以下ソース

using System;
using System.IO;
using System.Diagnostics;
using System.Windows;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;

    static void Main()
    {

        const string file = "appConfig.json";
        const string exe = "TyranoStudio.exe";
        const int height = 640;

        try
        {
            // 実行ファイルと同一のフォルダーにあるinput.jsonを読み込む
            string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, file);
            string json = File.ReadAllText(filePath);

            // JSON文字列をJObjectに変換する
            JObject jObject = JObject.Parse(json);

            // windowノードのheightプロパティを変更する
            JToken heightToken = jObject.SelectToken("window.height");
            heightToken.Replace(height);

            // JSON文字列を整形しないで生成する
            JsonSerializerSettings settings = new JsonSerializerSettings
            {
                Formatting = Formatting.None
            };
            string outputJson = JsonConvert.SerializeObject(jObject, settings);

            // 変更されたJObjectをファイルに上書きする
            File.WriteAllText(filePath, outputJson);

            // TyranoStudio.exeを起動する
            string exePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, exe);
            if (File.Exists(exePath))
            {
                Process.Start(exePath);
            }
            else
            {
                // ねーよ
                MessageBox.Show(exe + "が見つかりませんでした。");
            }
        }
        catch (FileNotFoundException ex)
        {
            // jsonが見つからなかった場合
            MessageBox.Show(ex.Message);
        }
        catch (IOException ex)
        {
            // jsonの読み書きに失敗した場合
            MessageBox.Show(ex.Message);
        }
        catch (Exception ex)
        {
            // その他
            MessageBox.Show(ex.Message);
        }
    }

よくわかんねー奴の作った実行ファイルなんぞ信頼できるか!って場合でプログラミングのできる方は上記のソースを焼くなり煮るなりしてください。

手動で修正する場合

上記ツイートを参考にしてください。
ちなみにツイートだと700に設定していますが、デフォルトの高さは640でした。

ただしこの方法で修正しても、いずれまた小さくなっていきます。
前述の実行ファイルは、ティラノスタジオを起動する前に高さを640に設定した後に起動させるという動作を行っています。

以上、ティラノスタジオのウインドウサイズを戻す方法でした。
設定ファイルを操作することになるので、一度バックアップなどを取ってから試すなどして、慎重に行ってください。

なんだか説明を見てもよくわからない、自信がないって方には非推奨です!
公式が修正するまで素直に待ちましょう。

ゲームを楽しんで貰えたり、記事やプラグインがお役に立てましたらサポート(投げ銭)を頂けると幸いです!