次バージョンの他の新機能

エネミーのコマンド使用条件と、召喚コマンド以外の新機能について(マニュアル追記がてら)。

  1. コマンドの遅延ターンの設定
  2. 実行回数の分散
  3. フロア名に関する機能
  4. 石の中で全滅すると、荷物ごと街に戻す機能
  5. 待機中キャラクタのステートが進行する
  6. 消滅を防止するステート
  7. ステートの追加

次バージョンはちょっと遅れてますが、不具合対応をいくつかしたほか、エネミー戦術・召喚コマンドと、以下で全部です。

コマンドの遅延ターンの設定

戦闘時専用のコマンド設定です。発動(起動)してからNターン後にコマンドの効果が現れます。

以下は仕様です。

  • 消費は起動時に解決します
  • コマンドの効果が現れるまでに、実行者が死ぬか、裏切ると起動したコマンドはキャンセルされます。ただの行動不能の場合は効果が現れます
  • 効果が現れるか、前述の条件によりキャンセルされるまでは、同じコマンドを入力することができません
  • 命中判定や威力などに使う能力値には、「効果が現れた瞬間」の値を使います
  • 入力/発動条件は、効果が現れた瞬間には判定しません(他のコマンドと同様、コマンド入力/起動時に解決します)
  • 効果が現れるターンの速度は、コマンド速度設定の「ターンの最初」の次です

遅延コマンドキャンセルの条件はいろいろ設定できても良いと思いますが、さしあたり以上のようにしてあります。

今思ったんだけど、この機能は、「Nターン後に別のコマンドを使う機能」にしてもよかったなあ。

(元ネタは世界樹の迷宮の「サジタリウスの矢」やウルティマオンラインの「エクスプロージョン」ですが、世界樹の場合は、実行者が行動不能だと効果が現れませんでした。また、コマンドの有効判定は効果の現れるターンのみで、それまでに実行者の行動不能を回復してあれば効果が現れました。Desigeonは実行者が死んだり、裏切った時点でコマンドがキャンセルされます)

実行回数の分散

現在、コマンドの実行回数は、対象者すべてに適用されます。

新たに、コマンドの実行回数を、集団に対し分散させる機能を追加しました。集団コマンド用の機能なので、対象がグループもしくは全体のコマンドに使います。

たとえば、実行回数が3回のコマンドを一グループに使う場合、実行回数がランダムで以下のように割り当てられます。例では対象コボルドが3体いるとします。

対象 適用回数
コボルド−A 0回
コボルド−B 2回
コボルド−C 1回

従来であれば、コボルドA〜Cすべてに3回ずつ効果が行きましたが(回数設定が固定値の場合)、ランダム分散オプションを設定したコマンドでは、「3回を分散」させます。

回数決めはあくまでランダムです。均等にばらまくことが約束されているわけではありません。HPの残量がわずか1の相手に、攻撃回数が集中することがあるかもしれませんが、その効率までは判断しません。

回数の決定タイミングは、コマンドの効果が現れた瞬間です。コマンドの効果が現れるまでに対象が減っていれば、生き残りに効果が集中します。

本来、サンプルミニゲームに設定されている魔法使い呪文「ドク弾幕」は、この機能を前提としたものでした。あの時点では機能が間に合わなかったので、グループ全体に等しく回数をばらまいています。むちゃくちゃ強力なコマンドになっていました。

処理的には、回数を均等に散らばらせることも簡単にできるのですが、まずは元ネタに近い仕様でスタートさせています。

(元ネタは世界樹の迷宮の「ダブルアタック」「ハヤブサ駆け」です。ただし細部の仕様は合わせていません)

フロア名に関する機能追加

迷路のフロアごとに名前を付ける機能です。これまでフロア番号しかありませんでした。

フロア名の設定

地図系コマンドで地図や現在位置を表示すると、「地下(地上)○○階」のかわりに、名前が表示されます。設定しなければ従来通りです。

以下は、現在位置の表示コマンドの結果です(ウィザードリィでいうとデュマピック)。名前が長すぎると正しく表示されない罠があります。

この機能、次バージョンで入れる予定はなかったのですが、たいした作業ではないことと、偶然考えにタイムリーな要望が来たことで、一緒に入れました。

フロア切り替え時のフロア名の表示

ついでに、フロアを切り替えた直後に、フロア番号もしくはフロア名を画面に表示する機能も追加しました。

階段やゲートによる移動だけでなく、ワープなどの強制転送でも、所在フロアが切り替わればフロア名が表示されます。

表示機能は、ゲームシステムの設定からオン・オフを切り替えます。

ただこの機能、例の「世界樹の迷宮」のようにかっこいい表示がされるわけではなくて、壁にぶつかったときに表示する「いてっ」などと同じ形でシンプルに表示しているだけなので、雰囲気はいまふたつです。

それとDesigeonの場合、迷路に降り立ったときにキャンプ画面が表示されます。これはエンタテイメントの演出という点では今ひとつです。

ウィザードリィの場合、明かりやら保護やらの呪文を使う操作のため、迷路に入った直後のキャンプ画面は便利でしたが、そういうゲームばかりではないので、ちょっと考えたいところです。

表示関連はどのみち弄らねばならないので、この措置は暫定です。

