シレン用語集 キャラと行動編

シレンの用語を個人的にどのような意味で使用しているかを整理しておきます。

裏CHUNやシレンwikiやニコ生での用法に沿っているものが多いですが、独自に言っているものもあります。 必ずしもシレンプレイヤーの間でコンセンサスがあるわけではありません。

また、この用法に従うが正しいという規範的な意図はありません。あくまで個人的な使い方を明らかにするものです。

キャラ

シレン・モンスター・NPCのどれか。

1フロアに最大20体存在する。

モンスター / 敵

$7E8835 の値が0であるキャラ。

シレンが正面にいるときAボタンを押すと直接攻撃する。

NPC

$7E8835 の値が0以外のキャラ。

シレンが正面にいるときAボタンを押すと会話が発生する。

魔蝕虫や番犬、盗賊番、敵対状態の店主はNPCではなく敵に含まれる(シレンwikiの定義とは異なる)。

キャラ番号

フロアに存在するキャラを指定するための数値。

シレンは常に19で、他のキャラは0から18までのいずれか。

新しく作られたキャラには、空いている番号のうち最も大きいものが割り当てられる。

種族 / 系統

レベルを除いたキャラの種類。マムル系、ドラゴン系など。

ボウヤーとコドモ戦車とオヤジ戦車は別の系統になる。

キャラコード / キャラID / 種族ID

種族を指定するための数値。内容は 怪物リストを参照。

(敵・NPCの) 行動

シレン以外のキャラの移動・攻撃対象決定と攻撃実行を合わせた処理。

ワナの発動は普通含まれない。

行動順

シレン以外のキャラの移動・攻撃対象決定、ワナ発動、攻撃実行が行われる順番。シレンに対しては定義されない。

キャラ番号が大きいほど行動順が早くなる。

反撃や身代わりが関係すると行動順とは異なる順番で移動や攻撃を行う。この場合、行動順が早くなるとは言わない。

反撃キャラ

シレンが直接攻撃すると、対象となったキャラは行動順に関わらず最初に移動・攻撃対象決定と攻撃実行(高々1回)を行う。このキャラを反撃キャラと呼ぶ。

反撃キャラは最大でも1体のみ。妖刀かまいたちで攻撃した場合は最初にダメージを受けた敵(右前→正面→左前の順で優先)が反撃キャラになる。

ごめんなすって

シレンNPCと位置を入れ替わること。このターン入れ替わったNPCは行動できない。

NPCのキャラ番号は反撃キャラと同じメモリアドレス $7E897F に保存される。その後保存されたキャラがNPCかどうかで行動しないか反撃するかを判定する。そのためシレンが変身してNPCに攻撃した場合、そのNPCは行動しなくなる。

移動・攻撃対象決定

シレン以外のキャラに対して実行される処理の一つ。ターンの順番を参照。 キャラの移動処理および、攻撃対象・(種族により)特技を使うか・追加攻撃回数の決定を行う。

キャラが攻撃するためには、ここで攻撃対象が設定される必要がある。

単に移動とも言うこともある。

移動しようとする

移動可能なマスを求め、そこに移動する処理。移動可能なマスが無い場合は移動しない。 移動しなくても目的地や方向が設定される場合がある。

単に移動すると言うこともある。

移動 / 歩く

キャラの方向・座標を設定する処理。

通常移動

移動・攻撃対象決定の一部で、特技を持たないキャラや封印状態のキャラに対して行われる処理。 倍速や状態異常の判定はこの前に行われるため、通常移動には含まない。

ただし敵移動先・攻撃対象決定メモなどではさらに一部分を通常移動としている(反省)。

視界内にいる

シレンと他のキャラの位置関係によって決まる関係。敵の移動や特技の使用判定などに影響する。

