You are viewing a potentially older version of this package. View all versions.
matsu-Emergency_Dice_REPOED_Fixed-1.0.1 icon

Emergency Dice REPOED Fixed

A patch for Emergency Dice REPOED: fixes dice rolling (throw & E-key) and restores in-game chat messages showing which effect triggered, both broken in current R.E.P.O.

By matsu
Date uploaded 2 days ago
Version 1.0.1
Download link matsu-Emergency_Dice_REPOED_Fixed-1.0.1.zip
Downloads 258
Dependency string matsu-Emergency_Dice_REPOED_Fixed-1.0.1

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
slayer6409-Emergency_Dice_REPOED-1.1.0 icon
slayer6409-Emergency_Dice_REPOED

Dice??? First Lethal Company now here?!?

Preferred version: 1.1.0

README

Emergency Dice REPOED Fixed

A compatibility patch for Emergency Dice REPOED by slayer6409.

Emergency Dice REPOED was built for an older version of R.E.P.O. Two things broke silently in the current version:

  • Dice never rolled — throwing or pressing E did nothing. The original FixedUpdate logic called a method (RunManager.levelShop) whose type changed from Level to List<Level>, throwing a MissingFieldException every frame.
  • No in-game chat message — the dice has always shown "Rolling …" in the BepInEx log, but the RPC it used to send that as an in-game chat message (ChatMessageSendRPC) no longer exists in the current R.E.P.O. ChatManager.

This patch fixes both.

What it does

  • Fixes dice rolling. Replaces the broken FixedUpdate with a fully compatible version that correctly detects throws (by velocity) and E-key presses (via ItemToggle). All reflection lookups are cached once at startup — no per-frame overhead.
  • The roller announces the result in chat. Every time a dice effect triggers, the player who rolled the die says it in the in-game chat (their own networked chat message, visible to everyone). With SpoilerMode off, the effect's tooltip is shown instead of its name.
  • Makes every effect work in singleplayer. Many effects start with a Photon RPC, which throws outside a room — so in singleplayer they silently did nothing. A scoped RPC emulator now runs those calls locally (only for this mod's objects; nothing else is touched).
  • Multiplayer fixes: the rainbow die's instant-reroll actually rerolls now, a rolled 6 no longer crashes the reroll, and chat lines are no longer doubled.

Requirements

You need Emergency Dice REPOED installed — this is a patch for it, not a replacement.

Notes

  • Works in singleplayer and multiplayer (host and clients).
  • Chat messages are shown locally. All players with this mod installed will see the message on their screen.
  • No configuration needed.

Credit

All credit for the dice system goes to slayer6409, the author of Emergency Dice REPOED. Please install and support the original mod: https://thunderstore.io/c/repo/p/slayer6409/Emergency_Dice_REPOED/

Bug reports & requests

Found a bug or have an idea? Please use this form: https://docs.google.com/forms/d/e/1FAIpQLSfl7f-oNiwjXjd7mUkfQoqBIhbJhQhhfV-ZmovjJVQ9orwuYQ/viewform


Emergency Dice REPOED Fixed(日本語)

slayer6409 の Emergency Dice REPOED 向け互換パッチです。

Emergency Dice REPOED は古いバージョンの R.E.P.O. 向けに作られており、現在のバージョンでは以下の2点が壊れていました:

  • サイコロが振れない — 投げても E キーを押しても何も起きない。元の FixedUpdate が参照していた RunManager.levelShop の型が Level から List<Level> に変わり、毎フレーム MissingFieldException が発生していた。
  • ゲーム内チャットメッセージが出ない — サイコロはBepInExログに「Rolling …」と出力しているが、それをゲーム内チャットに送る RPC(ChatMessageSendRPC)が現在の R.E.P.O. の ChatManager から削除されていた。

このパッチで両方を修正します。

修正内容

  • サイコロの投げ&Eキーを修正。 壊れた FixedUpdate を完全互換版に置き換え。速度による投擲検出と ItemToggle による E キー検出を正しく動作させます。リフレクション検索は起動時に1回キャッシュするため、毎フレームのオーバーヘッドはありません。
  • ゲーム内チャットメッセージを追加。 サイコロの効果が発動するたびにゲーム内チャットにメッセージが表示されます:
    [Dice] Rugrats
    [Dice] Random Upgrade
    
    IEffect.Use() 実装にパッチを当て、ChatManager.instance.ForceSendMessage() を呼び出すことで実現しています。

必要なもの

Emergency Dice REPOED が必要です(このMODはパッチです。単体では動きません)。

補足

  • シングルプレイ・マルチプレイ両対応(ホスト・クライアント問わず動作)。
  • チャットメッセージはローカル表示です。このMODを導入した全プレイヤーの画面に表示されます。
  • 設定不要。

クレジット

サイコロシステムの全てのクレジットは slayer6409 氏にあります。オリジナルMODの導入もお願いします: https://thunderstore.io/c/repo/p/slayer6409/Emergency_Dice_REPOED/

バグ報告・要望

このフォームからどうぞ: https://docs.google.com/forms/d/e/1FAIpQLSfl7f-oNiwjXjd7mUkfQoqBIhbJhQhhfV-ZmovjJVQ9orwuYQ/viewform

CHANGELOG

Changelog

1.0.2 (2026-07-13)

Fixed

  • The roller speaking in chat actually works now. 1.0.1's fix called the dice-roll RPC directly, which turned out to be fragile. Digging into the current game's chat code found the real issue: REPO's chat isn't a text bubble anymore — typing a message calls PlayerAvatar.ChatMessageSend, which always ends at a text-to-speech voice line (works great with a TTS voice pack installed). The dice mod's own chat call wasn't going through that same path, so it silently did nothing on some setups. Now it calls the exact same method vanilla typing uses, so the roller's character speaks the result the same way it would if they'd typed it themselves — in both singleplayer and multiplayer.
  • Every step of the chat logic now logs a warning if something's missing, instead of failing silently.

1.0.1 (2026-07-10)

Fixed

  • Singleplayer effects that did nothing (UI popups, scaling, revives...) now work. Many effects call Photon RPCs first, which throw outside a room — the effect died before doing anything. A scoped singleplayer RPC emulator now runs those calls locally with correct PUN semantics (Others = no-op, All/MasterClient = run once locally). Multiplayer is untouched.
  • Rainbow die reroll never fired in multiplayer — the original compared against a brand-new object (== new InstantReroll()), which is always false. Now a proper type check.
  • Crash on a rolled 6 with the rainbow reroll — the reroll looked up face 7, which doesn't exist. Clamped to 6.
  • Double chat messages in multiplayer — the original's own chat call and this patch's chat line no longer both fire.

Changed

  • The roller now speaks the result — the chat line comes from the player who rolled the die (their own networked chat), not the host. Falls back to a host [Dice] line if needed.
  • Chat respects SpoilerMode: ON shows the effect name, OFF shows the effect tooltip (same rule as the original mod's log).

1.0.0 (2026-07-09)

Fixed

  • Dice rolling broken in current R.E.P.O. — FixedUpdate now uses RunManager.levelIsShop (bool) instead of the old RunManager.levelShop (Level) field whose type changed to List<Level>.
  • Throwing the dice and pressing E key now correctly trigger a roll.
  • All per-frame reflection lookups cached at startup to eliminate frame-rate impact.

Added

  • In-game chat message displayed whenever a dice effect triggers: [Dice] <EffectName>. Replaces the broken ChatMessageSendRPC that no longer exists in the current R.E.P.O. ChatManager.