ShuffleUpgrade
A mod that shuffles all players' upgrades, working with host-only installation.ホストのみの導入で動作する全てのプレイヤーのアップグレードをシャッフルするMOD
模組介紹 作者原文
ShuffleUpgrade
Overview
ShuffleUpgrade automatically reshuffles all players' upgrades when the team enters the shop
Every shop visit can completely change each player’s role, creating new team dynamics every round
Instead of everyone slowly becoming identical, players naturally develop strengths and weaknesses, encouraging cooperation and adaptive gameplay
Depending on the selected shuffle mode, upgrades may be redistributed while keeping balance, completely randomized, or entire player builds may be swapped
If the result feels too chaotic, the last shuffle can be reverted instantly using the /undo command
This mod is designed to keep runs fresh while ensuring every player remains useful
Features
- Automatic upgrade shuffle when entering shop
- Four different shuffle modes
- Player bias system that creates strengths and weaknesses
- ChaosRandom imbalance control
- Safety clamp to prevent excessive upgrade values
- Selectable upgrade inclusion
- Deterministic shuffle via fixed seed optional
- /undo command to restore previous state
- Multiplayer-safe execution host-only optional
- Detailed logging options
Shuffle Modes
PreserveTypeTotalsRandom
- Keeps total amount of each upgrade type
- Redistributes values between players
- Maintains overall balance
FullRandomKeepGrandTotal(Default)
- Keeps overall upgrade total only
- Allows completely new player builds
ReassignWholeBuilds
- Entire upgrade builds are swapped between players
- No player keeps their original build
RandomPattern
- Randomly selects one of the enabled shuffle modes
ChaosRandom System
ChaosRandom introduces controlled imbalance
Instead of pure randomness
- Each player gains natural strengths
- Each player also gains weaknesses
- Every player remains functional
Higher values increase specialization intensity
Undo System
Command
/undo
Restores the upgrades to the state before the most recent shuffle
Safety checks ensure
- Player list must match
- Multiplayer host restrictions can be enforced
- Only valid shuffle states can be restored
Configuration
Config file
BepInEx/config/jp.repo.shuffleupgrade.cfg
Key options
- Enable or disable mod
- Host-only execution in multiplayer
- Shuffle trigger timing
- Shuffle interval every N shop visits
- Shuffle mode selection
- ChaosRandom intensity
- Upgrade inclusion toggles
- Maximum upgrade clamp values
- Logging verbosity
- Undo permissions and history size
Technical Details (Programmer Perspective)
The mod hooks shop entry detection via runtime polling using SemiFunc.RunIsShop and level readiness checks
Upgrade redistribution pipeline
- Build player upgrade snapshots from StatsManager
- Resolve shuffle mode
- Generate bias profiles per player
- Calculate distribution targets
- Apply safety clamps
- Apply delta upgrades through PunManager
- Synchronize stats using SemiFunc.StatSyncAll
- Store undo snapshot
Bias profiles generate weighted distributions ensuring
- No player becomes useless
- At least one strong specialization per player
- Controlled imbalance scaling via ChaosRandom
Mode implementations
- Mode 0 Per-upgrade total preservation with weighted redistribution
- Mode 1 Global total preservation with player quota balancing
- Mode 2 Derangement permutation no self-assignment
- Mode 3 Random candidate selection
All upgrade changes are applied using delta operations to maintain multiplayer synchronization stability
Compatibility
May conflict with mods modifying
- Player upgrades
- StatsManager upgrade storage
- PunManager upgrade RPC calls
- Shop transition logic
概要
ShuffleUpgrade はショップ到達時に全プレイヤーのアップグレードを自動でシャッフルするMODです
ショップに入るたびにプレイヤーの役割が変化し、毎ラウンド異なるチーム構成が生まれます
全員が同じビルドに収束するのではなく、それぞれに強みと弱みが生まれるため、協力や狀況対応が重要になります
シャッフル方式によってはバランスを維持した再分配、完全ランダム化、プレイヤー構成そのものの入れ替えなどが行われます
結果が気に入らない場合は /undo コマンドで直前狀態へ戻すことができます
常に新鮮なプレイ體験を維持しつつ、誰も役立たずにならない設計になっています
主な機能
- ショップ入場時の自動アップグレードシャッフル
- 4種類のシャッフルモード
- プレイヤーごとの強み・弱み生成システム
- ChaosRandomによる偏り強度調整
- 最大値安全クランプ
- シャッフル対象アップグレード選択
- 固定シード対応 任意
- /un
安裝與使用 安裝:BepInEx 外掛
- 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
- 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
- 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
- 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。
帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。
下面這些內容需要先安裝,否則該模組不會生效: