検索
AND検索
OR検索
トップ
|
リロード
|
新規
|
一覧
|
単語検索
|
最終更新
|
PukiWikiヘルプ
シナリオ作成基礎編 をテンプレートにして作成
メニュー
(edit)
トップページ
SRC Wikiについて
書き込む際の注意
簡単な書き方
練習砂場
↑
よくある質問集
SRCをプレイするには
導入直後のエラー
ダウンロード関連
シナリオ作成基礎編
その他よくある質問
よくあるエラーメッセージ
↑
シナリオ作成応用編
↑
ヘルプファイル補足
↑
参考リンク(外部)
Windows FAQ
とほほのWWW入門
↑
PukiWiki関連
PukiWikiヘルプ
整形ルール
はじめてのPukiWiki
PukiWikiについて
Total:0/Today:0
開始行:
*シナリオ作成基礎編 [#pd673fda]
#contents
----
**Q401. シナリオの作り方が解りません。 [#z6fd7ae8]
シナリオデータは「.eve」という拡張子が付いていますが、...
シナリオデータはプログラム言語の様になっており、ロボッ...
有志の方が作ってくださった [[サンプルシナリオのセット>h...
そのうち、&color(blue){チュートリアルシナリオ};(チュートリア...
&color(blue){サンプルシナリオ};(SRCサンプル.eve)と&color...
**Q402. マップの作り方が解りません。 [#b2f865c1]
マップはSRCに添付されている「Mapedit.exe」というツー...
**Q403. 投稿するシナリオに、既存のビットマップを手直...
&color(red){基本的にビットマップの画像作者にメールなど...
**Q404. 原作アニメを忠実に再現したシナリオや、スーパ...
アニメ原作のコピーはある程度OKですが、スーパーロボッ...
**Q405. 出来たシナリオを発表したいのですが? [#lf026...
完成したシナリオの発表は、個々の作者でシナリオをダウン...
**Q406. 自作のデータやシナリオで遊ぼうと思ったら、エ...
SRCでのエラーは、大きく分けて次の2つがあります。
&color(blue){・データがSRCの書式や文法に違反している場...
&color(blue){・SRC本体のバグによるもの};
前者の場合、エラーメッセージ画面にイベントファイル上の...
またSRCは非常に複雑なプログラムであり、また頻繁に機...
関連項目:[[その他よくある質問 / よくあるエラーメッセージ...
**Q407. ユニットを出撃させたいのですが、上手くいきま...
シナリオを作成する上で最も基本となるのがこの「Createコ...
そのためシナリオ作成初心者の方が最初にこれでよく悩まれ...
''&color(red){<重要>:このコマンドに限らず、シナリオを...
''例) Create 敵 ダイン1号機 1 ジョー 20 5 5''
このコマンドの各項目(引数)の意味は、左から順に……
&color(blue){<Create>=クリエイト。ユニットを作り出す命...
&color(blue){<敵>=「敵、味方、NPC、中立」の所属する陣...
&color(blue){<ダイン1号機>=ロボット(ユニット)の指定...
&color(blue){<1>=機体のランク(改造レベル)の指定。};
&color(blue){<ジョー>=ロボットに搭乗するパイロットの指...
&color(blue){<20>=パイロットのレベルの指定。};
&color(blue){<5 5>=登場時のマップX,Y軸の指定。};
の意となります。 よってこの「Create 敵 ダイン1号機 1 ジ...
''『敵として、改造度が1のダイン1号機というユニットに、...
という事を表すことになります。
--------------------------------
なおこのCreateコマンドを使う上でのよくあるエラーは以下...
''(1) 引数(項目)の数は間違っていないか?''
上記解説の様にこのCreateコマンドには「敵」とか「パイロ...
''(2) 「半角」と「全角」を間違っていないか?''
各引数の数字の指定は「&color(blue){半角数字};」でないと...
また引数同士は[半角スペース]で間を開けなければいけませ...
''(3) ユニットかパイロットを「愛称」で指定してはいない...
これらは「名称」で指定しなければなりません。
''(4) 「(ザコ)」または「(汎用)」がついていないパイロッ...
同じマップに複数登場するパイロットは、名前の最後に「(ザ...
以上、よくチェックしてみてください。
関連項目:[[その他よくある質問 / よくあるエラーメッセージ...
**Q408. 合体するユニットを出撃させても、なぜか合体で...
合体するユニットは、合体後のユニットをCreateコマンドやU...
Create 味方 ダイン1号機 0 ジョー 2 14 5
Create 味方 ダイン2号機 0 カムイ 2 15 6
Create 味方 ダイン3号機 0 シキイ 2 16 4
Unit 合体機神ダイオン 0
とすると、分離状態のユニットが3機現れ、任意で合体させる...
**Q409. 同じイベントが何回も余計に起こってしまいます...
意図しないのにイベントが何回も起こってしまう場合は、以...
''(1) 直前のイベントに「Exit」が抜けている。''
イベントは、「Exit」か「Continue」「GameClear」「GameOv...
''(2) イベントを1回だけ起こすつもりだったのに、ClearE...
イベントは、ClearEvent で無効にしない限り、条件を満たす...
''(3) エピローグイベントの中に「Continue」コマンドを使...
Continue は“システム変数「次ステージ」に指定されたステ...
なお、イベントラベルのミスは、クイックロードでは訂正が...
**Q410. 起動しないイベントがあります。原因は? [#Q410]
この場合、よくある原因は次のものです。
''(1) 同じ種類のイベントを複数、作成している。''
同じ種類のイベントを複数作っても、条件を満たしたものの...
また、イベントを一つに統合するという対策手段もあります...
# 例:次のような二つの攻撃イベントがあったとします。
攻撃 味方 全:
(イベント内容1)
Exit
攻撃 パイロットA ボス:
(イベント内容2)
Exit
# このままでは二つ目のイベントが起こらないので、
# 二つのイベントを統合します。
攻撃 味方 全:
(イベント内容1)
If 対象パイロット = パイロットA And 相手パイロット = ...
対象パイロット = ボス And 相手パイロット = パイロッ...
(イベント内容2)
EndIf
Exit
# ただしこれは、パイロットA ・ ボスがともにネームドの場...
# ザコ ・ 汎用の場合は、パイロット名とパイロットIDが異...
# 対象ユニットID = UnitID(パイロットA)
# などに書き換える必要があります。
#br
''(2) イベント冒頭の追加条件設定にミスがあり、成立しえ...
たとえば、イベント冒頭に
If ターン数 < 3 And ターン数 > 5 Then
と、不等号の向きを逆にしてしまった場合などです。
条件に使う変数のスペルミスやシステム変数の記憶違いなど...
If タ‐ン数 = 5 Then
としてしまうなど。音引き「ー」とすべきがハイフン「‐」にな...
''(3) イベントラベルの書式や引数設定にミスがあり、イベ...
誤り例:
ターン 味方 敵:
ターンイベントの第1引数はターン数を入れるべき場所なの...
特に多いのは、破壊イベント・攻撃イベント・進入イベント...
パラメータをデータのファイルと厳密に照合してください。
このミスを減らす有力な方法は、データからパラメータにC...
引数をメインパイロット名またはユニット名にすべきところ...
また、(ザコ)・(汎用)のパイロット名・ユニット名で引数指...
なお、イベントラベルのミスは、クイックロードでは訂正が...
''(4) ClearEvent の設定ミス''
たとえば、敵ボスキャラを破壊したとき1回だけ起こるイベ...
破壊 敵:
If 対象パイロット = ボスキャラ Then
…(中略)
EndIf
ClearEvent
Exit
これだと、最初に「破壊 敵:」イベントが発生したときに Cl...
この場合、ClearEvent は If と EndIf のあいだに書かねば...
**Q411. Ifコマンドの条件分岐が思ったように働きません...
<最初にすること>
このトラブルにあったときには、まず、
&color(crimson){Ifコマンドの前後の行に『Talk 〜』か『Co...
# 例:
Confirm "If直前 iは、$(i)"
If i <> 0 Then
Confirm "If直後 iは、$(i)"
(一つ目の分岐の処理)
ElseIf Damage(対象パイロット) > 60 Then
Talk
ElseIf直後;対象は$(対象パイロット);ボスダメージは$(...
End
(二つ目の分岐の処理)
#…(後略)
If直前のConfirmの内容が表示されなかったときには、Ifコマ...
If直前のConfirmやTalkの内容が期待どおり表示されたときに...
以下は、その場合のよくあるミスです。
<よくあるミス>
以下、よくあるミスを列挙します。 大部分は条件式のまちが...
- 変数名の誤記
結果的に未使用の変数を使ったことになります。 未使用変数...
#br
- And、Orの誤解
たとえば、
誤:
If 変数A = (1 Or 2) Then
正:
If 変数A = 1 Or 変数A = 2 Then
といったまちがいです。 「Or」は左右の式のどちらかが0以外...
#br
- 変数一つだけの「条件式」の危険性
たとえば、変数Aが0でなければ分岐処理を実行しようとして、
If 変数A Then
とした場合です。 これでもうまくいくかもしれませんが、“「...
If 変数A <> 0 Then
「Not 変数A」とした場合も同様です。
#br
- 比較演算子「=」の式とSetコマンドとの混同
If Set 変数A 1 Then
これは、
(1)Setコマンドの別記法
変数A = 1
と、
(2)Ifの直後などでの条件式
If 変数A = 1 Then
との混同からくる誤解です。
(1)は Set コマンドの別の表記法であり、コマンドです。 あ...
(2)の「=」は比較演算子であり、この「変数A = 1」は式で...
Ifの直後に来るのは式で、コマンドではありません。
#br
- If の書式まちがい
以下のようなミスがこれまで報告されています。
-- イベントラベル書式の流用
# 誤まり例:
If ターン 8 > Then
Ifの直後に来るのは式であり、イベントラベルの書式は適用...
-- If分岐のさいちゅうにEndIfを入れてしまう
-- EndIfのかわりにExitを入れてしまう
-- 「ElseIf if」と、よけいな「if」を入れてしまう
-- 「If」がない。たとえば、下記のように書いてしまっている。
変数A = 1 Then
#br
**Q412. イベントについてよくある誤解 [#Q412]
ここでは、これまで質問掲示板に出たイベント関連ミスのう...
''(1)ステージはイベントの集まり''
ヘルプの「シナリオの作成」->「イベントデータ」の「イベ...
つまり、&color(darkred){ステージはイベントの集まり};だ...
厳密に言えば作品データ読み込みの指定「@〜」とインクルー...
以下は質問掲示板でしばしば見られるまちがいです。 &aname...
(前のイベントの中身)
Exit
If ターン数 < 5 Then
全滅 敵:
…(後略)
上の「If〜Then」はどのイベントにも属していません。 &col...
ヘルプの「Ifコマンド」のページには「''コマンド''を条件...
''(2)イベントはゲーム進行上で起こった情況に応じて発生...
たとえば「進入イベント」はユニットが指定された地点に入...
ターン 5 味方:
勝利条件:
(イベント内容)
exit
これは、「“第5ターン味方フェイズ冒頭” と “メニューコマ...
''(3)イベントラベル・通常ラベルとラベル指定''
イベントラベル・通常ラベルはともに、行頭から始まり末尾...
ClearEventコマンドやCallコマンドの引数としてラベルを指...
慣れないうちは混同されやすいので、ご注意ください。
''(4)イベントラベル、イベントコマンド、式、変数、パイ...
# 誤まり例1
UseAbility パイロットA:
(イベント?内容)
Exit
# 誤まり例2
If ターン 5 > Then
・・・(後略)
# 誤まり例3
気力Lv2 パイロットA:
(イベント?内容)
Exit
上の誤まり例1はイベントコマンドをイベントラベルに流用...
''イベントラベル、イベントコマンド、式、変数、パイロッ...
イベントは、ステージの基本的部品で、イベントラベルとイ...
イベントラベルは、イベントの部品の一つで、ゲーム上ので...
イベントコマンドも、イベントの基本的部品で、イベントで...
式は、イベントラベルやイベントコマンドのパラメータです。
変数は、演算子や関数とともに式の部品で、数値や文字列な...
特殊能力や必要技能などのパイロット・ユニットデータは、イ...
イベントラベル・イベントコマンド・式・変数などの理解はS...
**Q413. Info関数がうまく動きません。どこにミスがある...
&color(red){このトピックは[[ヘルプ補足/Info関数>ヘルプ...
質問掲示板などから、過去よくあったミスを列挙します。
info関数の書式:(ヘルプより)
> ''Info([データ区分,]データ,情報種類,…)''
- &color(blue){「データ区分」を省略したところ、意図と異な...
ふつうは「データ区分」を省略しないほうが確実です。
#br
- &color(blue){「情報種類」指定文字列と具体的データとの混...
情報種類を解説したヘルプの記述で、太字に書かれているの...
細字で書かれているのは、具体的データを記載すべきところ...
たとえば、「''属性''」と指定されたところは、「属性」と...
#br
- &color(blue){「データ」を指定していない};
[[ヘルプ補足/Info関数の該当部分>ヘルプ補足/Info関数#Dat...
#br
- &color(blue){その他「情報種類」の誤解};
たとえば、
-- Info(ユニット, ユニットA, 武器, 武器A, 属性)
は、武器Aの属性文字列を返します。特定の属性情報のみを返...
-- 「情報種類」の書式で「特殊能力名」とあるのは、特殊能力...
#br
- &color(blue){データ区分に「ユニット」を指定したのにデー...
[[ヘルプ補足/Info関数>ヘルプ補足/Info関数#DataRei]]に例...
#br
- &color(blue){システムで使われている用語を変数名に使って...
特にInfo関数だけで使われている用語と同じ変数名は、Info...
#br
- &color(blue){Info関数の仕様で使われている指定文字列と同...
#br
- &color(blue){バトルコンフィグから呼びだされた式で、バト...
このトラブルを回避するには、「情報種類」指定文字列を「"...
#br
- &color(blue){特定できないデータを指定した};
(ザコ)(汎用)のパイロット・ユニットに対して名称で指定す...
#br
- &color(blue){データ「対象(相手)ユニットID」を「対象...
Info関数に限りませんが、Info関数で特によくあるミスです。
#br
**Q414.イベントラベルのいろいろな設定(初歩) [#Q414]
ここでは、さまざまな設定例をあげながら、イベントラベル...
もう少し複雑な例は、
[[Q608. 発動に追加条件が付いたイベントを設定するには...
[[Q613. 複雑な条件分岐を設定する方法は?>シナリオ作...
などを参照してください。
''<パラメータ「全」を使う>''
・ 毎ターン味方フェイズ最初に発生するイベント
ターン 全 味方:
・ 第3ターンの全ての陣営フェイズ始めに発生するイベント
ターン 3 全:
これらのように、イベントラベルの「&color(darkblue){パラメ...
&br;
・ ユニットAが参加する戦闘ならば、どれでも発生するイベ...
攻撃 ユニットA 全:
または
攻撃 全 ユニットA:
&br;
・ どの戦闘でも発生するイベント
攻撃 全 全:
&br;
・ いずれかのユニットがマップ上の地点 (9, 11)に進入した...
進入 全 9 11:
&br;
・ ユニットAのさまざまなアクションで発生するイベント
使用 ユニットA 全:
このイベントは、ユニットAの武器使用、アビリティ、スペシ...
&br;
''<陣営名パラメータを使う>''
イベントラベルで '''unit''' (メインパイロット名やユニ...
・ 味方ユニットと中立ユニットとの戦闘で発生するイベント
攻撃 味方 中立:
または
攻撃 中立 味方:
#br
・ 敵ユニットのどれかが損傷率 50%以上になったときのイベ...
損傷率 敵 50:
#br
これらの場合の“&color(forestgreen){''陣営名''};”指定は...
&br;
“陣営名”は、少し違った意味で使われることもあります。タ...
・ 第4ターン敵フェイズ最初に発生するイベント
ターン 4 敵:
#br
・ 中立陣営が全滅したときのイベント
全滅 中立:
&br;
''<イベントラベルを複数並べる>''
イベントラベルを複数並べると、そのすべてに対し発生する...
・ 第5ターンと第6ターンの敵フェイズ最初に発生するイベ...
ターン 5 敵:
ターン 6 敵:
これには[[別法>#Beppou]]があります。
#br
・ ユニットAが損傷率 90%以上になるか破壊されたときに発...
損傷率 ユニットA 90:
破壊 ユニットA:
&br;
''<If をイベントラベル直後に使う>''
イベントラベルのパラメータでは表現しきれない条件をつけ...
イベントラベル:
If (条件式) Then
(イベントの内容)
EndIf
Exit
「If ('''条件式''') Then」は、「この直後の行から「EndIf...
// 「If」の初歩的な説明は、[[]]を参照してください
以下は、かんたんな実例です。より詳しい例は[[Q608. ...
・ 味方フェイズ冒頭で敵数が 5 未満のときに実行されるイベ...
ターン 全 味方:
If 敵数 < 5 Then
(イベント内容)
Endif
Exit
#br
・ 第5ターンと第6ターンの敵フェイズ最初に実行されるイ...
ターン 全 敵:
If ターン数 = 5 Or ターン数 = 6 Then
(イベント内容)
Endif
Exit
これは[[上>#Honpou]]にあげたイベントの別法です。
&br;
''<システム変数「対象パイロット」「対象ユニットID」「...
しばしば、イベントを引き起こしたユニットのデータを参照...
「&color(forestgreen){対象パイロット};」「&color(forest...
・ 進入ユニットの損傷率が 20%以上のときのみ動作する進入...
進入 全 3 6:
If Damage(対象ユニットID) >= 20 Then
(イベント内容)
Endif
Exit
#br
・ 特殊能力Aを持ったユニットのメインパイロットがレベル...
レベルアップ 全:
If IsAvailable(対象パイロット, 特殊能力A) = 1 Then
(後略)
#br
・ レベル10以下のパイロットが「恐怖」特殊状態のユニット...
攻撃 全 全:
If Level(対象パイロット) <= 10 And Condition(相手ユニッ...
(後略)
攻撃イベントでは、システム変数「&color(forestgreen){対...
&br;
・ パイロットAの機体が パイロットBに破壊されたとき動作...
破壊 パイロットA:
If 相手パイロット = パイロットB Then
(イベント内容)
EndIf
Exit
・ アイテムAを持ったユニットが味方ユニットに破壊された...
破壊 全:
If IsEquiped(対象ユニットID, アイテムA) = 1 And Party...
(後略)
破壊イベントでは、システム変数「&color(forestgreen){対...
&br;
・ 次の例は、まちがいです。
ターン 全 味方:
If Level(対象パイロット) <= 10 Then
(後略)
ターンイベントはユニットの動作によるイベントでは''ない'...
ターンイベントで、特定のパイロットのレベルをチェックし...
ターン 全 味方:
If Level(パイロットA) <= 10 Then
(後略)
味方すべてのレベルをチェックし、10以下なら何かの処理を...
ターン 全 味方:
ForEach 味方
If Level(対象パイロット) <= 10 Then
(処理内容)
EndIf
Next
Exit
とします。
**Q415.変数って何ですか?[#Q415]
ここでは、「変数」について、最も基本的なことだけを解説...
まず、次に示すのは、最も短い「シナリオ」の一つです。
プロローグ:
Confirm "1 たす 2 は $(1 + 2)"
GameClear
このシナリオは、「1 たす 2 は 3」と表示する、ただそれだ...
このシナリオの「1」と「2」は、あらかじめ決められた固定...
これでは不便なので、プレイヤーが入力するどんな数の和で...
プロローグ:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
Confirm "$(i) たす $(j) は $(i + j)"
GameClear
この「i」「j」が変数です。「1」や「2」と違うのは、変数...
たとえるなら、変数は「i」「j」などのラベルが貼ってある...
このとき、「i」や「j」などのラベルを「&color(red){変数...
また、変数には何度も別の値を代入しなおすことができます...
プロローグ:
i = 1
j = 2
Confirm "$(i) たす $(j) は $(i + j)" //「1 たす 2 は ...
i = 3
Confirm "$(i) たす $(j) は $(i + j)" //「3 たす 2 は ...
i = i + 1
Confirm "$(i) たす $(j) は $(i + j)" //「4 たす 2 は ...
GameClear
上の例では、変数 i に違った値を代入しながら同じ内容の C...
なお、最後の 'i = i + 1' は、「この時点での i の値に 1 ...
**Q416.If コマンドがよくわかりません[#Q416]
この項目は、ヘルプの &color(purple){Ifコマンド};のペー...
''<If を理解する前に――通常のコマンドの動作>''
SRCは基本的に、&color(darkred){''イベントコマンドを...
スタート:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
Confirm "合計は、$(i + j)です"
Exit
たとえばこのイベントでは、
(1) 「数字をいれてください」と表示してプレイヤーに入力さ...
(2) もう一度入力してもらい、その値を変数 j に入れる
(3) 合計を表示する
(4) スタートイベントを終える
という4つの手続きを順番に処理します。
このように、&color(darkred){''「上から一行ずつ、順番に...
''<If は処理の順番を変え特別な処理をする>''
けれども、コマンドを順番に処理するだけでは、不便に思う...
そのためSRCでは、''処理の順番を変える''コマンドが用...
If コマンド もその一つで、これは''条件に応じて違った処...
下記は、上のスタートイベントの割り算版です。
スタート:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
If j <> 0 Then
Confirm "答えは、$(i / j)です"
EndIf
Exit
足し算と違って、割り算には「ゼロで割ってはならない」と...
・ jがゼロでないなら、答えを表示する
・ jがゼロなら、何もしないで 'EndIf' の次の行('Exit')...
''<条件式とは?>''
'If' に続く 'j <> 0' は''条件式''と呼ばれます。 'If '''...
条件式が「&color(darkred){成り立つ};」というのは、厳密...
'<>' や '=' ,'<', '<=', '>', '>=', 'And', 'Or', 'Like' ...
条件式にはたいていの場合、比較演算子を使った式を使いま...
''<Else 付きの If>''
上の割り算イベントは、ゼロで割ろうとしたときメッセージ...
スタート:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
If j <> 0 Then
Confirm "答えは、$(i / j)です"
Else
Confirm "ゼロで割ることはできません"
EndIf
Exit
この場合は、二つに分かれた処理の流れは、次のようになり...
・ jがゼロでないなら、答えを表示した後、'Else' から 'End...
・ jがゼロなら、'Else'の次の行まで飛んで、メッセージを出...
言い換えれば、If〜Else〜EndIf では、
・ If行と Else とのあいだの行・・・・条件式成立のとき専...
・ Else と EndIf とのあいだの行・・・条件式不成立のとき...
となります。
関連項目:
[[Q411.If コマンドの条件分岐が思ったように働きません...
[[Q613. 複雑な条件分岐を設定する方法は?>シナリオ作...
-----
*コメント [#ia8e7067]
#comment_nospam
終了行:
*シナリオ作成基礎編 [#pd673fda]
#contents
----
**Q401. シナリオの作り方が解りません。 [#z6fd7ae8]
シナリオデータは「.eve」という拡張子が付いていますが、...
シナリオデータはプログラム言語の様になっており、ロボッ...
有志の方が作ってくださった [[サンプルシナリオのセット>h...
そのうち、&color(blue){チュートリアルシナリオ};(チュートリア...
&color(blue){サンプルシナリオ};(SRCサンプル.eve)と&color...
**Q402. マップの作り方が解りません。 [#b2f865c1]
マップはSRCに添付されている「Mapedit.exe」というツー...
**Q403. 投稿するシナリオに、既存のビットマップを手直...
&color(red){基本的にビットマップの画像作者にメールなど...
**Q404. 原作アニメを忠実に再現したシナリオや、スーパ...
アニメ原作のコピーはある程度OKですが、スーパーロボッ...
**Q405. 出来たシナリオを発表したいのですが? [#lf026...
完成したシナリオの発表は、個々の作者でシナリオをダウン...
**Q406. 自作のデータやシナリオで遊ぼうと思ったら、エ...
SRCでのエラーは、大きく分けて次の2つがあります。
&color(blue){・データがSRCの書式や文法に違反している場...
&color(blue){・SRC本体のバグによるもの};
前者の場合、エラーメッセージ画面にイベントファイル上の...
またSRCは非常に複雑なプログラムであり、また頻繁に機...
関連項目:[[その他よくある質問 / よくあるエラーメッセージ...
**Q407. ユニットを出撃させたいのですが、上手くいきま...
シナリオを作成する上で最も基本となるのがこの「Createコ...
そのためシナリオ作成初心者の方が最初にこれでよく悩まれ...
''&color(red){<重要>:このコマンドに限らず、シナリオを...
''例) Create 敵 ダイン1号機 1 ジョー 20 5 5''
このコマンドの各項目(引数)の意味は、左から順に……
&color(blue){<Create>=クリエイト。ユニットを作り出す命...
&color(blue){<敵>=「敵、味方、NPC、中立」の所属する陣...
&color(blue){<ダイン1号機>=ロボット(ユニット)の指定...
&color(blue){<1>=機体のランク(改造レベル)の指定。};
&color(blue){<ジョー>=ロボットに搭乗するパイロットの指...
&color(blue){<20>=パイロットのレベルの指定。};
&color(blue){<5 5>=登場時のマップX,Y軸の指定。};
の意となります。 よってこの「Create 敵 ダイン1号機 1 ジ...
''『敵として、改造度が1のダイン1号機というユニットに、...
という事を表すことになります。
--------------------------------
なおこのCreateコマンドを使う上でのよくあるエラーは以下...
''(1) 引数(項目)の数は間違っていないか?''
上記解説の様にこのCreateコマンドには「敵」とか「パイロ...
''(2) 「半角」と「全角」を間違っていないか?''
各引数の数字の指定は「&color(blue){半角数字};」でないと...
また引数同士は[半角スペース]で間を開けなければいけませ...
''(3) ユニットかパイロットを「愛称」で指定してはいない...
これらは「名称」で指定しなければなりません。
''(4) 「(ザコ)」または「(汎用)」がついていないパイロッ...
同じマップに複数登場するパイロットは、名前の最後に「(ザ...
以上、よくチェックしてみてください。
関連項目:[[その他よくある質問 / よくあるエラーメッセージ...
**Q408. 合体するユニットを出撃させても、なぜか合体で...
合体するユニットは、合体後のユニットをCreateコマンドやU...
Create 味方 ダイン1号機 0 ジョー 2 14 5
Create 味方 ダイン2号機 0 カムイ 2 15 6
Create 味方 ダイン3号機 0 シキイ 2 16 4
Unit 合体機神ダイオン 0
とすると、分離状態のユニットが3機現れ、任意で合体させる...
**Q409. 同じイベントが何回も余計に起こってしまいます...
意図しないのにイベントが何回も起こってしまう場合は、以...
''(1) 直前のイベントに「Exit」が抜けている。''
イベントは、「Exit」か「Continue」「GameClear」「GameOv...
''(2) イベントを1回だけ起こすつもりだったのに、ClearE...
イベントは、ClearEvent で無効にしない限り、条件を満たす...
''(3) エピローグイベントの中に「Continue」コマンドを使...
Continue は“システム変数「次ステージ」に指定されたステ...
なお、イベントラベルのミスは、クイックロードでは訂正が...
**Q410. 起動しないイベントがあります。原因は? [#Q410]
この場合、よくある原因は次のものです。
''(1) 同じ種類のイベントを複数、作成している。''
同じ種類のイベントを複数作っても、条件を満たしたものの...
また、イベントを一つに統合するという対策手段もあります...
# 例:次のような二つの攻撃イベントがあったとします。
攻撃 味方 全:
(イベント内容1)
Exit
攻撃 パイロットA ボス:
(イベント内容2)
Exit
# このままでは二つ目のイベントが起こらないので、
# 二つのイベントを統合します。
攻撃 味方 全:
(イベント内容1)
If 対象パイロット = パイロットA And 相手パイロット = ...
対象パイロット = ボス And 相手パイロット = パイロッ...
(イベント内容2)
EndIf
Exit
# ただしこれは、パイロットA ・ ボスがともにネームドの場...
# ザコ ・ 汎用の場合は、パイロット名とパイロットIDが異...
# 対象ユニットID = UnitID(パイロットA)
# などに書き換える必要があります。
#br
''(2) イベント冒頭の追加条件設定にミスがあり、成立しえ...
たとえば、イベント冒頭に
If ターン数 < 3 And ターン数 > 5 Then
と、不等号の向きを逆にしてしまった場合などです。
条件に使う変数のスペルミスやシステム変数の記憶違いなど...
If タ‐ン数 = 5 Then
としてしまうなど。音引き「ー」とすべきがハイフン「‐」にな...
''(3) イベントラベルの書式や引数設定にミスがあり、イベ...
誤り例:
ターン 味方 敵:
ターンイベントの第1引数はターン数を入れるべき場所なの...
特に多いのは、破壊イベント・攻撃イベント・進入イベント...
パラメータをデータのファイルと厳密に照合してください。
このミスを減らす有力な方法は、データからパラメータにC...
引数をメインパイロット名またはユニット名にすべきところ...
また、(ザコ)・(汎用)のパイロット名・ユニット名で引数指...
なお、イベントラベルのミスは、クイックロードでは訂正が...
''(4) ClearEvent の設定ミス''
たとえば、敵ボスキャラを破壊したとき1回だけ起こるイベ...
破壊 敵:
If 対象パイロット = ボスキャラ Then
…(中略)
EndIf
ClearEvent
Exit
これだと、最初に「破壊 敵:」イベントが発生したときに Cl...
この場合、ClearEvent は If と EndIf のあいだに書かねば...
**Q411. Ifコマンドの条件分岐が思ったように働きません...
<最初にすること>
このトラブルにあったときには、まず、
&color(crimson){Ifコマンドの前後の行に『Talk 〜』か『Co...
# 例:
Confirm "If直前 iは、$(i)"
If i <> 0 Then
Confirm "If直後 iは、$(i)"
(一つ目の分岐の処理)
ElseIf Damage(対象パイロット) > 60 Then
Talk
ElseIf直後;対象は$(対象パイロット);ボスダメージは$(...
End
(二つ目の分岐の処理)
#…(後略)
If直前のConfirmの内容が表示されなかったときには、Ifコマ...
If直前のConfirmやTalkの内容が期待どおり表示されたときに...
以下は、その場合のよくあるミスです。
<よくあるミス>
以下、よくあるミスを列挙します。 大部分は条件式のまちが...
- 変数名の誤記
結果的に未使用の変数を使ったことになります。 未使用変数...
#br
- And、Orの誤解
たとえば、
誤:
If 変数A = (1 Or 2) Then
正:
If 変数A = 1 Or 変数A = 2 Then
といったまちがいです。 「Or」は左右の式のどちらかが0以外...
#br
- 変数一つだけの「条件式」の危険性
たとえば、変数Aが0でなければ分岐処理を実行しようとして、
If 変数A Then
とした場合です。 これでもうまくいくかもしれませんが、“「...
If 変数A <> 0 Then
「Not 変数A」とした場合も同様です。
#br
- 比較演算子「=」の式とSetコマンドとの混同
If Set 変数A 1 Then
これは、
(1)Setコマンドの別記法
変数A = 1
と、
(2)Ifの直後などでの条件式
If 変数A = 1 Then
との混同からくる誤解です。
(1)は Set コマンドの別の表記法であり、コマンドです。 あ...
(2)の「=」は比較演算子であり、この「変数A = 1」は式で...
Ifの直後に来るのは式で、コマンドではありません。
#br
- If の書式まちがい
以下のようなミスがこれまで報告されています。
-- イベントラベル書式の流用
# 誤まり例:
If ターン 8 > Then
Ifの直後に来るのは式であり、イベントラベルの書式は適用...
-- If分岐のさいちゅうにEndIfを入れてしまう
-- EndIfのかわりにExitを入れてしまう
-- 「ElseIf if」と、よけいな「if」を入れてしまう
-- 「If」がない。たとえば、下記のように書いてしまっている。
変数A = 1 Then
#br
**Q412. イベントについてよくある誤解 [#Q412]
ここでは、これまで質問掲示板に出たイベント関連ミスのう...
''(1)ステージはイベントの集まり''
ヘルプの「シナリオの作成」->「イベントデータ」の「イベ...
つまり、&color(darkred){ステージはイベントの集まり};だ...
厳密に言えば作品データ読み込みの指定「@〜」とインクルー...
以下は質問掲示板でしばしば見られるまちがいです。 &aname...
(前のイベントの中身)
Exit
If ターン数 < 5 Then
全滅 敵:
…(後略)
上の「If〜Then」はどのイベントにも属していません。 &col...
ヘルプの「Ifコマンド」のページには「''コマンド''を条件...
''(2)イベントはゲーム進行上で起こった情況に応じて発生...
たとえば「進入イベント」はユニットが指定された地点に入...
ターン 5 味方:
勝利条件:
(イベント内容)
exit
これは、「“第5ターン味方フェイズ冒頭” と “メニューコマ...
''(3)イベントラベル・通常ラベルとラベル指定''
イベントラベル・通常ラベルはともに、行頭から始まり末尾...
ClearEventコマンドやCallコマンドの引数としてラベルを指...
慣れないうちは混同されやすいので、ご注意ください。
''(4)イベントラベル、イベントコマンド、式、変数、パイ...
# 誤まり例1
UseAbility パイロットA:
(イベント?内容)
Exit
# 誤まり例2
If ターン 5 > Then
・・・(後略)
# 誤まり例3
気力Lv2 パイロットA:
(イベント?内容)
Exit
上の誤まり例1はイベントコマンドをイベントラベルに流用...
''イベントラベル、イベントコマンド、式、変数、パイロッ...
イベントは、ステージの基本的部品で、イベントラベルとイ...
イベントラベルは、イベントの部品の一つで、ゲーム上ので...
イベントコマンドも、イベントの基本的部品で、イベントで...
式は、イベントラベルやイベントコマンドのパラメータです。
変数は、演算子や関数とともに式の部品で、数値や文字列な...
特殊能力や必要技能などのパイロット・ユニットデータは、イ...
イベントラベル・イベントコマンド・式・変数などの理解はS...
**Q413. Info関数がうまく動きません。どこにミスがある...
&color(red){このトピックは[[ヘルプ補足/Info関数>ヘルプ...
質問掲示板などから、過去よくあったミスを列挙します。
info関数の書式:(ヘルプより)
> ''Info([データ区分,]データ,情報種類,…)''
- &color(blue){「データ区分」を省略したところ、意図と異な...
ふつうは「データ区分」を省略しないほうが確実です。
#br
- &color(blue){「情報種類」指定文字列と具体的データとの混...
情報種類を解説したヘルプの記述で、太字に書かれているの...
細字で書かれているのは、具体的データを記載すべきところ...
たとえば、「''属性''」と指定されたところは、「属性」と...
#br
- &color(blue){「データ」を指定していない};
[[ヘルプ補足/Info関数の該当部分>ヘルプ補足/Info関数#Dat...
#br
- &color(blue){その他「情報種類」の誤解};
たとえば、
-- Info(ユニット, ユニットA, 武器, 武器A, 属性)
は、武器Aの属性文字列を返します。特定の属性情報のみを返...
-- 「情報種類」の書式で「特殊能力名」とあるのは、特殊能力...
#br
- &color(blue){データ区分に「ユニット」を指定したのにデー...
[[ヘルプ補足/Info関数>ヘルプ補足/Info関数#DataRei]]に例...
#br
- &color(blue){システムで使われている用語を変数名に使って...
特にInfo関数だけで使われている用語と同じ変数名は、Info...
#br
- &color(blue){Info関数の仕様で使われている指定文字列と同...
#br
- &color(blue){バトルコンフィグから呼びだされた式で、バト...
このトラブルを回避するには、「情報種類」指定文字列を「"...
#br
- &color(blue){特定できないデータを指定した};
(ザコ)(汎用)のパイロット・ユニットに対して名称で指定す...
#br
- &color(blue){データ「対象(相手)ユニットID」を「対象...
Info関数に限りませんが、Info関数で特によくあるミスです。
#br
**Q414.イベントラベルのいろいろな設定(初歩) [#Q414]
ここでは、さまざまな設定例をあげながら、イベントラベル...
もう少し複雑な例は、
[[Q608. 発動に追加条件が付いたイベントを設定するには...
[[Q613. 複雑な条件分岐を設定する方法は?>シナリオ作...
などを参照してください。
''<パラメータ「全」を使う>''
・ 毎ターン味方フェイズ最初に発生するイベント
ターン 全 味方:
・ 第3ターンの全ての陣営フェイズ始めに発生するイベント
ターン 3 全:
これらのように、イベントラベルの「&color(darkblue){パラメ...
&br;
・ ユニットAが参加する戦闘ならば、どれでも発生するイベ...
攻撃 ユニットA 全:
または
攻撃 全 ユニットA:
&br;
・ どの戦闘でも発生するイベント
攻撃 全 全:
&br;
・ いずれかのユニットがマップ上の地点 (9, 11)に進入した...
進入 全 9 11:
&br;
・ ユニットAのさまざまなアクションで発生するイベント
使用 ユニットA 全:
このイベントは、ユニットAの武器使用、アビリティ、スペシ...
&br;
''<陣営名パラメータを使う>''
イベントラベルで '''unit''' (メインパイロット名やユニ...
・ 味方ユニットと中立ユニットとの戦闘で発生するイベント
攻撃 味方 中立:
または
攻撃 中立 味方:
#br
・ 敵ユニットのどれかが損傷率 50%以上になったときのイベ...
損傷率 敵 50:
#br
これらの場合の“&color(forestgreen){''陣営名''};”指定は...
&br;
“陣営名”は、少し違った意味で使われることもあります。タ...
・ 第4ターン敵フェイズ最初に発生するイベント
ターン 4 敵:
#br
・ 中立陣営が全滅したときのイベント
全滅 中立:
&br;
''<イベントラベルを複数並べる>''
イベントラベルを複数並べると、そのすべてに対し発生する...
・ 第5ターンと第6ターンの敵フェイズ最初に発生するイベ...
ターン 5 敵:
ターン 6 敵:
これには[[別法>#Beppou]]があります。
#br
・ ユニットAが損傷率 90%以上になるか破壊されたときに発...
損傷率 ユニットA 90:
破壊 ユニットA:
&br;
''<If をイベントラベル直後に使う>''
イベントラベルのパラメータでは表現しきれない条件をつけ...
イベントラベル:
If (条件式) Then
(イベントの内容)
EndIf
Exit
「If ('''条件式''') Then」は、「この直後の行から「EndIf...
// 「If」の初歩的な説明は、[[]]を参照してください
以下は、かんたんな実例です。より詳しい例は[[Q608. ...
・ 味方フェイズ冒頭で敵数が 5 未満のときに実行されるイベ...
ターン 全 味方:
If 敵数 < 5 Then
(イベント内容)
Endif
Exit
#br
・ 第5ターンと第6ターンの敵フェイズ最初に実行されるイ...
ターン 全 敵:
If ターン数 = 5 Or ターン数 = 6 Then
(イベント内容)
Endif
Exit
これは[[上>#Honpou]]にあげたイベントの別法です。
&br;
''<システム変数「対象パイロット」「対象ユニットID」「...
しばしば、イベントを引き起こしたユニットのデータを参照...
「&color(forestgreen){対象パイロット};」「&color(forest...
・ 進入ユニットの損傷率が 20%以上のときのみ動作する進入...
進入 全 3 6:
If Damage(対象ユニットID) >= 20 Then
(イベント内容)
Endif
Exit
#br
・ 特殊能力Aを持ったユニットのメインパイロットがレベル...
レベルアップ 全:
If IsAvailable(対象パイロット, 特殊能力A) = 1 Then
(後略)
#br
・ レベル10以下のパイロットが「恐怖」特殊状態のユニット...
攻撃 全 全:
If Level(対象パイロット) <= 10 And Condition(相手ユニッ...
(後略)
攻撃イベントでは、システム変数「&color(forestgreen){対...
&br;
・ パイロットAの機体が パイロットBに破壊されたとき動作...
破壊 パイロットA:
If 相手パイロット = パイロットB Then
(イベント内容)
EndIf
Exit
・ アイテムAを持ったユニットが味方ユニットに破壊された...
破壊 全:
If IsEquiped(対象ユニットID, アイテムA) = 1 And Party...
(後略)
破壊イベントでは、システム変数「&color(forestgreen){対...
&br;
・ 次の例は、まちがいです。
ターン 全 味方:
If Level(対象パイロット) <= 10 Then
(後略)
ターンイベントはユニットの動作によるイベントでは''ない'...
ターンイベントで、特定のパイロットのレベルをチェックし...
ターン 全 味方:
If Level(パイロットA) <= 10 Then
(後略)
味方すべてのレベルをチェックし、10以下なら何かの処理を...
ターン 全 味方:
ForEach 味方
If Level(対象パイロット) <= 10 Then
(処理内容)
EndIf
Next
Exit
とします。
**Q415.変数って何ですか?[#Q415]
ここでは、「変数」について、最も基本的なことだけを解説...
まず、次に示すのは、最も短い「シナリオ」の一つです。
プロローグ:
Confirm "1 たす 2 は $(1 + 2)"
GameClear
このシナリオは、「1 たす 2 は 3」と表示する、ただそれだ...
このシナリオの「1」と「2」は、あらかじめ決められた固定...
これでは不便なので、プレイヤーが入力するどんな数の和で...
プロローグ:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
Confirm "$(i) たす $(j) は $(i + j)"
GameClear
この「i」「j」が変数です。「1」や「2」と違うのは、変数...
たとえるなら、変数は「i」「j」などのラベルが貼ってある...
このとき、「i」や「j」などのラベルを「&color(red){変数...
また、変数には何度も別の値を代入しなおすことができます...
プロローグ:
i = 1
j = 2
Confirm "$(i) たす $(j) は $(i + j)" //「1 たす 2 は ...
i = 3
Confirm "$(i) たす $(j) は $(i + j)" //「3 たす 2 は ...
i = i + 1
Confirm "$(i) たす $(j) は $(i + j)" //「4 たす 2 は ...
GameClear
上の例では、変数 i に違った値を代入しながら同じ内容の C...
なお、最後の 'i = i + 1' は、「この時点での i の値に 1 ...
**Q416.If コマンドがよくわかりません[#Q416]
この項目は、ヘルプの &color(purple){Ifコマンド};のペー...
''<If を理解する前に――通常のコマンドの動作>''
SRCは基本的に、&color(darkred){''イベントコマンドを...
スタート:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
Confirm "合計は、$(i + j)です"
Exit
たとえばこのイベントでは、
(1) 「数字をいれてください」と表示してプレイヤーに入力さ...
(2) もう一度入力してもらい、その値を変数 j に入れる
(3) 合計を表示する
(4) スタートイベントを終える
という4つの手続きを順番に処理します。
このように、&color(darkred){''「上から一行ずつ、順番に...
''<If は処理の順番を変え特別な処理をする>''
けれども、コマンドを順番に処理するだけでは、不便に思う...
そのためSRCでは、''処理の順番を変える''コマンドが用...
If コマンド もその一つで、これは''条件に応じて違った処...
下記は、上のスタートイベントの割り算版です。
スタート:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
If j <> 0 Then
Confirm "答えは、$(i / j)です"
EndIf
Exit
足し算と違って、割り算には「ゼロで割ってはならない」と...
・ jがゼロでないなら、答えを表示する
・ jがゼロなら、何もしないで 'EndIf' の次の行('Exit')...
''<条件式とは?>''
'If' に続く 'j <> 0' は''条件式''と呼ばれます。 'If '''...
条件式が「&color(darkred){成り立つ};」というのは、厳密...
'<>' や '=' ,'<', '<=', '>', '>=', 'And', 'Or', 'Like' ...
条件式にはたいていの場合、比較演算子を使った式を使いま...
''<Else 付きの If>''
上の割り算イベントは、ゼロで割ろうとしたときメッセージ...
スタート:
Input i 数字を入れてください
Input j もう一度、数字を入れてください
If j <> 0 Then
Confirm "答えは、$(i / j)です"
Else
Confirm "ゼロで割ることはできません"
EndIf
Exit
この場合は、二つに分かれた処理の流れは、次のようになり...
・ jがゼロでないなら、答えを表示した後、'Else' から 'End...
・ jがゼロなら、'Else'の次の行まで飛んで、メッセージを出...
言い換えれば、If〜Else〜EndIf では、
・ If行と Else とのあいだの行・・・・条件式成立のとき専...
・ Else と EndIf とのあいだの行・・・条件式不成立のとき...
となります。
関連項目:
[[Q411.If コマンドの条件分岐が思ったように働きません...
[[Q613. 複雑な条件分岐を設定する方法は?>シナリオ作...
-----
*コメント [#ia8e7067]
#comment_nospam
ページ名:
最新の15件
2022-10-04
ヘルプ補足/特異資質に関する特殊能力P
2022-09-19
ヘルプ補足/スペシャルパワーに関する特殊能力P
2022-02-20
ヘルプ補足/瀕死時に発動する特殊能力P
2017-05-14
RecentDeleted
2016-06-29
SRCをプレイするには
2012-10-01
導入直後のエラー
その他よくある質問
2012-06-12
ヘルプ補足/移動系特殊能力U
2012-03-16
ヘルプ補足/Info関数
2012-03-08
ヘルプ補足/会話コマンド
2011-12-12
ヘルプ補足/選択肢入力コマンド
2011-12-07
ヘルプ補足/パイロットデータ
2011-10-25
ヘルプ補足/イベント制御コマンド
2011-10-17
ヘルプ補足/ユニットデータ
2011-09-08
ヘルプ補足/リスト処理関数