Top > アイテムの落下位置

アイテムの落下位置 Edit

参照:風来のffff_アイテムの落下位置

アイテムの落下位置について考える。
モンスターアイテムをドロップした場合を想定するが、投げて落ちた場合なども同様。

倒れた位置に落下 Edit

モンスターが倒れた位置にアイテムが落下できる、つまり壁や水脈でなくアイテムや罠が無い場合、そのマスにドロップする。

周り1マスに落下 Edit

倒れた位置に落下できない場合、周り1マスから落下位置を決定する。

モンスターが倒れた位置を中心として、次の表のように番号を振る。
つまり、倒れた位置が(5)、左上が(1)、上が(2)、...とする。

(1)(2)(3)
(4)(5)(6)
(7)(8)(9)

このとき、落下位置は次のように決まる。

(1)から(9)の中からランダムにマスを取得。
そのマスにアイテムが落下できるなら落下位置をここに決め終了。
落下できないなら次のマス((1)なら(2)、(2)なら(3)、(9)なら(1)など)を順次調べ、最初に落下できる位置を落下位置とする。

  • これから分かるように、周り1マスのそれぞれのマスにドロップする確率は均等ではない。
    例えば次の場合、地雷にかかったトドのアイテムが左に落ちる確率は7/9、右に落ちる確率は2/9になる。
◆◆◆◆◆           ◆:壁
◇◇雷◇◇           ◇:通路
◆◆◆◆◆           雷:地雷

周り2マスに落下 Edit

周り1マスに落下できない場合、周り2マスから落下位置を次のように決定する。

  • ステップ1
    • (1)から(9)の中からランダムにマスを取得し、そのマスをCとする。
  • ステップ2
    • Cが壁・水脈でないとき
      • Cを中心として周り1マスの落下位置を求める。
        落下位置が無いか、モンスターが倒れた位置が部屋かつ落下位置が部屋でないならCを次のマスに設定し、ステップ2を繰り返す。
        そうでなければ落下位置をそのマスに定め終了。
    • Cが壁・水脈のとき
      • Cを次のマスに設定し、ステップ2を繰り返す。
         
  • ステップ2は最大9回繰り返される。
  • 上記の仕様のため、半径2マスの範囲内でも以下のような位置には落ちない。
    • モンスターが倒れた位置から「角抜け可能」「壁または水路のマスを通れない」という条件で移動するには3ターン以上かかるような位置には落ちない。
      「★」の位置でモンスターが倒れた場合、「O」の位置には落ちるが、「X」の位置には落ちない。
      
      XOOOX     XOOOX
      O◆O◆O     X◆O◆X
      OO★OO     X◆★◆X   ◆:壁または水路
      O◆O◆O     X◆O◆X
      XOOOX     XOOOX
    • 部屋でモンスターが倒れた場合、2マス先の通路またはつるはし穴には落ちない(1マス先になら落ちる)。
      ========フロアの状態========      ==落下可否==
      
      +++++                        XXXXX
      +++++ ◇:部屋                   XOOOX
      +◇★◇◇ +:通路またはつるはし穴           XO★OO
      +◇◇◇◇ ★:モンスター死亡位置(部屋内)       XOOOO
      +◇◇◇◇                        XOOOO
    • 以下の図Bのような場合、運(乱数)によってアイテムが落ちる時と落ちずに消えてしまう時がある。
       ==図A==     ==図B==
       ◆◆◇矢矢      ◆+◇矢矢   ◇:部屋
       ◆◆矢◆矢      ◆◆矢◆矢   ◆:壁または水路
       ◆◆★矢矢      ◆◆★矢矢   +:つるはし穴または通路
       ◆◆矢◆矢      ◆◆矢◆矢   ★:モンスター死亡位置(足元に矢)
       ◆◆矢矢矢      ◆◆矢矢矢   矢:矢(部屋内)
      図Aでは「◇」の位置にアイテムが必ず落ちる。しかし図Bの場合、1/9の確率で「◇」の位置に落ち、8/9の確率で落ちずに消えてしまう。
      これは、上記の周り2マスに落下時の処理中の「モンスターが倒れた位置が部屋かつ落下位置が部屋でないならCを次のマスに設定し」という処理のおかげで、周り2マスの位置につるはし穴や通路があると、Cを中心とした周り1マスの落下可否をすべて網羅する前にCを次のマスに設定してしまうことがあるため。
  • 図Bでは以下のような順で処理が行われる。
   「◇」に落ちる場合の例
  1. 前略
  2. 「★」の一つ上のマスにCを設定
  3. Cの周囲9マスからランダムに位置を決定し、Dとする。今回は「◇」の位置に決定。
  4. Dが壁や水路でなく、アイテムやワナがないことを確認。条件をクリアしているため次へ
  5. モンスターが倒れた位置が部屋内であるため、Dが部屋か否かを確認。部屋であるためDにアイテムを落として終了
   「◇」に落ちずに消える場合の例1
  1. 前略
  2. 「★」の一つ上のマスにCを設定
  3. Cの周囲9マスからランダムに位置を決定し、Dとする。今回は「+」の位置に決定
  4. Dが壁や水路でなく、アイテムやワナがないことを確認。条件をクリアしているため次へ
  5. モンスターが倒れた位置が部屋内であるため、Dが部屋か否かを確認。部屋でないためCを「★」の右上のマスに設定
  6. 後略
   「◇」に落ちずに消える場合の例2
  1. 前略
  2. 「★」の一つ上のマスにCを設定
  3. Cの周囲9マスからランダムに位置を決定し、Dとする。今回はCの下の位置に決定
  4. Dが壁や水路でなく、アイテムやワナがないことを確認。矢があるためDを次のマス(Cの右下)に決定する。
  5. Dが壁や水路でなく、アイテムやワナがないことを確認。壁であるためDを次のマス(Cの左上=「+」の位置)に決定する。
  6. Dが壁や水路でなく、アイテムやワナがないことを確認。条件をクリアしているため次へ
  7. モンスターが倒れた位置が部屋内であるため、Dが部屋か否かを確認。部屋でないためCを「★」の右上のマスに設定
  8. 後略

その他・余談 Edit

コメント Edit

Show recent 10 comments. Go to the comment page.

  • 何気に知っていないと損する知識だと思う。特に周り2マスに落下する時、場合によっては消えることもあるのだから -- 2019-07-23 (火) 23:09:15
  • シレンプレイヤーだと、壺割りや矢稼ぎとかで自然と理解してる人多そう -- 2019-07-24 (水) 12:43:23
Comment: URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White


Freeze Diff Rename Backup  
Last-modified: (1002d)