Skip to content

Fix precursor proximity triggers not reacting to remote players#2649

Open
misterbubb wants to merge 6 commits into
SubnauticaNitrox:masterfrom
misterbubb:fix/ion-cube-pedestal-remote-player-2643
Open

Fix precursor proximity triggers not reacting to remote players#2649
misterbubb wants to merge 6 commits into
SubnauticaNitrox:masterfrom
misterbubb:fix/ion-cube-pedestal-remote-player-2643

Conversation

@misterbubb
Copy link
Copy Markdown
Collaborator

@misterbubb misterbubb commented Jan 15, 2026

Closes #2643

Changes

  • Add patches for PrecursorActivatedPillar (ion cube pedestals)
  • Add patches for PrecursorKeyTerminalTrigger (tablet pedestals)
  • Add patches for PrecursorDisableGunTerminalArea (gun disable terminal)
  • Track player count to prevent closing when other players are still nearby
  • Only play sounds when first player enters (prevents duplicate sounds)
  • Triggers only deactivate when ALL players have left the zone
  • Disable SphereCollider on remote player ping signal to fix premature trigger activation
  • Fix remote player CapsuleCollider missing height property

…rox#2643)

- Add patches for PrecursorActivatedPillar (ion cube pedestals with ion cube on top)
- Add patches for PrecursorKeyTerminalTrigger (tablet pedestals)
- Track player count to prevent closing when other players are still nearby
- Only play sounds when first player enters (prevents duplicate sounds)
- Pedestals only close when ALL players have left the trigger zone
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jan 15, 2026

Test Results

255 tests  +9   252 ✅ +7   10s ⏱️ +3s
  1 suites ±0     3 💤 +2 
  1 files   ±0     0 ❌ ±0 

Results for commit 7c6289c. ± Comparison against base commit a0de9db.

This pull request removes 10 and adds 19 tests. Note that renamed tests count towards both.
Nitrox.Model.Packets.Processors.PacketProcessorTest ‑ SameAmountOfServerPacketProcessors
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ EntityDataTest (SubnauticaServerJsonSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ EntityDataTest (SubnauticaServerProtoBufSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ GlobalRootDataTest (SubnauticaServerJsonSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ GlobalRootDataTest (SubnauticaServerProtoBufSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ PlayerDataTest (SubnauticaServerJsonSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ PlayerDataTest (SubnauticaServerProtoBufSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ WorldDataTest (SubnauticaServerJsonSerializer)
Nitrox.Server.Subnautica.Models.Serialization.WorldPersistenceTest ‑ WorldDataTest (SubnauticaServerProtoBufSerializer)
Nitrox.Test.Server.Helper.XORRandomTest ‑ TestMeanGeneration
Nitrox.Model.Configuration.Validators.SaveNameAttributeTests ‑ ShouldValidateSaveName
Nitrox.Model.DataStructures.NitroxIdTest ‑ CompareToReturnsOneForNull
Nitrox.Model.DataStructures.NitroxIdTest ‑ CompareToReturnsZeroForEqualIds
Nitrox.Model.DataStructures.NitroxIdTest ‑ CompareToUsesUnderlyingGuidOrdering
Nitrox.Model.DataStructures.NitroxIdTest ‑ DifferentGuidEquality
Nitrox.Model.DataStructures.NitroxIdTest ‑ EqualIdsHaveSameHashCode
Nitrox.Model.DataStructures.NitroxIdTest ‑ EqualsObjectReturnsFalseForDifferentType
Nitrox.Model.DataStructures.NitroxIdTest ‑ IncrementAdvancesId
Nitrox.Model.DataStructures.NitroxIdTest ‑ IncrementWrapsAroundFromMaxValue
Nitrox.Model.DataStructures.NitroxIdTest ‑ SameReferenceEquality
…

♻️ This comment has been updated with latest results.

@misterbubb misterbubb changed the title Fix precursor pedestals not reacting to remote players Fix precursor proximity triggers not reacting to remote players Jan 16, 2026
The player ping signal prefab has a SphereCollider with radius 10 that was
triggering proximity events (like precursor pedestals) before the player's
actual CapsuleCollider. This caused remote players to trigger pedestals
from ~8m away instead of the intended ~3m.

Disabling the SphereCollider on the signal prevents this issue while
keeping the ping functionality intact.
@misterbubb misterbubb requested a review from Coding-Hen January 16, 2026 20:46
@misterbubb misterbubb added this to the 1.9 milestone Jan 16, 2026
@Measurity Measurity removed this from the 1.9 milestone Feb 16, 2026
Copy link
Copy Markdown
Collaborator

@Coding-Hen Coding-Hen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGCW I think in game it would be good to check the colliders though when we do a test session

@CherrieTheShifter

This comment was marked as spam.

@misterbubb misterbubb requested a review from Coding-Hen May 10, 2026 18:24
@dartasen dartasen added the Status: Needs testing Pull Request is waiting for testing label May 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Status: Needs testing Pull Request is waiting for testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Ion cube pedestals don't react to remote players

5 participants