TaxmansCurseHauntedLoot
Host-only cursed loot chaos for R.E.P.O. Touch haunted valuables, reveal one curse per level, and let vanilla clients see announcements through TTS/text and the truck screen.
模組介紹 作者原文
Taxman's Curse: Haunted Loot
Author: UL
Version: 0.2.9
Install type: Host-only / server-side
Vanilla clients: Supported
Host-only cursed loot chaos for R.E.P.O. Touch haunted valuables, reveal one curse per level, and let the Taxman announce it through vanilla systems.
What It Does
The host rolls a curse lazily when real loot is touched during a level. With the default CursesPerLevel=1, one curse reveal can happen per gameplay session. Additional touches in the same level reuse the same session instead of rolling more curses.
The mod currently focuses on touch-based curses for stability. It does not add new monsters, models, sounds, custom HUDs, or client-required assets.
Host-Only Compatibility
Only the host needs the mod installed. Vanilla clients can join.
Curse effects use existing R.E.P.O. systems where possible, such as normal grab sync, vanilla enemy attention, targeted vanilla TTS/text, and truck screen messages. The mod is designed for public host-only play and keeps risky lifecycle hooks out of the public build.
Announcements
Announcements use vanilla TTS/text behavior, not a custom HUD.
In v0.2.9 the host targets each player's own PlayerAvatar.ChatMessageSendRPC where possible, so the curse reveal can appear through the game's normal TTS/text path. R.E.P.O. does not expose a separate always-visible synced global chat-feed or system-message channel, so TTS/text still follows vanilla behavior.
The truck screen is the clearest shared visual announcement. Reveal messages include the curse name plus a short rule:
TAXMAN'S CURSE:
Player cursed: Curse Name
Short rule
Bottom objective HUD messages are not used by default because that UI path is local-only and not safe to present as a host-only public announcement.
Curse Types
- Mimic Valuable: Looks like normal loot, but touching it triggers danger.
- Loot Bait: Every few valuable touches by the cursed player attracts danger.
- Reverse Luck: Valuable touches can help the team, do nothing, or attract danger.
- Last-Touch Curse: The last player to touch haunted loot becomes cursed.
- Glass Touch: Loot touched by the cursed player becomes haunted and unsafe.
- Golden Trap: Tempting treasure can trigger a dangerous trap.
Config Options
The public config intentionally exposes only simple options.
[General]
- Enabled
- HostOnly
- DebugLogging
[Curse]
- CursesPerLevel
- IncludeHost
- AvoidSamePlayerTwice
- CurseIntensity
[TTS]
- EnableTTS
- TTSMode
- TTSCooldownSeconds
[CurseTypes]
- EnableMimicValuable
- EnableLootBait
- EnableReverseLuck
- EnableLastTouchCurse
- EnableGlassTouch
- EnableGoldenTrap
Public-Safe Design
v0.2.9 applies only one gameplay hook: PhysGrabObject.GrabStartedRPC.
It does not patch RunManager.GameDirectorStart, RunManager.ChangeLevel, drop, break, extraction, or level-end methods. It does not use Harmony.PatchAll.
The curse director is created lazily by a valid valuable touch in an active run and resets lazily when a valid touch reports a new gameplay session key. The session key is level-only:
room=|scene=|round=|levelGen=
Player view IDs, toucher IDs, and cursed-player IDs are intentionally excluded so different players touching loot in the same level reuse the same curse session.
Installation
Install with a -compatible mod manager, or manually place the package contents into your R.E.P.O. BepInEx profile so TaxmansCurseHauntedLoot.dll is loaded as a BepInEx plugin.
The package depends on BepInEx-BepInExPack.
Version Notes
v0.2.9 is the stable public baseline. It includes the fixed one-curse-per-level session logic, simplified public config, TTS settings, centralized truck retry, and truck screen reveal messages with short curse rules.
Known Limitations
- The mod is host-only, but always-visible global HUD/feed announcements would require client-side code.
- TTS/text uses vanilla behavior and is not a custom global HUD popup.
- Truck screen messages can still be delayed or overwritten by vanilla truck typing; the r
安裝與使用 安裝:BepInEx 外掛
- 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
- 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
- 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
- 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。
帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。
下面這些內容需要先安裝,否則該模組不會生效: