ExtractionAutoRevive
【Host Only MOD】Revives dead players on extraction collection no matter where they are.納品回収時に死亡プレイヤーをどこにいようが蘇生させるMOD
By REPO_JP
| Date uploaded | 2 weeks ago |
| Version | 1.3.0 |
| Download link | REPO_JP-ExtractionAutoRevive-1.3.0.zip |
| Downloads | 6195 |
| Dependency string | REPO_JP-ExtractionAutoRevive-1.3.0 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2304README
ExtractionAutoRevive
Host-only automatic revive mod for extraction cleanup, with delayed revive support for electrified death pit heads.
Overview
ExtractionAutoRevive is a host-only mod that changes the game's built-in extraction/shop cleanup revive flow so dead players can be revived even if their death head is not inside the extraction point.
Normal death heads are revived immediately. Electrified death pit heads are queued and revived only after the pit rescue effect has ended and the head has settled enough to avoid dropping again immediately.
Features
Player-facing behavior
- Automatically revives dead players during extraction cleanup
- Works for normal extraction cleanup and shop cleanup
- Uses
Revive(true)for the actual revive call - Delays revive for electrified death pit heads until the rescue effect has ended
- Avoids reviving pit heads while they are still moving too fast
- Clears pending delayed revive entries on scene changes, run transitions, extraction completion, and truck return related transitions
- Host-only behavior
Technical behavior
- Hooks the game's existing cleanup revive path instead of building a second independent player scan
- Temporarily overrides
PlayerDeathHead.Revive()only while extraction/shop cleanup is running - Uses
DeathPitSaveEffect.timeCurrent > 0fas the main electrified pit-head detection rule - Stores pending delayed revives in a
Dictionary<int, PendingReviveEntry> - Uses
PhotonView.ViewIDas the primary queue key when available - Starts the pending monitor only when delayed pit-head entries actually exist
- Avoids double-handling when the vanilla truck auto-revive flow should take over
- Does not force-write extraction/truck flags on death heads, helping preserve the game's existing eye-flash style behavior
Installation
- Install BepInEx 5.4.x for REPO
- Put
ExtractionAutoRevive.dllintoBepInEx/plugins - Install on the host
- Start the game
Usage
No command is required. When extraction/shop cleanup runs, the host automatically handles revive logic.
Configuration
General
EnableMod
Setting name
EnableMod
Description Enables or disables the mod
Default
true
Minimum Boolean only
Maximum Boolean only
Log
EnableLog
Setting name
EnableLog
Description Enables standard mod logs
Default
true
Minimum Boolean only
Maximum Boolean only
EnableVerboseLog
Setting name
EnableVerboseLog
Description Enables verbose diagnostic logs
Default
false
Minimum Boolean only
Maximum Boolean only
PitHead
PitHeadExtraDelaySeconds
Setting name
PitHeadExtraDelaySeconds
Description Additional wait time after the death pit electricity effect ends before revive is allowed
Default
0.35
Minimum
0
Maximum
5
PitHeadMaxVelocityToRevive
Setting name
PitHeadMaxVelocityToRevive
Description Maximum allowed head velocity magnitude before delayed revive can occur
Default
1.0
Minimum
0
Maximum
20
PendingCheckIntervalSeconds
Setting name
PendingCheckIntervalSeconds
Description Polling interval for the delayed pit-head revive monitor while queued entries exist
Default
0.05
Minimum
0.02
Maximum
1
Notes
- This is a host-only mod
- Delayed revive handling is intended specifically for death heads still in the death pit rescue electricity state
- The mod keeps the vanilla cleanup flow and only changes the revive condition/path during that cleanup window
Contact
- REPO JP: https://discord.gg/h5ATY4m5bZ
- REPO Modding Server: https://discord.gg/4EbPRHG9pw
- ExtractionAutoRevive Forum: https://ptb.discord.com/channels/1344557689979670578/1462316467625136267
ExtractionAutoRevive
納品回収用のホスト専用自動蘇生MODです。 穴のビリビリ救出演出中の死亡頭には遅延蘇生も対応しています。
概要
ExtractionAutoRevive は、ゲーム本体の納品所/ショップ回収時の既存蘇生フローを変更し、死亡頭が納品所の中に入っていなくても死亡プレイヤーを蘇生できるようにするホスト専用MODです。
通常の死亡頭は即時に蘇生されます。 穴のビリビリ救出演出中の死亡頭はキューに積まれ、演出終了後かつ頭の動きが十分に落ち着いてから蘇生されます。
特徴
プレイヤー向け挙動
- 納品回収時に死亡プレイヤーを自動蘇生
- 通常納品回収とショップ回収の両方で動作
- 実際の蘇生呼び出しに
Revive(true)を使用 - 穴ビリビリ頭は救出演出終了まで遅延蘇生
- 頭の移動が速すぎる間は蘇生を待機
- シーン切替、ラン遷移、全納品完了、トラック帰還関連遷移で遅延キューを自動消去
- ホスト専用動作
技術的挙動
- 別の全プレイヤー走査を作らず、ゲーム本体の既存回収蘇生経路へ乗る構成
- 納品/ショップ回収処理中だけ
PlayerDeathHead.Revive()を一時的に差し替え - 穴ビリビリ頭判定の主条件に
DeathPitSaveEffect.timeCurrent > 0fを使用 - 遅延蘇生キューを
Dictionary<int, PendingReviveEntry>で管理 - キューキーは可能な限り
PhotonView.ViewIDを使用 - 遅延対象が存在する時だけ監視コルーチンを起動
- バニラのトラック自動蘇生が優先されるべき状況では二重処理を回避
- 頭の extraction/truck フラグを強制書き換えせず、ゲーム本来の目の点滅演出系フローを壊しにくい構成
導入方法
- REPO 用の BepInEx 5.4.x を導入
ExtractionAutoRevive.dllをBepInEx/pluginsに配置- ホストへ導入
- ゲームを起動
使い方
コマンドは不要です。 納品所/ショップの回収処理が走ると、ホストが自動で蘇生処理を行います。
設定項目
General
EnableMod
設定値名
EnableMod
設定内容説明 MOD全体の有効/無効
初期値
true
設定可能最小値 Boolean only
設定可能最大値 Boolean only
Log
EnableLog
設定値名
EnableLog
設定内容説明 通常ログの出力有効/無効
初期値
true
設定可能最小値 Boolean only
設定可能最大値 Boolean only
EnableVerboseLog
設定値名
EnableVerboseLog
設定内容説明 詳細診断ログの出力有効/無効
初期値
false
設定可能最小値 Boolean only
設定可能最大値 Boolean only
PitHead
PitHeadExtraDelaySeconds
設定値名
PitHeadExtraDelaySeconds
設定内容説明 穴ビリビリ救出演出終了後に蘇生を許可するまでの追加待機時間
初期値
0.35
設定可能最小値
0
設定可能最大値
5
PitHeadMaxVelocityToRevive
設定値名
PitHeadMaxVelocityToRevive
設定内容説明 遅延蘇生を許可する頭の最大速度量
初期値
1.0
設定可能最小値
0
設定可能最大値
20
PendingCheckIntervalSeconds
設定値名
PendingCheckIntervalSeconds
設定内容説明 遅延蘇生キュー監視のチェック間隔
初期値
0.05
設定可能最小値
0.02
設定可能最大値
1
補足
- ホスト専用MODです
- 遅延蘇生処理は、穴のビリビリ救出演出中の死亡頭を主対象にしています
- バニラの回収フローを維持しつつ、その回収処理中だけ蘇生条件/蘇生経路を変更する作りです
連絡先
- REPO JP: https://discord.gg/h5ATY4m5bZ
- REPO Modding Server: https://discord.gg/4EbPRHG9pw
- ExtractionAutoRevive Forum: https://ptb.discord.com/channels/1344557689979670578/1462316467625136267
CHANGELOG
Changelog
[1.3.0] - Updated
Changed
- Reworked the revive flow to piggyback on the game's extraction and shop cleanup revive loop instead of scanning players from a separate trigger
- Replaced the generic
PlayerDeathHead.Revive()extraction-only condition during cleanup with custom host-only handling that can revive dead players regardless of where their death head is - Changed the actual revive call to
PlayerAvatar.Revive(true)so the truck-heal style revive path is used
Added
- Delayed revive handling for death heads that are still in the death pit electricity rescue state
- Main pit-head detection based on
DeathPitSaveEffect.timeCurrent > 0finstead of particle playback state - Extra wait after the electricity rescue effect ends before revive is allowed
- Velocity gate for delayed pit-head revive so heads are not revived while they are still moving too fast
- Pending revive queue keyed by
PhotonView.ViewIDwhen available, with fallback identity handling - Dictionary-based pending revive storage
- Queue monitor that runs only while pending pit-head revives exist
- Queue cleanup on scene changes, run transitions, extraction completion, and truck return related transitions
- Stronger dead-state checks that do not rely only on
gameObject.activeSelf - Log config options for normal logs and verbose logs
- Config options for pit-head extra delay, max revive velocity, and queue monitor interval
- Guard logic to avoid fighting the vanilla truck auto-revive flow after all extraction points are completed
- Preservation of the game's existing extraction / truck eye-flash flow by not force-writing extraction or truck flags on death heads
[1.2.0] - Updated
Changed
- Moved the custom revive behavior onto the game's extraction cleanup path instead of reviving from
ExtractionPoint.StateSet - Replaced direct full-player scanning on extraction state changes with a patch around
PlayerDeathHead.Revive()only while extraction/shop cleanup is running - Added delayed revive handling for electrified death pit heads and immediate revive for normal heads
[0.1.1] - Updated
Changed
-
Refactoring based on received cleanup advice (no behavior change)
- Replaced player enumeration from
Resources.FindObjectsOfTypeAll<PlayerAvatar>()toGameDirector.instance.PlayerList - Replaced health checks from reflection (
GetField/GetValue) to direct accessplayer.playerHealth.health - Replaced revive invocation from reflection (
MethodInfo.Invoke) to direct callplayer.Revive(true) - Replaced extraction flag updates from reflection (
SetValue) to direct assignmentplayer.playerDeathHead.inExtractionPoint = trueandplayer.playerDeathHead.inTruck = true
- Replaced player enumeration from
[0.1.0] - Initial Release
Added
- Host-only automatic revive triggered by extraction completion
- Event-driven design
- Host-only guard
- Detailed logging