戦国ランス/MOD作成/イベント追加

Last-modified: 2023-11-23 (木) 20:54:19

概要

戦国ランス本編・全国版にイベントテキストを追加する方法を解説。
原則として、日本語パッケージ版ver1.04を例とする。

参考元

Add a custom event to Sengoku Rance (or DHR)

テキストの用意

最初にイベントの中身のテキストを書く。背景や効果音のイメージが定まっているなら、合わせてメモしておくと良い。
キャラクターの掛け合いは、語尾・一人称・二人称を意識するとそれらしく仕上がる。ひつじ小屋別館は参考資料として使いやすい。

テキストの構成

開始と終了

void Event_Name()
{
	EV("", -2147483648);
	イベント("");
	音楽(101, 0, false);
	全部(0, 0, 場所ID, 1, 10020, "場所", 1, 500, 0);

開始部分にこれをコピペし、

        顔(0, "", 1, 100);
	枠閉じ(0, 0);
	音楽(0, 500, false);
	全部(0, 0, 0, 0, 0, "", 1, 500, 0);
}

終了部分にこれをコピペして、全体を包むようにする。顔画像枠・テキスト枠・BGM・背景をそれぞれ停止している。

基本

  1. 150文字を超える行は下回るように分割
    バニラは22字まで表示。句読点とかなら23字でもギリギリ許容範囲。
  2. 各行の頭と尾を'で囲む
  3. 改行を入れたいとき、尾の'の後ろに R;
  4. クリックされるまで次行を非表示にしたいとき、尾の'の後ろに C;
    1. Cの次行はR();
  5. 次のテキスト枠に送る(を終了する)とき、尾の'の後ろに A;
  6. 文字サイズを変更したいとき、尾の'の後ろに 文字サイズ(数字);
    1. 数字は20がデフォルトの大きさ

顔画像

顔(顔画像ID, "", 1, 100);

顔を表示・表示変更する場合に記入。""内は常に空白で良い?
顔画像IDのを0にすると画像が消える。

立ち絵画像

SP(立ち絵画像ID, 1, 500);

立ち絵を表示・表示変更する場合に記入。
立ち絵画像IDのを0にすると画像が消える。

台詞枠(0, 0, 0);
ト書き枠(0, 0);
思考枠(0, 0, 0);
枠閉じ(0, 0);

画面を暗転させる際などに枠を消す場合に記入。

背景画像+勢力表記+場所表記

全部(0, 0, 9457, 1, 10020, "織田の陣", 1, 500, 0);

例文:本編プロローグ

全部(0, 0, 背景番号, 勢力ID, 10020, "場所名", 1, 500, 0);

背景番号・勢力ID・場所名の三つを指定。場所名は任意。
背景番号は戦国ランス/MOD作成/各種番号#backを参照。
勢力IDは戦国ランス/MOD作成/各種番号#factionを参照。

背景転換効果

すだれ転換();

画面がバラバラになってゆっくりと転換

黒転換();

転換直前に一瞬だけ黒画面を挟む。

白画面(1, 数字, 0);

数字の分の長さだけ白画面を挟む。

黒画面(1, 数字, 0);

数字の分の長さだけ黒画面を挟む。

画面振動効果

揺れる(数字A, 数字B, 0);
揺れる顔(数字A, 数字, 0);
SP揺れ(数字A, 数字, 0);

数字Aの大きさ(8~32程度を推奨)で、数字Bの分の長さだけ、それぞれ画面全体/顔画像/立ち絵画像を揺らす。

音楽

音楽(音楽番号, 0, false);

音楽番号は戦国ランス/MOD作成/各種番号#musicを参照。

効果音

効果音(効果音番号, true);

効果音番号は戦国ランス/MOD作成/各種番号#SEを参照。
falseでもなる。多分falseの方が音の出が早い気がする?

選択肢

選択追加(1, "変更点", -1, -1, -1);
選択追加(2, "スタッフコーナー", -1, -1, -1);
選択追加(3, "おみくじ", -1, -1, -1);
選択追加(4, "Xぷぴー!", -1, -1, -1);
選択追加(5, "X喝っー!", -1, -1, -1);
選択追加(6, "ボツシナリオの館", -1, -1, -1);
選択追加(99, "さようなら", -1, -1, -1);

例文:アリスの館

ゲームへの追加

jafの新規作成

「File」→「New Document」で白紙の「Untitled」が開くので、イベントテキストの中身を入力。
「File」→「Save Document」で任意のjaf名を付けて保存する。テキストの呼び出しにjaf名を用いるため、管理しやすいように名付けると良い。
当然ながらainへのコンパイルを行うことでゲーム内が読み取られるようになり、以降の編集は既存のjafと同じように行える。

テキスト呼び出し

テキストを呼び出すコマンドは共通して「jaf名();」となる。

イベントの種類によって、コマンドを記述するjafは異なる。
たとえば本編の選択イベントなら織田選択グループ.jafに記述する。
その他はjaf一覧を参照。

グローバルフラグ(略称:GF)

どこからでも呼び出せる便利なトリガーとして使用できる。

実例として、GF24は「魂縛り活性化」を意味する。
このフラグは魔軍のイベントで「オン(=フラグが立つ)」される。
GF24がオンだと、魔軍に魂縛りユニットが追加されたり、織田家のターン冒頭でランダムに一名が行動不能になったりする。
これは、ユニット追加も行動不能もGF24をトリガーとして発生するようになっているためである。
南アフリカを制圧して封印イベントを行うと、GF24が「オフ(=フラグが解除される)」になって、ユニット追加も行動不能も発生しなくなる。

下はSR code reading kitに収録されているGFの一覧画像(英語)。クリックで拡大。
GF一覧.png

予備フラグ

予備01~06は全国版用フラグ、予備07は志津香・月光登場フラグ。
予備08~10は未使用なので自由に使用できる。
予備フラグ以上のさらなる追加は、View/Edit AIN Structuresから追加すればできるかも?

コメント欄

  • 参考元リンクから、私がまったく理解できてない選択肢のif構文を除いて一通り和訳。効果音など実際に試せてない箇所が結構あるので、間違いに気が付いた方がいたら加筆修正お願いします。 -- 2023-01-14 (土) 21:07:43