マスター/テクニック

Last-modified: 2023-09-25 (月) 14:43:18

クエスト制作におけるテクニックなど。

 

そこそこ面白いボスの作り方

経験則で得たボスの作り方を書き記してみる。
あくまでも個人的な意見なので注意。

ステータス

HP

盛っていい。
簡単に倒れちゃ面白く無いだろう?とはいってもHP数百ポイントはやり過ぎな気も……
HPを盛りに盛りたい場合は、以下の方法などでバランスを調整しよう。

  • ボスの防御力を低く設定する
  • シナリオ側で、ボスを倒しやすくするオリジナルスキルやアイテムを用意する

SP

盛っていい。
SP切れでボスは弱体化する。SP切れを戦略に入れさせたいならともかく、情けない弱体化は回避しよう。

AP

公開した上でなら多少盛ってもいい。
慣れるまでは7で良いが、リアクションは控えめに。

想定人数にもよるが、毎ラウンドのタコ殴りやフェイント、スニークアタックで行動出来ないというのは考え物。とはいえ多過ぎると「フェイント使えNEEEE」と突っ込まれるので注意。

「複数人で攻撃することで、リアクションでAPを消費させる」という自衛も、複数人でのバトルにおいては立派な戦略である。
各人一度の攻撃だけで枯渇させるような必要はないが、バランス調整がてら加味してもいいだろう。

ATK/MATK

過剰な火力は注意。
最大HPの2倍以上のダメージは「昏睡」となり、基本的に復帰できない為、実質的なクエストキャンセルになる。
Questnotesの「昏睡」は重く、蘇生手段も限られているので基本やめとこう。他プレイヤーが頑張ればクリア出来るパブリックはともかく。

また、このゲームは「ATKは上げやすいがDEFも上げやすく、MATKは上げづらいがMDEFも上げづらい」という形で物理・魔法のバランスを取っている。
物理・魔法の両方を扱うボスなら、ステータス上はATK>MATKになるようにバランスを取るべきだろう。MATKには、多くのスキルに+1dなどがつくことも忘れずに。

HIT

攻撃力との兼ね合いを考えよう。
攻撃力が高いなら命中を下げて回避させよう。攻撃力が低いなら命中を高めて防御させよう。

とはいえ、そもそも攻撃を回避する手段がないPCもいるため、「HIT0だからATK50あっても良い」ということにはならない。
どちらかといえば、HITは中間点に設定しておき、「高威力低命中スキル」「低威力高命中スキル」を使い分ける形の方が良いだろう。

DEF/MDEF

低い位で丁度いいかも。ダメージが通らないのはストレスの元となりやすい。
ダメージ計算は引き算で行われるので、迂闊に高くするとキャラによって3倍も4倍も攻撃力に差がついてしまう。

例えばDEF12のボスが防御した場合……
 3d+22のキャラは14点のダメージ
 2d+15のキャラは4点のダメージ

また、このゲームは「ATKは上げやすいがDEFも上げやすく、MATKは上げづらいがMDEFも上げづらい」という形で物理・魔法のバランスを取っている。
「DEF7,MDEF7」のようなボスは一見バランスが良いように見えるが、実際は魔法を使うPCにとってかなり苦しい敵になってしまう。
PCのATKとMATKは、上がりやすさに2倍の差があるため、ボスのDEFとMDEFにも2倍の差をつける方が良いだろう。(DEF8,MDEF4、など)

ただしこれは低レベルのクエストに限った話で、プレイヤーのATKがDEFを大きく上回るカンスト帯のレベルになると物理と魔法が与えるダメージには「2倍」の差が開く。
弱点属性を複数設定するか、遠距離から攻撃出来るメリットをよほど強調しないとこの差を埋めるのは難しいかもしれない。

FLEE

低過ぎる位で丁度いいかも。
FLEEにしろDEFにしろ、高すぎると死なない→倒せない→クソゲーの流れになりかねない。あくまでもプレイヤーに格好よく?倒される敵を作るべし。

ただし、一切回避をしない敵を作るということは、プレイヤーの高いHITが無駄になるということでもある。

各種マスタリー、インビジブルアタック、スナイピング、リーフエッジ、エアリアルスラッシュ、コンセントレイション、メディテーション、ポルカ、プレイ、ホーリーライト、アンブッシュ、スニークアタック、フェイント

