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

Emergency Dice REPOED Fixed

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

By matsu
Date uploaded 3 days ago
Version 1.0.0
Download link matsu-Emergency_Dice_REPOED_Fixed-1.0.0.zip
Downloads 132
Dependency string matsu-Emergency_Dice_REPOED_Fixed-1.0.0

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.
  • Adds in-game chat messages. Every time a dice effect triggers, a message appears in the in-game chat:
    [Dice] Rugrats
    [Dice] Random Upgrade
    
    This works by patching each IEffect.Use() implementation and calling ChatManager.instance.ForceSendMessage().

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.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.