コンテンツにスキップ

標準ツール

標準ツールについて

吉里吉里Z には、ゲームの素材作りや配布の準備に使う標準ツールが付属しています。 吉里吉里2 の付属ツール (Releaser・画像フォーマットコンバータ・ループチューナなど) の後継で、 Windows / Linux / macOS で動きます (リリーサだけは Windows 専用です)。

ツール 実行ファイル 用途
xp3 アーカイブツール krkrxp3 フォルダを xp3 アーカイブにまとめる・中身の一覧・展開・検証
キー・署名ツール krkrsign 署名用の鍵の作成、配布ファイルへの電子署名、署名の検証
ファイル破損チェックツール krkrcheck エンドユーザの環境で、配布ファイルの破損を署名から調べる
画像フォーマットコンバータ krkrimg BMP / PNG / JPEG / TLG / PSD / CLIP を TLG5・TLG6 などへ変換、PSD・CLIP のレイヤ書き出し
音声フォーマットコンバータ krkraudio WAV / Ogg Vorbis / Ogg Opus の相互変換、音量の調整と測定
ループチューナ krkrloop 波形を見ながら、ループ情報 (.sli) のリンクとラベルを編集・試聴する
リリーサ krkrrelease 配布用の実行可能ファイルを作る (起動オプション・アイコン・バージョン情報の埋め込み、xp3 の結合、署名)。Windows 専用

レンダリング済みフォント (.tft) は、ツールではなく tftSave プラグインで作ります (レンダリング済みフォントデータの作成)。

入手方法

ツールのソースは krkrz_tools リポジトリにあり、 吉里吉里Z の開発用リポジトリ (krkrz_dev) には src/tools/krkrz_tools として含まれています。

krkrz_dev で本体をビルドすると、ツールも一緒にビルドされ、make install で インストール先の tools/ フォルダに置かれます。

make prebuild
make
make install          # bin/<プリセット>/Release/tools/ にツールが入る
  • ツールは、それぞれ実行ファイル 1 本で動きます (DLL などを一緒に置く必要はありません)
  • ツールをビルドしない場合は CMAKEOPT='-DKRKRZ_BUILD_TOOLS=OFF' を付けて make prebuild します
  • krkrz_tools を単体でビルドすることもできます (手順は krkrz_tools の README を参照)

Note: ツールはデスクトップ (Windows / Linux / macOS) 用です。Android / iOS / ブラウザ版ではビルドしません。

画面での使い方

ツールの実行ファイルを (引数なしで、またはファイルやフォルダを引数にして) 起動すると、 ブラウザのウィンドウで画面が開きます。ツールの画面は実行ファイルに埋め込まれているので、 インターネットへの接続は要りません。画面を閉じるとツールも終了します。

  • 画面はツール自身が手元 (127.0.0.1) で動かしているサーバが配っています。外部からは接続できません
  • ファイルやフォルダは、画面の «参照…» で選びます

コマンドラインでの使い方

どのツールも、--cli を付けると画面を開かずにコマンドラインで処理して終了します。 一括処理やビルドの自動化に使えます。

krkrxp3 --cli pack data --out=release/data.xp3
krkrimg --cli convert images/*.png --out=converted --opaque=tlg5 --alpha=tlg6
krkrloop --cli check bgm/*.ogg
  • 値を取るオプションは --名前=値 の形で書きます (--out=dir。--out dir は不可)
  • --help でオプションの一覧を表示します
  • 結果を機械で処理したいときは、多くのコマンドで --json が使えます
  • 進捗は標準エラーに表示されます (端末のときだけ。パイプやリダイレクトでは表示しません)。--quiet で止められます
  • 終了コードは、ツールごとに «0 = 成功、それ以外 = 問題あり・失敗» です。詳しくは各ツールのページを参照してください

開発者向けの起動オプション

ツールの画面を改造するときに使うオプションです。通常は使いません。

  • --web-root=フォルダ: 埋め込みの画面の代わりに、指定したフォルダの画面を使います
  • --no-embedded: 埋め込みの画面を使わず、カレントフォルダの web/ などを探します
  • --browser=none --port=N: ブラウザを開かずに、指定したポートで画面のサーバだけを動かします