更にスキルの命中成長とHITを補助する手段はとても多く、これらが全部まとめて取り損になってしまう。
回避する雑魚を一緒に出したり、魔法には抵抗したりなど、HITの意義を少しでも持たせるように努めるとよい。

  • 高FLEEの敵
    作るのであれば、「FLEE15」のような固定値ではなく「FLEE2d+8」のようなランダム幅を持たせることを勧める。(1dを3.5として計算すれば良い)

DEXは一番弱いステータスであり、高FLEEを出さないと釣り合いが取れない。
しかし一番弱いステータスであるがゆえに確保していないプレイヤーが多く、高FLEEを出すとゲームが破綻するというマスター泣かせの要素である・・・

RESIST

低すぎるくらいで良い。
魔法はただでさえ威力面で物理攻撃に劣る面があり、抵抗されるとさらに半減してしまう。
HIT0の魔法すら抵抗突破させる必要はないが、HIT7あれば7割突破できるライン(=5くらい)あればよいだろう。

プレイヤーのスリーピング、ポーレン、ディスコードのような強力なデバフスキルに対しては、RESISTを高くするのではなく、感覚値を上げてみたり、かかっても1Rで切れるようなパッシヴスキルを積んでみたりするなどしよう。かかった後は何ラウンドが耐性がつくようなやり方でも良い。

ステータスはダイス数+固定値で表されるが、既存クエストでは?概ね以下のような傾向があるようだ。

  • ダイス数は武器やアクション/リアクションスキルなどで補正される。すごい武器の持ち主はダイスが多くなるだろう。
  • 固定値は能力値やパッシヴスキルなどで補正される。達人は固定値が高くなる傾向にあるだろう。
 

アクション/リアクション/AI

ここはボスの華。うまく組んでいこう。

アクション

ここは色々工夫のし甲斐があるが...

  • 強力過ぎる魔法攻撃は控えよう。リフレクションで酷い事になる。
  • 自分をターゲットにして、ターゲット+距離指定で周囲への範囲攻撃を入れてみよう。
    冒険者の回復能力は基本貧弱なので、複数体攻撃はなかなか強いぞ。
  • 高命中低威力攻撃と低命中高威力攻撃を両方搭載してみよう。苦手な方にどうするか...と悩ませることができるぞ。
  • 状態異常を活用しよう。ステータスを上げたり、逆に下げたり。工夫すれば可能性は無限大だ。
  • 通常の「攻撃」も忘れずに。下手すると行動しなくなることもある。

リアクション

  • 一番簡単なのは「回避可能なら回避→抵抗可能なら抵抗」。これだけでいい感じになるだろう。
    総攻撃によるAP枯らしを戦略に入れさせない場合、高FLEEに回避ばかりさせるとプレイヤーは非常に苦しい。「50%の場合」などをつけるなどしよう。
  • 抵抗を忘れると、スリーピングでぼこぼこにされる。気を付けよう。
  • 防御は減少量が計算しにくい。またAP消費が大きい。4人の攻撃を防御したらそれだけでAPがすっからかんになる。
 

飽きない戦闘の作り方

毎ラウンド同じ行動が続くと飽きてしんどくなるので、その対処法を経験則で書き記す。
あくまでも個人的な意見なので注意。

敵を複数体用意する

最も効果的な方法。
敵が1体だと、向き不向きが現れやすい。その分行動の選択肢も少なくなって単調になる。
特に、APダメージは強くなりすぎるか全く効かないかになりがちなので、それも敵を複数体用意することでちょうどよくなる。

何種類かいることで、パーティによって不利な相手から倒すという戦略が生まれる。

スキルにバリエーションを持たせる

全ての行動が同じ方法で対処できると単調になりやすい。

高ステータスには対抗せずに別の方向から攻めるのがよい。
高fleeには回避不可、プロテクションには軽減無効、高HPにはSPダメージ、など。

普段活躍しづらいスキルを活かせるようにするという方向で考えるのも一つの手。

移動する、させる。

足を止めての戦闘は、移動という行動がない分やはり単調になりやすい。
また、敵が全く移動しないと、移動不可系が腐ることにもなる。

