Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
LateRepo Fix
Compatibility patch for LateRepo 1.6.4: fixes the outdated singleplayerPool error, active-round lobby access, enemy late-join state, early client module link repair, targeted module replay, and late-join battery charge UI sync.
CHANGELOG
Changelog
1.1.4
- Added an early client-side module connection prepass before
GenerateConnectObjectsandGenerateBlockObjects. - Fixes active-round reconnects where the client could generate phantom walls before receiving the host's room-link replay.
- Applies incoming
ModuleConnectionSetRPCidempotently on clients, preventing duplicate module-ready counts and duplicate prop-switch setup. - Keeps the targeted host module replay from 1.1.3 as a backup for late-loaded module PhotonViews.
- Helps prevent late-joined or reconnected players from spawning inside disconnected room blockers after a crash.
1.1.3
- Added targeted vanilla
ItemBatterystate sync for newly joined clients. - Fixed missing charge bars for vanilla charged items such as Phase Bridge and staff weapons after joining an active round.
- Also resyncs item battery charge after level item setup, covering clients who joined before the round but loaded items with stale charge UI.
- Added an inventory UI fallback that repairs stale private
ItemBatterybar counters when vanilla returns an empty charge state. - Extended targeted late-join battery sync retries so active-round joiners can receive charge state after their item PhotonViews finish loading.
- Sends current battery state only to the newly joined player, avoiding the old global item state replay that broke charge UI.
- Stores module connection state on the host and replays it directly to late joiners after their player avatar is ready, avoiding early
ModuleConnectionSetRPCmisses that could create disconnected/phantom walls. - Skips direct
ItemBatteryRPC sync for nested batteries whose PhotonView cannot receive vanilla battery RPC methods, preventingBatteryToggleRPC/BatteryFullPercentChangeRPCconsole errors. - Added
Items.SyncItemBatteryStateForLateJoinersconfig. - Added
Items.RepairInventoryBatteryUiForLateJoinersconfig.
1.1.2
- Removed the experimental equipped item state replay and
ItemEquippable.RPC_UpdateItemStateguard because they could break charge bars on battery-style items and Defibro. - Removed
Items.RepairItemEquipStateRpcandItems.SyncEquippedItemsForLateJoinersconfig. - Replaced late module connection replay with buffered
ModuleConnectionSetRPCduring generation, so active-round joiners receive room links through the same Photon cache path as vanilla level state. - Removed late-join item battery state replay.
LateRepo Fixno longer sendsBatteryFullPercentChangeRPC, leaving charge bars to vanillaItemBatteryand item-specific fixes. - Updated
Level.SyncModuleConnectionsForLateJoinersto control buffered module connection sync.
1.1.1
- Stopped the periodic Steam lobby unlock call that caused constant
Steam: Unlocking lobby...console spam. - Kept the periodic Photon room open/visible refresh for active-round joining.
- Added late-join enemy state synchronization to prevent missing player dictionary keys in
EnemyOnScreenandEnemyVision. - Keeps the host Photon room open and visible while active round joining is enabled.
- Added
Host.KeepPhotonRoomOpenDuringActiveRoundconfig. - Added periodic host access refresh during active runs.
1.1.0
- Added
Host.AllowJoiningDuringActiveRoundconfig. - Keeps the host Steam lobby joinable while active round joining is enabled.
- Preserves public/private lobby visibility while allowing joins.
1.0.0
- Added a guard around LateRepo's
LevelGenerator.Starthook. - Added a finalizer on
LevelGenerator.Startso the guard still works after runtime hooks are installed. - Suppressed the outdated
RunManager.singleplayerPoolMissingFieldException. - Added
General.DebugLoggingconfig.