REPO_JP-EndlessEnemy icon

EndlessEnemy

【Host Only MOD】Instantly respawns the next enemy whenever all alive enemies have been eliminated.生きている敵が全滅した時に、次にリスポーンする敵を即座にリスポーンさせます。

By REPO_JP
Last updated a day ago
Total downloads 233
Total rating 2 
Categories Mods Monsters Server-side AI Generated
Dependency string REPO_JP-EndlessEnemy-4.0.0
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100

README

COMPATIBLE WITH R.E.P.O. V0.4.4.

EndlessEnemy

This mod is a host-only mod that prevents long periods without enemies by shortening the respawn timers of despawned enemies when all currently active enemies have been defeated.

Overview

Normally, R.E.P.O. can occasionally enter periods where no enemies are present because every spawned enemy has been killed while the remaining enemies are still waiting for their respawn timers to expire.

This mod monitors the number of currently active enemies at configurable intervals.

When the number of alive enemies reaches zero, the mod searches for the despawned enemies with the shortest remaining respawn timers and reduces those timers to a configurable value.

This allows enemy encounters to continue more consistently and reduces downtime between fights.

The number of enemies affected and the shortened respawn time can both be configured.

Behavior

  • Host-only mod
  • Clients do not need to install this mod
  • Checks whether alive enemies remain only at configurable intervals
  • Uses a lightweight design to minimize unnecessary processing
  • Does not allocate candidate lists while alive enemies are still present
  • Only builds the candidate list after confirming that no alive enemies remain
  • Selects enemies with the shortest remaining respawn timers
  • Shortens only the configured number of enemy respawn timers
  • Waits for a configurable cooldown period after activation before checking again
  • Supports optional debug logging

Enemy check behavior

The mod performs enemy checks using the following flow.

  1. Wait until the configured check interval has elapsed.
  2. Verify that the mod is enabled.
  3. Verify that the local player is the host or is playing in singleplayer.
  4. Verify that a level has been generated.
  5. Verify that extraction completion rules allow processing.
  6. Scan all enemies to determine whether any alive enemies currently exist.
  7. If at least one alive enemy exists, stop immediately without allocating additional lists.
  8. If no alive enemies exist, build a list containing valid respawn candidates.
  9. Select the configured number of enemies with the shortest respawn timers.
  10. Shorten those timers to the configured value.
  11. Wait until the configured cooldown duration has elapsed before checking again.

Multiplayer

This is a host-only mod.

Enemy spawning and respawn timing are controlled by the host.

Because of that, clients do not need to install this mod.

If the host installs the mod, all players in the lobby will experience the modified behavior.

Configuration

General.Enabled

Enables this mod.

  • Default: true
  • Minimum: false
  • Maximum: true

General.CheckIntervalSeconds

Interval used when checking whether any alive enemies remain.

  • Default: 5
  • Minimum: 0.5
  • Maximum: 60

General.AfterTriggerCooldownSeconds

Delay before enemy checks resume after respawn timers have been shortened.

  • Default: 20
  • Minimum: 0
  • Maximum: 300

General.RespawnCount

Number of enemy respawn timers that will be shortened.

Enemies with the shortest remaining respawn timers are selected first.

  • Default: 1
  • Minimum: 1
  • Maximum: 20

General.RespawnTimerSeconds

Respawn timer value applied to selected enemies.

  • Default: 5
  • Minimum: 1
  • Maximum: 60

General.IgnoreAfterExtractionCompleted

Prevents the mod from shortening respawn timers after all extraction points have been completed.

  • Default: false
  • Minimum: false
  • Maximum: true

Debug.DebugLogEnabled

Outputs information about affected enemies to the BepInEx log.

The enemy name and timer changes will be displayed whenever the mod shortens a respawn timer.

  • Default: false
  • Minimum: false
  • Maximum: true

Notes for developers

The mod patches EnemyDirector.Update() using a Harmony Postfix.

Enemy checks are intentionally interval-based instead of frame-based.

Under normal gameplay conditions, the mod only performs a lightweight alive-enemy scan.

Candidate list allocation only occurs after the mod confirms that there are no alive enemies remaining.

Respawn targets are selected using the shortest remaining respawn timers, minimizing interference with vanilla enemy flow while reducing downtime between encounters.

※Mod created by AI

R.E.P.O. V0.4.4対応済み.