とは言え、ただ移動するだけでは近接キャラが不利になるだけである。強力だけど移動で回避できるスキル、引き打ち、後衛への突進、などを組み合わせると移動させやすい。
攻撃を考えなければすべての行動を移動で回避できる、というくらいでもいいかもしれない。

敵の行動を予測可能にする

敵の行動がわかれば、APをフル活用することができる。
また「狙われているから一度下がる」といった戦略的な行動もとりやすくなる。

プレイヤーが敵の行動を任意に左右できるようになるのが理想。

「指定ラウンドに1回」のスキル

ラウンド制限スキルを組み合わせることで、複雑かつ予測のできる行動が作れる。
トリガーのラウンドを使った方法では複数体が全く同じ行動をとりがちだが、ラウンド制限スキルの場合は同じキャラでも行動をずらすことができる。

 

変数の扱い

使う目的:フラグ立て

イベントを一度しか読み込まない

ボード作成時についてくる初期イベントは、イベントの起動条件が「読み込み時」となっている。
そのため、ボードに入った時、リログをした時など読み込む度に毎回実行されてしまう。
さらに初期設定で「全体イベント」となっているため、他プレイヤーの実行中の個人イベントを中断してまで読み込んでしまう。

一回実行すればよいだけのイベントは、イベントの最後に「変数の操作」を入れ(例:変数yomikomiに1を代入)、イベント全体を条件分岐内で完結すればよい。例:変数yomikomiが1以外の時に実行。

[条件分岐]変数[yomikomi]が1でない場合
 (ここにイベント内容(メッセージなど))
 [変数の操作]ID:yomikomi 操作:代入 値:1
  []
[条件分岐]それ以外の場合
  []

変数が多くなると管理が大変なのが難点となる。
配列変数を扱う、もう来ないボードで使っていた変数を再利用する、などの対策が考えられる。

イベント進行のフラグ

ある条件を満たしたらAに分岐、満たさなければBに分岐という判定に使える。

ただしマルチの場合に「キャラクター変数」でそれをしてしまうと、イベントの作りによってはプレイヤーごとに中身が違うので最悪イベントが進まないということになる(満たした条件がプレイヤー毎にバラバラで、誰もイベントの分岐条件を満たせない)。
マルチの場合は「パーティー変数」を使うのが良いと思われる。

話しかけるたびに反応が変わっていくNPC

イベントの最後に変数を加算していき(例:変数hanasuに1を加算)、条件分岐で変数に応じて話す内容を設定する。

特殊変数

条件分岐や位置指定などのテキスト入力部分にカーソルを合わせた際、黒っぽいフォルダのマークが入力欄右側に表示されることがある。
ここをクリックすると、宣言済みの変数/特殊変数をタブから選べて、内容を直接入力できる。
※キャラクターID選択部分などはマークが表示されないが、コピペなりで記入すれば問題なく動く。

記法さえ合っていれば動作し、「特殊変数の代入」コマンドの節約にもできるので、慣れるととても便利である。ただし誤字やミスには気付きづらいので、扱いには気を付けよう。

  • 特殊変数:乱数の最大値に変数Aを指定する。

\random[\v[変数A]]
 最大値は変数Aに応じて可変となる。

  • イベント起動者のX座標を取得。

\character[\environment.InvokerCharacterId].LocationX
 取得した座標変数の数値をいじれば、移動の操作コマンドでの移動先座標をカスタマイズなどもできる。

 

イベントの扱い

通信制限

「通信・共有」が○となっているコマンドを多用すると通信制限に達し、強制的にログアウトされてしまう。
通信制限に引っかかってしまった場合は以下の対策が必要となる。

無駄な全体イベントは避ける
個人イベントでも事足りる場所は個人で。
と言っても、普通のメッセージイベント程度で通信制限は滅多に起きない。他の原因を探ると調整もしやすいかもしれない。
変数をローカルに変更する
宣言が必要ない(そのイベント外で使用しない)変数はローカルにするといいだろう。
イベント外で一度やりとりするくらいなら、値を引数でやり取りする手もある。
ウェイトを挟む
単純だが有効。難点は設定しただけプレイヤーに待機時間が発生することくらいか。
ウェイトが多くなっても、演出らしくなるタイミングで追加すると意外と自然。

アクティブシーンの終了時

ボードのイベント読み込みに設定できる起動条件「勝利時」は、基本的に一度しか実行されず、何らかの理由で中断された際に二度と起こせなくなる。
つまり、進行が不能となってしまう。

