簡単にゲーム開発するための書籍、無料プレゼント中!!

デバッグ効率化にも!吉里吉里Z上でコンソールを表示させる方法

デバッグ効率化にも!吉里吉里Z上でコンソールを表示させる方法
[temp id=2]

 

吉里吉里Zでは、

吉里吉里2にあったコンソールウィンドウや

デバッグコントローラがなくなったので、

 

かがや
かがや

代わりに何を使ったらいいの??

 

と思われている方も多いのではないでしょうか?

 

かくいう私も、

ゲームが想定通り動かない時

とても重宝していた機能だったので、、、

 

吉里吉里Z上でも、

できるようにならないか

今回試してみました!

 

吉里吉里Zでコンソールウィンドウを表示する方法

今回導入するのは

Krkr2Compat」というツールです。

こちらからダウンロードできます。

 

ダウンロードしたら解凍しておきましょう。

 

 

次に「win32dialog.dll」を

こちらからダウンロードします。

 

先程解凍したフォルダ内にも

 

「data」→「k2compat」→「win32dialog.dll」

 

が入っているのですが

こちらだとエラーが出てしまうため

別途、旧吉里吉里2のレポジトリから

ダウンロードしてくる必要があります。

 

ダウンロード先にいくと

ファイル一覧が表示されているので

その中から「win32dialog.dll」をクリック。

 

吉里吉里Z「k2compat」のダウンロード

 

 

その後、「Download」をクリックして

ダウンロードしてきましょう。

 

吉里吉里Z「k2compat」のダウンロード

 

ダウンロードが終わったら

元々入っていたファイル

 

「data」→「k2compat」→「win32dialog.dll」

 

へ上書きします。

 

 

ここまで終えたら

あとは設定していきます!

 

設定手順は、基本的には

00README.txt」の通りなのですが

一部、手順の変更が必要でしたので

そちらも併せて説明していきますね(^^)

 

まず下記3つのプラグイン

 

  • menu.dll
  • KAGParser.dll
  • win32dialog.dll

 

を、pluginフォルダなどへ配置しておきます。

 

「menu.dll」と「KAGPArser.dll」は

元々plugin内に入っているかと思いますが

「win32dialog.dll」は入っていないかと思いますので

前の手順でダウンロードした

「win32dialog.dll」を入れておきます。

 

 

次に「startup.tjs」の中身を変更します。

 

吉里吉里Zプロジェクト内

 

「data」→「starup.tjs」

 

を開きましょう。

 

ここでのやり方は

00README.txt」で何通りか紹介されていますが

私は「k2compatフォルダを配置する場合」で

設定をしました。

 

なので下記の通り、追記します。

@if (kirikiriz)
property _dummyProp { getter {} setter (v) {} }
with(Window) {
&.innerSunken = &_dummyProp;
&.showScrollBars = &_dummyProp;
}

var base = "k2compat/";
Scripts.execStorage(base+"k2compat.tjs");
Krkr2CompatUtils.scriptBase = base;

Plugins.link("menu.dll");
Plugins.link("KAGParser.dll");
@endif

↑ハイライト部分が追記部分です

 

00README.txt」では

設定は以上となっていますが、

このままですとエラーが起きてしまいますので

修正を加えます。

 

「startup.tjs」内にある

Plugins.link("menu.dll");
Plugins.link("KAGParser.dll");

をコメントアウトしましょう。

 

これでエラーが起きなくなります(^^)

 

なお、エラーが起きる原因について

開発者の方に質問したところ

「k2compat.tjs」をロードした後に

手動でmenu.dllをリンクすると問題が発生する

とのことでした。

 

 

最終的な「startup.tjs」の中身は

下記の通りです。

@if (kirikiriz)
property _dummyProp { getter {} setter (v) {} }
with(Window) {
&.innerSunken = &_dummyProp;
&.showScrollBars = &_dummyProp;
}

var base = "k2compat/";
Scripts.execStorage(base+"k2compat.tjs");
Krkr2CompatUtils.scriptBase = base;
//Plugins.link("menu.dll");
//Plugins.link("KAGParser.dll");
@endif

 

 

最後に「Krkr2Compat」フォルダを

吉里吉里Zプロジェクト内

「data」フォルダ下へ配置しましょう。

 

下記のようなフォルダ構成になります。

 

吉里吉里Z「k2compat」フォルダ構成

 

 

 

 

 

ここまで出来たら

ゲームを起動してみます!

 

起動する場合は、

使用する「win32dialog.dll」が32bit 版のdllのため

32bit版の「tvpwin32.exe」を使用します。

 

「tvpwin32.exe」をダブルクリックでゲームを起動、

その後「Shift+F4」を押すと

吉里吉里Z上でコンソールが表示されるようになります!

 

吉里吉里Z上でのコンソールウィンドウ

 

 

コンソール上でのデバッグ方法

コンソール上では

エラーメッセージの確認はもちろん、

変数の値も確認することができます。

 

やり方は主に

 

  • コンソールウィンドウ上で入力する方法
  • traceタグを使用する方法

 

の2通りあります。

 

1.コンソールウィンドウ上で入力する方法

コンソールウィンドウ上の入力欄

 

吉里吉里Z上でのコンソールウィンドウ

 

 

 

 

に確認したい変数の値を入力します。

 

例えば、

変数「f.flag1」の値を確認したい場合

入力欄に「flag1」と入力してEnterを押すと

 

吉里吉里Z上でのコンソールウィンドウ

 

 

 

 

のように、値が出力されます。

 

また、入力欄で

f.flag = 100

のように入力し、Enterを押すと

変数の値を一時的に書き換えることも可能です。

 

2. traceタグを使用する方法

シナリオファイル内に予め、

traceタグを記述しておくやり方でも

値の確認は可能です。

 

書き方は

[trace exp="変数名"]

のように書けばOKです。

 

試しに、前の例に挙げた

「f.flag1」でやってみましょう。

 

traceタグを使用すると、

下記のように出力されます。

 

吉里吉里Z上でのコンソールウィンドウ

 

 

 

 

今回紹介させて頂いた

「Krkr2Compat」を導入すると

吉里吉里Zでのデバッグがぐっとやりやすくなるので

ぜひ試してみてくださいね(^^)♪

 

 

末筆となりますが、

エラー解決について、迅速にご対応頂いたmiahmieさまに

深くお礼を申し上げます。

ありがとうございましたm(_ _*)m

 

[temp id=4]

<ノベルゲーム、恋愛ゲームをつくる人必見!>

個人ゲーム開発歴6年&
元大手ゲーム会社プランナーの
かがやの知識を詰め込んだ
ゲーム開発の攻略本

『ノベル&恋愛ゲーム開発スタートBOOK』
期間限定無料プレゼント中!

ノベル・恋愛ゲーム開発スタートBOOK

「ゲーム開発って何をしていけばいいの?」
「ゲーム開発をかんたん・効率的に進めるためには?」
「今から開発を始めたらいつ頃完成できる?」

etc…

そんな疑問がこれ一冊で丸わかり