EndlessEnemy

REPOが好きな日本人のための日本人のみのREPOのDiscordサーバーあります! 参加は以下のリンクから! https://discord.gg/h5ATY4m5bZ

このMODは、現在出現している敵がすべて倒された際に、待機中の敵のリスポーンタイマーを短縮することで、敵のいない時間を減らすホスト専用MODです。

概要

R.E.P.O.では、出現している敵をすべて倒した後、残りの敵がリスポーンタイマー待ち状態となり、しばらく敵が存在しない時間が発生する場合があります。

このMODは、設定された間隔で現在生存している敵の数を確認します。

生存敵が0体だった場合、待機中の敵の中から最も早くリスポーンする予定だった敵を探し、そのリスポーンタイマーを設定値まで短縮します。

これにより、戦闘が途切れにくくなり、継続的に敵と遭遇できるようになります。

短縮する敵の数や短縮後の時間はConfigから変更可能です。

動作内容

  • ホスト専用MOD
  • 参加者は導入不要
  • 生存敵の確認は設定された間隔ごとにのみ実行
  • 不要な処理を抑えた軽量設計
  • 生存敵が存在する場合は候補リストを生成しない
  • 生存敵0体が確定した場合のみ候補リストを生成
  • 最も早くリスポーンする敵から順番に対象を選択
  • 設定された数の敵のみタイマーを短縮
  • 発動後は設定された待機時間が経過するまで再判定を行わない
  • デバッグログ出力に対応

敵確認の流れ

このMODは以下の流れで動作します。

  1. 設定された確認間隔が経過するまで待機
  2. MODが有効か確認
  3. ホストまたはシングルプレイか確認
  4. レベル生成済みか確認
  5. 抽出完了時の設定を確認
  6. すべての敵を走査し、生存敵が存在するか確認
  7. 生存敵が1体でも存在した場合、その時点で処理終了
  8. 生存敵が0体だった場合のみ候補リストを生成
  9. 最も早くリスポーンする敵を設定数だけ選択
  10. リスポーンタイマーを設定値へ変更
  11. 設定された待機時間が経過するまで再判定を停止

マルチプレイ

このMODはホスト専用MODです。

敵の出現およびリスポーンタイマーはホスト側で管理されています。

そのため、参加者はこのMODを導入する必要はありません。

ホストが導入していれば、同じ部屋のすべての参加者に効果が反映されます。

設定項目

General.Enabled

このMODを有効化します。

  • 初期値: true
  • 設定可能最小値: false
  • 設定可能最大値: true

General.CheckIntervalSeconds

生存している敵が存在するか確認する間隔です。

  • 初期値: 5
  • 設定可能最小値: 0.5
  • 設定可能最大値: 60

General.AfterTriggerCooldownSeconds

タイマー短縮後、次回確認まで待機する秒数です。

  • 初期値: 20
  • 設定可能最小値: 0
  • 設定可能最大値: 300

General.RespawnCount

リスポーンタイマーを短縮する敵の数です。

最も早くリスポーンする敵から順番に選択されます。

  • 初期値: 1
  • 設定可能最小値: 1
  • 設定可能最大値: 20

General.RespawnTimerSeconds

対象となった敵へ設定するリスポーンタイマー秒数です。

  • 初期値: 5
  • 設定可能最小値: 1
  • 設定可能最大値: 60

General.IgnoreAfterExtractionCompleted

すべての抽出ポイント完了後はリスポーンタイマー短縮を行わなくなります。

  • 初期値: false
  • 設定可能最小値: false
  • 設定可能最大値: true

Debug.DebugLogEnabled

タイマーを短縮した敵の情報をBepInExログへ出力します。

発動時には敵名と変更前後のタイマーが出力されます。

  • 初期値: false
  • 設定可能最小値: false
  • 設定可能最大値: true

開発者向け詳細

このMODは EnemyDirector.Update() にHarmony Postfixを適用します。

敵確認処理は毎フレームではなく、設定された間隔ごとにのみ実行されます。

通常時は、生存敵の有無を確認する軽量な走査のみを行います。

候補リストは、生存敵が0体であることを確認した後にのみ生成されます。

対象となる敵は、残りリスポーン時間が最も短い敵から選択されるため、バニラの敵出現順を大きく崩さずに敵の空白時間のみを短縮します。

※AI生成MOD