ElevatorMod
Allows the elevator to move with just one player inside. Players not in the elevator stay on their current floor and can continue playing games independently.
模組介紹 作者原文
ElevatorMod
Allows the elevator to move with just one player inside. Players not in the elevator stay on their current floor and can continue playing games independently.
Features
- Elevator travels with any number of players (minimum one)
- Only players inside the elevator travel to the new floor
- Players outside stay exactly where they are and can keep playing
- Players on different floors are visually hidden from each other — machines, lighting, keypads, and player models are all per-floor
- Audio is muted for floors you are not on
- Colliders for hidden floors are disabled on clients so they don't block movement
- READY / BUSY elevator status display when nearby
- Fully compatible with host and client players
- State resets cleanly on disconnect and reconnect
Installation
- Install BepInEx 5
- Drop ElevatorMod.dll into BepInEx/plugins/
- Launch the game — install on all players' machines
Configuration
Edit BepInEx/config/com.yourname.elevatormod.cfg:
- Enabled — toggle the mod on/off (default: true)
- ShowStatusDisplay — show the READY/BUSY HUD near the elevator (default: true)
Changelog
1.5.0
- Replaced cached bool approach with dedicated Mirror network messages for reliable client floor resolution
- Added ElevatorTravelMsg — host sends a targeted message to each client before the floor change RPC fires, telling them whether they travelled this trip
- Added PlayerFloorMsg — host broadcasts a full floor map (netId → floor) to all clients after every trip so player models can be hidden/shown correctly
- Manual Mirror serializer registration added to work around IL weaver not running in BepInEx mods
- Network handlers re-register automatically each session and after disconnects
- Full visual separation between floors: renderers, lights, audio sources, colliders, canvases, and player name tags are all toggled per-floor
- Keypad render cameras and display canvases are disabled on hidden floors, preventing grey-box rendering artefacts
- LightbakerManager light volume now switches to match the local player's current floor
- Floors that have been visited are kept active for Mirror networking — only unvisited floors are deactivated
- Client RPC buffering added: if the floor change RPC and travel message arrive out of order, resolution is deferred until both are received
- ServerTryTeleportPlayers patched to capture the destination floor index before teleports occur
- Full state reset on disconnect including floor maps, visited floor set, and pending message flags
1.4.2
- Experimental fix for games becoming unplayable after a solo elevator trip
- Non-travelling players now explicitly re-enable all floors via SetActive(true) when blocking the floor RPC
- SetSfxTrigger set correctly for the floor the non-travelling player is on
1.4.1
- Fixed all floors spawning simultaneously on session start
- Init/group travel calls (no one in elevator when RPC fires) now run normally for all clients
- Partial trip logic only applies when someone is detected inside the elevator
1.4.0
- Reworked floor RPC patch — non-travelling players block the RPC without any SetActive manipulation
- Games on the non-travelling player's floor remain fully networked and playable
- Host and client players can play games on different floors simultaneously
1.3.1
- Fixed floor re-activation using false→true toggle cycle to force Unity to re-enable game objects
1.3.0
- Replaced static bool approach with real-time collider position check at RPC time
- Fixed non-host player being permanently stuck on lobby floor
1.2.0
- Attempted fix for non-host player floor tracking
1.1.0
- Initial release with basic elevator solo travel support
安裝與使用 安裝:按包內說明操作
- 解壓本站下載的壓縮包,先讀包內的 readme / 說明檔案。
- 多數模組依賴遊戲的模組載入器:常見做法是用社群模組管理器(如 r2modman)選中本遊戲安裝,由管理器自動處理載入器與依賴。
- 手動安裝時,把模組檔案放進遊戲目錄下對應的 Mod / plugins 資料夾。
- 啟動遊戲確認載入成功;帶「前置依賴」的模組需要把依賴一併安裝。
不同模組的安裝位置差異較大,包內說明是最可靠的依據。
前置依賴
下面這些內容需要先安裝,否則該模組不會生效:
BepInEx-BepInExPack