石の中で全滅すると、荷物ごと街に戻す機能

ゲームシステム設定にある「全滅の処置」に関する設定です。

パーティが「石の中」で全滅したとき、すべての遺体と荷物を、街に帰還させるオプション機能が追加されています。

街に帰還させるオプションを設定すると、「ゲームオーバー」の設定をのぞき、全PCと荷物が街に戻ります。アイテム消滅などの設定がなされていても、それを無視します。「石の中」で全滅した場合、必ず機能します。たとえば「石の中」でモンスターと出会い、戦闘で全滅したとしても、設定が働いて街に強制帰還します。

これまでは「全滅の処置」の設定に従い、ゲームオーバーになるか、街に戻るか、死体が迷路の中に残るかの選択があるのみでした。たとえ街に戻る設定でも、荷物に「一部を迷路に残す」設定ができるようになっていました。

しかし迷路構造によっては、石の中のキャラクタと荷物を回収できないことがあります。オプションを設定することで、「石の中」には何も残さないことができます。

待機中キャラクタのステートが進行する

ステートの進行に関するテストです。

現在、迷路や酒場で待機しているキャラクタのステートは、時間が進行しても影響が出ず、時限消滅もありません。

これを、すべてのキャラクタに影響が出るようにして、時限消滅&変化も機能するようにしてみます。

これによって、いくつか応用ができるようになるのですが、一つは、死んだキャラクタの自然ロストができるようになります。つまり、死体を放置しすぎると灰になり、やがてロストする、ということができるようになります。

今のところ、ロストまで進行したキャラクタが「自動削除」されることはありません。一度パーティに組み込んで、これまで同じ条件を満たしたときに埋葬することになります。

酒場にロストキャラは置けませんが、酒場の中でロストした場合は例外的に置いたままにすることができます。この場合、ロストキャラの回収のみできます。

消滅を防止するステート

時間経過による消滅を防止するステートを設定できます。ステート一個あたり一個だけ。

使い道はいろいろですが、一つには遺体の腐敗防止が意図されています。他には、長期戦向けに、強化ステートを長持ちさせるなど。

あんまり無理して使うような機能ではありません。

ステートの追加

他の機能に合わせて、ステートを増やす必要があると感じたので増やしてあります。

特殊ステート

いずれも採用した場合に有効です。また、消すことはできません。条件を満たす限りステートを持ち続けます。意図的に付与したり、付与したものを削除することはできますが、付与・削除したからといって状況が変化することはありません。

それぞれに設定した排他ステートは有効なので、たとえば後衛キャラクタが前衛に来たときに、前衛にふさわしくない一般ステートを消すことはできます。

クローン型PCステート
クローン型のPCが持っています。保持者はクローン戦PC,増援PC,複製PC,エネミーの模倣コマンドによって変化した偽PCです
複製エネミーステート
複製エネミーが持っています(増援エネミーや変化エネミーには付きません)
PCステート
PCと、PCを元に作られたキャラクタが持っています
エネミーステート
エネミーと、エネミーを元に作られたキャラクタが持っています
プレイヤーパーティステート
プレイヤーパーティに属するキャラクタが持っています。「寝返り」コマンドで切り替わります。パーティから外してあるキャラクタには付きません
エネミーパーティステート
エネミーパーティに属するキャラクタが持っています。「寝返り」コマンドで切り替わります
前衛ステート
前衛キャラクタが持っています。配置が換わればステートも切り替わります
中衛ステート
中衛キャラクタが持っています。配置が換わればステートも切り替わります
後衛ステート
後衛キャラクタが持っています。配置が換わればステートも切り替わります

ステート番号は51以降に割り当ててありますので、標準のサンプルミニゲームからは見えません。ステートの種類数を増やさないと、上記は使えません。

裏切りだの複製だのいろいろあると、ひょっとしたらこういうステートで相手を区別すると便利なこともあるかもしれない、という程度の気持ちで実装しています。私が具体的な使い道を考えているわけでもなかったりします。

無理に使わないようにしましょう。

一般ステート
  • キャラクタをパーティから外したとき
  • キャラクタをパーティに加えたとき
  • フロアに入ったとき
  • フロアから出たとき

この四条件に対し、付与・削除ステートを一つずつ指定できるようになっています。設定はフロアのところでやります。

パーティの離脱と加入は、戦闘での裏切りには無効です。裏切ったPCは戦闘が終わればパーティに戻るので、実質パーティからは外れていないという理由からです。戦闘向けの機能ではありません。

他の考え

  • 遅延コマンドは、効果が一回こっきりではなく、Nターンおきに定期効果が現れるようにもしたかったが、キャンセルの仕様も盛り込まねばならないので先送り
    • ……でも定期効果の処理自体は簡単なんだよなあ
  • チェイススキルは先送り。たぶんマハマンやパルプンテと同じくらいのプライオリティがいい
    • ……そもそもDesigeonに属性の概念がないじゃん
  • 発動タイミングをいろいろ追加したいけど先送り
    • ……戦後手当とホーリーギフトが欲しいんだけど、後者は取得経験値が絡むので、コマンド以外の部品にも手を入れなければならなくて
  • コマンドの対象に前衛・中衛・後衛を追加したい
    • ……前衛を守るか、後衛を守るか。それが問題だ