シレンがあるキャラCの視界内にいるのは次のいずれかのとき。

  • シレンとCの距離が1 (シレンがCの周り1マスにいる)
  • シレンとCが同じ部屋かその部屋の入口にいる
  • シレンが部屋番号0の部屋にいて、Cが壁または隠し通路にいる(初期配置は除く)
  • シレンが部屋番号1の部屋にいて、Cが隠し通路の入口にいる
  • シレンが部屋番号2の部屋にいて、Cが隠し部屋にいる(初期配置は除く)

キグニ族の移動・攻撃対象決定では、シレンの座標・足元の地形をキグニ族または向かっていくキャラのものに置き換えて処理する。旅仲間についても同様。

目的地

キャラごとに保存されたマスの座標。目的地を持たないこともある。主にどこに向かって移動するかに影響する。モンスターの移動と目的地を参照。

左折の法則による移動

キャラの向いた方向から 正面→左前→右前→左→右 の順で移動可能なマスに移動しようとする処理。

目的地を持たないキャラが通路で行う基本的な移動。

目的地に向かう移動

目的地に向かう方向から 正面→左前→右前 または 正面→右前→左前 の順で移動可能なマスに移動しようとする処理。

移動できないときキャラの方向が設定される場合がある。Twitterを参照。

待機ターン / 詰まりターン

主にキャラが連続して移動できなかった回数を数える数値。キャラの生成時は0ではなく1になる。

通常移動では、待機ターンが5のとき移動できないとふらふら移動する。敵移動先・攻撃対象決定メモを参照。

おびえ時の移動では意味が異なり、偶数なら右伝い、奇数なら左伝いのフラグとして用いられる。

ふらふら移動

ランダムな方向を向いて左折の法則で移動しようとすること。

エーテルデビルは1/2ずつの確率で通常移動かふらふら移動する。

パコレプキンの移動はふらふら移動とは異なる。

固有の移動・攻撃対象決定

移動・攻撃対象決定は種族ごとに実行される処理が定義されている。この定義された処理を固有の移動・攻撃対象決定という。

主に通常移動と異なる処理について用いる。通常移動するキャラについて、固有の移動・攻撃対象決定を持たないと言うこともある。

例:

ナイフゲータ系の追加攻撃回数は固有の移動・攻撃対象決定で設定される。

隣接判定 入室判定 退室判定

シレンの位置や部屋の出入りによってキャラの目的地・方向の設定を行う処理。モンスターの移動と目的地を参照。

入室判定・退室判定はシレンの入室・退室に対して行われるもので、敵の入室・退室に関係するものでないことに注意。

3つをまとめて隣接入退室判定とも言う。

攻撃対象

キャラが攻撃ないし特技を実行しようとしている対象。キャラ番号によって表現される。

移動・攻撃対象決定時に設定され、そのターンに攻撃実行することによって消費される。 ただし鈍足ダッシュバグなどによって次のターンに持ち越されることもある。

追加攻撃回数

シレン以外のキャラが連続攻撃を行うための数値。倍速キャラやサーベルゲータの移動・攻撃対象決定時には1が、ブレイドゲータは2が設定される可能性がある。

通常攻撃およびオヤジ戦車系固有の攻撃実行時、追加攻撃回数が1以上なら攻撃対象を再設定し追加攻撃回数を-1することによって連続攻撃が実現されている。 他の特技では攻撃対象が再設定されない。そのため倍速のドラゴンが連続で炎を吐くといったことはない。

攻撃実行

通常攻撃や特技の発動を行う処理。攻撃対象を持つキャラに対して行われる。攻撃対象として設定されたキャラ番号を持つキャラが存在しない場合は実行されない。ターンの順番を参照。

固有の攻撃実行

攻撃実行は種族ごとに実行される処理が定義されている。この定義された処理を固有の攻撃実行という。主に通常攻撃と異なる処理について用いる。

認識する

基本的に使用しない。

  • シレンの位置に目的地が設定される
  • シレンの位置に依存して移動する(「パコレプキンはフロア全体でシレンを認識する」など)
  • 視界内にいる

といった様々な意味で使われることが多く、曖昧になってしまうので避ける。

見えている

「認識する」と同様基本的に使用しない。

見られる