そのため、イベントの起動条件に「勝利時」は使わず、「毎ラウンド」や「アクティブシーン終了時」を使ってイベントを読み込ませると安定する。
「毎ラウンド」を使う場合には「戦闘不能を含む、knockout状態の敵がn体以上の場合」など、敵がいなくなったという条件をイベント内で設定する必要がある。

個々人へのアイテム・スキル配布

クエストでアイテムやスキルを配布したい場合、全体イベントに操作コマンドを入れただけでは、キャラクターIDで指定した一人にしか配布されない。
「全体イベント」から「配布コマンドを入れた個人イベント」を呼び出す必要がある。

  • パブリックボードでは、全体イベントで実行しただけでは全員に適用されないコマンド(クリア処理など)がある。
    「全体イベント」から「クリア処理を入れた個人イベント」を呼び出すと全員にクリア処理が行き渡る。
 

データ

ベースIDとID

アイテムにおいて「ベースID」と「ID」では取得できる内容が違う。

  • ベースID
    アイテムのベースのこと。データベースから右クリックで取得するIDもこれと同じもの。
    同じ種類のアイテムを複数用意し、各ベースIDを取得した場合、全て同じ内容が取得される。
  • ID
    種類に関係なく、個々のアイテム自体を指す。
    同じ種類のアイテムを複数用意し、各IDを取得した場合、それぞれで違う内容が取得される。

「アイテム入力で特定のアイテムを判定したい」などは、ベースIDで判定しないとうまく動かないため注意。

 

クエストが思うように動かなかったら

テストプレイで詰まったときは、イベントを見直してみよう。
クエストはコマンドを入れた通りに動く(=必ずイベント内に原因がある)。原因が分からなかったら、次の項目を確認してみるといいだろう。

ただし慣れないうちは、自分一人で悩むよりは他のマスターを頼ったほうが解決が早い場合もある。

イベントが何度も読み込まれていないか?

例えば初期イベントがログインする度に読み込まれたり、重要なオブジェクトのイベントを何度もクリックできたりして、その度に進行用変数が書き換えられる場合。いつの間にか意図しない数値になる可能性がある。

特にマルチプレイにおいては動作不安定→リログは付き物であるため、初期イベントには条件分岐などを挟んで対処するといい。

条件分岐に中身がきちんと収まっているか?

条件分岐コマンドを設定したが、肝心の中身が外側にあった…というミス。
絶妙に気付きづらいため、条件分岐を開けたり閉じたりして確認しよう。

なお繰り返し処理、判定コマンドも同様のチェックが必要。

変数の動きは正しいか?

変数ウィンドウの「ローカル」タブを見ながらイベントを動かしてみて、想定通りに動いているか確かめてみるといいだろう。
変数確認に限らず、不具合の位置を特定することにも繋がる。

変数は宣言してあるか?

そもそも宣言したつもりがしておらず、イベント終了と共に進行用の変数が破棄されるパターン。
宣言はしてあるが、イベント内で指定した変数名が間違っていた、ということも。

また逆に、ローカル変数のつもりが同名の変数を宣言していて増減が保存されていた、というミスもある。

種別やタイプは正しく選択されているか?

  • 条件分岐コマンドでの「かつ」「または」の取り違い
  • 条件分岐コマンドでの「>」「<」の向き
  • 変数の四則演算の「+」「-」指定ミス
  • etc...

いわゆる凡ミス。おそらくクエスト制作に慣れていてもよくやるものと思われる。早めに気付けるようにしよう。

それでも動かなかったら

まれに、本体側の不具合でうまく動かないということがある。
動作確認をした上で不具合報告をすると早めの修正がなされるかもしれない。

 

その他

  • 判定の操作
    スキルは初期パッシヴ以外、アクションやリアクションも指定できる。
    それぞれスキルレベルが1上がるごとに、達成値に1が加算される。
  • 移動の操作
    リセットのチェックを外すと、同じBGMが途切れたり背景が再度読み込まれたりしない。
  • キャラクターの全回復
    空白でパーティー全員が対象となる。
  • サウンドの操作
    通常BGMや戦闘BGMをイベント側で指定するときは「ループ再生」にチェックをしておこう。
    逆に、効果音がループにならないように気を付けよう。