TRPGスタジオでリプレイ動画を作る6
処理の自動化マクロを作成
画像・BGM(SE)ファイルのリネーム過剰記述の削除シナリオファイルの分割・1・2プレビューしやすい一工夫
プレビューしながら余計なものや時間を削る
演出に必要なものを付け加える
動画再生のための一工夫
プレビューを自動撮影
おまけ:外部ツールでさらに演出アップ
あとは自由にやれ!!
といったところまで来ました。
事実そうなのですが、最後にプレビュー周りを楽したいと思います。
ちなみに、ティラノスクリプト及びスタジオはHTMLのように
その箇所を修正したら即プレビューでリアルタイムに反映!
みたいなのはありません。
(※HTMLで画面構成してる時は除く。)
一応、そのシナリオを読み込む前なら反映しますが基本的には
プレビューウィンドウを閉じてスタジオ側から「ゲーム再生」を押すか、
プレビューウィンドウの「リロード」を押すのが基本的です。
[jump]や[call]や[sleepgame]でシナリオを再読み込みしてもその間に修正したものは反映されませんでした。
さて、基本的にここからは
プレビューを見る→修正箇所を発見する→コードを修正する→最初に戻る←
になります。
有志が作った拡張機能
先に楽できる(かもしれない)プラグインをご紹介します。
[s]で止めて、ラベル(*string)があり、[p]で進むような極一般的なADVの時
真価を発揮します。
ただやはり、プラグインやマクロなど事前に読込みを終えていないと
ジャンプ先でエラーになります。
また、ラベルまでに表示させる背景やキャラクターなどはラベルジャンプ
した場合表示されません。
そのシナリオの冒頭にジャンプした後、読み進めたいところまでを
「ここまでスキップ」で定めて進める必要がありそうです。
そのスキップも[wait]の数値で止まります。
例えるなら
;(tes4に今回は飛びたい)
;[jump storage="scene1.ks" target="*tes1"]
;[jump storage="scene1.ks" target="*tes2"]
;[jump storage="scene1.ks" target="*tes3"]
[jump storage="scene1.ks" target="*tes4"]
デバッグの度コードを書き換えて見ていたものを
ボタン一つでジャンプできちゃうというものですね。
ただこちらも、修正を即反映させるという機能はないです。
上記は全てコードで記入することができます。
そのコード記入をボタンで視覚的に行うことができる。
というのが、平たく言うとこの拡張機能なのだと思います。
ただ、コード記入以上の事はできないっぽいです。
スクリプトコンバーター
ティラノスタジオ(Pro版)で使えるスクリプトコンバーターを作りました。
インポートした後に不必要手順部分は削除できるので都合に合わせて使ってください。
なお、TRPGスタジオのログそのままの状態を想定して作ってます。
Atom置き換え機能
他のエディタでも多分大体同じだと思います。
正規表現で置き換えます。
使うことが多いだろう方法だけ書きます。
↑わかるようになると一番わかりやすかった記事
特定のタグの特定のパラメータを選択する
[playbgm storage="music.mp3" time="1000" volume="50" loop="true"]
;↑のtime="1000"のみを選択します。
;^\[playbgm.* で範囲選択
;time=".*?" 範囲内のtime=" "を選択
結果:
特定のタグのパラメータを入れ替える
[chara_show storage="chara/GM/07.png" left="38" top="338" time="1000" wait="true" zindex="1" name="gm" reflect="false" depth="front"]
;↑のnameパラメータを1番目に持ってきます。
;上の欄に
;(\[chara_show )(storage=".*?" )(left=".*?" )(top=".*?" )(time=".*?" )(wait=".*?" )(zindex=".*?" )(name=".*?" )(reflect=".*?" )(depth=".*?"\])
;下の欄に
;$1$8$2$3$4$5$6$7$9$10
SAVE&LOAD
名前ままですが。
基本ですがなんやかんやこれが一番おススメです。
これを行う前にプロジェクトIDを変更しておきましょう。
開始地点(修正完了点)
修正発見地点
不具合発生地点
これらを順繰りにセーブしてはロードしていきます。
1つ注意なのは、1.以前の個所を修正した場合。
2.や3.をロードしても修正されません。
事前読み込み地点を修正した場合などは注意が必要です。
その場合、1.の地点まで[skip]して進めるのが一番確実です。
ゲーム開始地点
[startskip]
1.の1つ手前
[stopskip](または[cancelskip])
なお[skip]といってもテキストの表示スピードが限りなく0になるだけなので、ボタンで進行を止めたり、[wait]で止めたり[dialog]表示などでは
止まります。
テキスト以外で上のようなskipの邪魔になるタグはcondパラメータでティラノ内部の判定を対象にすることで「skip中は表示させない」ということができるようです。(自分未検証)
以下方法
なので、置き換え機能で
]
を
cond="tyrano.plugin.kag.stat.is_skip != true"]
で全部置き換えちゃえば多分いける。
JUMP&TARGET
(かっこよく言ってみただけ。)
基本的にはSAVE&LOADなのですが、SKIPがめんどくさい場合や、シナリオが切り替わった節目などに使用すると便利です。
注意としては、[bg]や[chara_show]など画面に表示するタグをすっ飛ばして[jump]すると何も表示されないということです。
[layout]などでレイヤー自体が表示されていなかったということもしばしば。
もちろん変数も。
これを愛用するなら、シナリオ(.ks)の一番頭にそのシナリオで扱う事前読み込みや画面表示タグをまとめて置いた方がいいですね。
前に作った[theater1](bg1.ks)や[jukebox1](bs1.js)マクロをシナリオ開始1行目に置くというのはこれを想定しています。
コメント文
コメント文はコンピューターに存在を無視されます。
再生の時に読み込まれない区域です。
1行をコメントにする場合は行の先頭に「;」
複数行をコメントにする場合は「/*」と「*/」で囲みます。
後で人間が見やすい様にコードの中にメモを残す使い方が本来ですが、
コードの一時的な除去にも利用できます。
不具合箇所の特定や、特定のタグのみを機能停止にするには最適です。
[iscript]の中身は//か/**/でコメント文になります。;ではなりません。
表示位置を視覚的に修正
開発者ツールを使うことで、主にfix系の表示物のxy値を変更して表示位置を変えることができます。
「fix系」は造語ですが。
つまるところfixパラメータを持ってる奴で、[cm]などでも消えないものです。[clearfix]以外無効な奴。立ち絵もそう。
なお、この方法では見た目は変わりますが、大元のコードは書き換えられないので、ちょうどいい位置を見つけたらその部分のxyをメモってコードに手打ちで反映させましょう。
マクロでシナリオを置き換える
それでは
で作った諸々を入れて行きます。
first.ks
first.ksはゲーム再生をしたときに一番最初に読み込まれるシナリオファイルです。(正確にはJSやらjQueryなどティラノ構成要素が読み込まれた後
->index.html)
firstからデフォではtitle.ksへ[jump]しますが、書き換えればどこへでも[jump]できます。TRPGスタジオログ出力の場合はscene1.ksに飛びます。
イメージとしてゲーム起動してタイトルが表示されるまでの暗転部分。
このファイルは必ず通るファイルなので、読込必須な色々が入ってます。
なお、ここで色々入れ過ぎるとクラッシュするので最低限がいいです。
タイトル画面があり、必ずそこを通るのであればそこに書いてもいいし。
指標としては、Loadで再生した時に不具合がでない範囲がいいかなと。
よくプラグインの説明にある必ず通る場所に配置と明記してあるやつは大抵ここを指してたりします。
手を入れる箇所は以下の通りです。
first.ks
[title name="ティラノスクリプト解説"]
;↑ウィンドウに表示されるタイトル名を変更できる。
;このタグ自体を消した場合 system>config.tjsの;system.titleと同義になります。
;(略)
[call storage="system/chara_define.ks"]
;削除かコメント文にする。
;=====================================
;キャラと表情登録
[call storage="macro/chara.ks"]
;BGM/SE/BGの設置[ms][bgi]マクロ
[call storage="macro/item.ks"]
;=====================================下記解説
;↓より上の部分に書く
@jump storage="scene1.ks"
[s]
立ち絵の登録とマクロの読み込みが記載されたシナリオファイルを読み込ませるようにします。
[call]で読み込ませる場合は、読み込ませたいファイルの一番下に[return]を入れる必要があります。
なお、[call]で|呼び出し中《return前》にさらに[call]することはできません。
(できるけど、1番目のcall元へ戻れなくなる)
[jump]と組み合わせるか、上のようにファイルごとにcallで呼び出すのがいいと思います。
scene1.ks
まず分割目印をつけておきましょう。
;========================--
[chara_hide_all]や[stop_bgm]が目安になるかもしれません。
画面上にシーン数をテキストで表示していたら [ptext が目安になります。
セッション時にシーン切り替えのルーチンを決めておくといいかもしれないですね。
SAVE&LOAD
プレビューを流すための仕込みをします。
fitst.ksに[showload]をコメント文で仕込みます。
;1行目で良い。
;↓1つセーブポイントを作ったらコメント文を解除する。
;[showload]
(略)
@jump storage="scene1.ks"
[s]
scene1.ksに[showsave]と[s]を仕込みます。
scene1.ksにて
[dialog text="今日はここまで!おつかれさま!"]
;止める箇所に[s]、その直前に[showsave]を入れる。
[showsave]
[s]
;(略)
;↓コードが続く・・・
この[s]の入れる箇所はその日の編集予定範囲の最後あたりがいいです。
[dialog]などでここが終わりであるということを書いとくといいかも。
autosave&autoload
ADVにあるクイックセーブ、クイックロードと同義です。
1つだけ勝手に記録されます。
ちょっと直して直で見たいっていうときに便利です。
直したい直前で[autosave]、first.ksの1行目に[autoload]を入れます。
[showload]は2行目になりますね。
これらloadは使いたくない方をコメント文にするなど切り分けて使います。
この時点で[plugin name=seek_point ]は壊れてるので、コメント文か削除しておきましょ。
最終確認
SKIPで最後まで見れるか確かめる
SKIPでエラーで止まった場所を修正していくのが楽かもしれません。
最終的に最後まで見れれば編集の下準備は完了です。
上の表示の場合、2214行目がエラーで止まっているのでエディタで見ます。
Atomの場合、ctrl+Gで出たウィンドウに行数番号を入力エンターでその行にジャンプができます。
ちなみに上の原因は、名前変更前の名前でオブジェクト名(name)を記述して呼び出そうとしていたのでエラーになりました。
以下は発生して止まったエラーのやつです。
name変更で起きるエラー
[chara_show][chara_new][chara_hide]はnameを変更してるとエラーです。
chara.ksで定義したnameにしましょうね。
この置き換えの作業のためにscenarioファイルを1つのままにしていました。
文字化けでエラー
キャラ名は変更しましたが、背景画像は依然文字化けのままです。
scene1での呼び出し名(日本語)にファイル名を修正するか、
この機会に編集しやすいような名前にscene1とファイル名両方変更しちゃうのもアリです。
なお、ファイル名は半角英数が鉄板です。
以下「いらないもの」は消さなくても問題ないです。
まだいらない記述があるんだけど
消していいもの(残していても問題ない)
local_file=" "
storage=" ”
[chara_hide] > pos_mode="true"
上記のようなデフォ設定のデフォが記述されている
調べ方
①公式タグページを見る
;例
[chara_hide name="hoge" pos_mode="true"]
;↓
[chara_hide name="hoge"]
;でも結果は同じ。
②おわり。
③公式タグページに記述がない→消していい。
title.ks
デフォで入ってるやつです。基本無視でOK。
他シナリオファイル
scene1.ks以外では
make.ksとtyrano.ksは削除NG。
他のconfig.ksは微妙、cg.ks、replay.ksは消してもOK。
いらない画像ファイル
imageフォルダ内のものは、ティラノのゲームを作成するときに自動的に
作成されるものなので中身を見ていらなければ削除して大丈夫です。
同じく、使用用途がなければbgimageフォルダ内のtitle.jpg(png)も削除していいと思います。
やったこと、結果
~6までに変更して発生した不具合を全て修理(skipで終わりまで到達)
編集するのに便利な知識や方法や道具の紹介
画像・BGM(SE)ファイルのリネーム過剰記述の削除シナリオファイルの分割・1・2プレビューしやすい一工夫プレビューしながら余計なものや時間を削る←いまここ演出に必要なものを付け加える
動画再生のための一工夫
プレビューを自動撮影
おまけ:外部ツールでさらに演出アップ
ここまでで前準備は終了です。
これで完全に
『TRPGスタジオのログ』から『ティラノスタジオの作業データ』
になりました。
5230行が4051行に。重さだと416kbから230kb。
次回は編集テクです。
(動画出力して動画ソフトで編集した方が早いというツッコミはほっといて)