キャラの移動や隣接入退室判定によってシレンの位置に目的地が設定されること。

これも曖昧になってしまいがちなので注意が必要な語。

レベル変化時のリセット処理

泥棒時のモンスター自然発生

トラバサミ状態とワナ発動フラグセット時のキャラの移動

粘り食い

入店と退店に関する判定

以下の記述では ターンの順番モンスターの移動と目的地 の内容を前提としています。

属性とどろぼうとその辺の適当な推論 :ブログマガずン - ブロマガ を踏まえて、店の出入りの判定について説明してみます。リンク先の「属性」という用語をここでは ダンジョン編集 に倣い「地形」と呼びます。

店の出入りに関する判定は2つあり、それらを入店判定・退店判定と呼ぶことにします。両者を合わせて入退店判定とも呼びます。入退店判定では1つの地形を保存していて、これをシレンのいる地形と比較することで入退店を判定しています。この保存される値を前回入退店地形ということにします。ちなみに、通常の入退室判定も同様に前回の地形を保存して判定していますが、入退店判定とは独立した変数を使用します。

入店判定では、前回入退店地形とシレンのいる地形が異なり、かつシレンのいる地形と店主のいる地形が等しいとき、入店と判断します。前回入退店地形は入店時のみシレンのいる地形に設定します。

退店判定では、前回入退店地形とシレンのいる地形が異なり、かつ前回入退店地形が店のとき、退店と判断します。入店判定と違い、退店時でなくても前回入退店地形をシレンのいる地形に設定します。前回入退店地形が店かどうかの判定は店主の位置等とは無関係であることに注意してください。

擬似コードでは、入退店判定は次のように表されます。

入店判定:
  前回入退店地形 ≠ シレンのいる地形 かつ シレンのいる地形 == 店主のいる地形:
    入店(いらっしゃいませ・BGMを変更)
    前回入退店地形 = シレンのいる地形

退店判定:
  前回入退店地形 ≠ シレンのいる地形:
    前回入退店地形が部屋で店:
      退店(請求状態ならどろぼう、そうでないならBGMを戻すなど)
    前回入退店地形 = シレンのいる地形

入店判定は店主の移動時に行われ、退店判定は敵移動と罠発動の間に行われます(つまり退店判定と通常の入退室判定はほぼ同じタイミング)。店主がいない場合・状態異常で店主固有の移動ができない場合・シレンが倍速で店主が行動できないターンの場合等にBGMが変わらないのはこれによります。また、入退室判定と同様、シレンが通常の移動以外で移動した場合、退店判定は即座に実行されます。ただし、その場合前回入退店地形は変更されません。

sm16111601 で泥棒にならない理由を考えてみましょう。店主が通路にいる状態でシレンが店から通路に出た場合、入店判定で入店扱いになり、前回入退店地形が通路に設定されます。退店判定では、前回入退店地形とシレンのいる地形がともに通路であるため、退店となりません。店主が状態異常等の場合、入店判定が実行されないため、退店判定において前回入退店地形は店の部屋、シレンのいる地形は通路となるため泥棒になります。通常の移動以外で店から出たときは即座に退店判定が実行されるため、こちらも泥棒になります。

店主と身代わりが店内にいる場合を考えます。身代わりがいるとき、入店判定では(より一般的に言うと敵移動時には)身代わりのいる地形をシレンのいる地形とみなして判定を行います。それに対し退店判定では身代わりがいてもシレンのいる地形は影響されません。そのため毎ターン入店と退店が繰り返されることになります。

シレンが透明のとき(つまりエーテルデビルへの変身時)を考えます。入店判定時(敵移動時)にシレンのいる地形は通路と見なされますが、退店判定時は実際にシレンがいる地形が使用されます。さらに店主が通路にいる場合の挙動もこれで説明できます。ただし、シレンが透明のときはマスの地形の判定とは関係なく泥棒扱いにしないという例外処理が行われていることに注意する必要があります。

2015/02/23 透明・やりすごし状態と座標