← 作品一覧

MODv0.1.9 · Unity(BepInEx・Harmony)・C#

Dynamic Pressure

手が空いてしまう時間(これまで)

手が空いたら、敵が来る(その後)

プレイヤーのまわりの戦闘の「圧」をその場で測り、目標を下回った時だけ、そのステージにもともと出る敵を足す mod です。圧が落ちた谷間を埋めて、攻め続ける展開を作ります。部屋ごとに終わりのない敵の波を作るものではありません。

数値の釣り合いは、まだ試している途中です。

ダウンロード数とバージョンは Thunderstore(2026-10-26 時点)。

01課題

圧が抜ける時間がある

戦いの合間に、敵がいなくなって手が空く時間ができます。Dynamic Pressure は、その圧の落ちた谷間をなくすための mod です。敵の数を増やすこと自体は目的にしていません。

02ねらい

足りない時だけ、元のゲームの敵で

  1. 圧を見て足すいま戦っている敵の様子から圧を測り、目標を下回った時だけ敵を出す。
  2. 元のゲームを壊さない出てくるのはそのステージの敵だけで、元の出現は減らさない、入れ替えない。
  3. 足しすぎないプレイヤーが追い込まれている時や、元の敵との戦いが終わった後は出さない。

03設計

足す条件と、止める条件

敵の足し方

出現の仕組みを書き換えて、敵を増やす(これまで)

元の出現には手を入れず、足りない時だけ足す(その後)

足す敵は、そのステージにもともと出る敵の中から選びます。元からいる敵を減らしたり入れ替えたりはしません。

止めどころ

圧が下がり続ける限り、足し続ける(これまで)

足しすぎないための条件を重ねる(その後)

足すのは、元からいる敵が 1 体以上戦っている時だけです。足した敵だけを倒した後は少し待ち、30 秒間元の敵を倒していなければ止めます。元の敵 1 体あたりに足せる数にも上限があります。プレイヤーの体力が少ない時や、攻撃を受けた直後も足しません。

遊ぶ人が確かめられる

裏で何が起きているか分からない(これまで)

画面に、今の圧と「足さなかった理由」を出せる(その後)

強さは Light・Heavy・Nightmare の 3 段階から選べます。数値の釣り合いはまだ試している途中なので、遊ぶ人が自分で確かめて調整できるようにしています。

04実装

作るうえで苦労したこと

「圧」の測り方

敵 1 体ごとに、その敵の出現のコスト(1〜4 の範囲)に、近くにいれば +1、プレイヤーを狙っていれば +2(居場所を知っているだけなら +1)を足します。元からいる敵と、この mod が足した敵は別々に数えています。

ステージの進行を止めない

SULFUR には「敵を全部倒すと扉が開く」仕掛けがあり、足した敵まで数えてしまうと先へ進めなくなりました。0.1.6 から、その確認の前に、足した敵を数から外しています。

重くならないように

部屋が敵でいっぱいになると、出せない敵を毎フレーム出そうとして重くなっていました。0.1.7 から、部屋ごとに出せる数を決め、いっぱいなら隣の部屋に回し、何も出せなかった時は 1 秒待ちます。

ゲームの更新に追いつく

0.19.7 で「最後に攻撃を受けてからの時間」がゲームから消え、mod 全体が動かなくなりました。0.1.9 から、この時間を mod 自身が数えています。数えられない時は画面に出し、ログには 1 回だけ記録します。

05反応

更新の記録