[Scp106PocketDimension] Items entering Pocket dimension never get their DropPosition assigned

Version: 14.2.5

Branch: Release (stable) branch

Timestamp: 2026/02/24 19:52:30

Server Name: Local Un-modded dedicated server

Description

The following two ways cause the items which are considered entering Pocket Dimension

(when the game attempts to assign them a DropPosition in PlayerRoles.PlayableScps.Scp106.Scp106PocketItemManager.GetRandomValidSpawnPosition)

Both of the for-loops in the function can cause a IndexOutOfRangeException when there are over 64 valid things to add.

  1. In the case of the first loop (handles adding locations which are close to players) this happens when there are over 64 players outisde of pocked dimension who have a roof above them.

  2. In the case of the second loop (handles adding locations present in rooms) this always happens when the game reaches it (only reachable when there are 0 valid player targets, see (1.) above) since there are more than 64 rooms in HCZ / LCZ (the only zones a room is cosidered valid in)

Steps to reproduce

Reproduction steps for causing the game code to throw an IndexOutOfRangeException in the first loop (pos: [0x0004a])

  • Spawn over 64 dummies (or players)

  • Set their role to any IFpcRole (alive, cannot be SCP-079) -> ex. FacilityGuard (recommended)

  • Move all players somewhere where there is a roof above their head. This can be any place in the facility or some parts of surface.

  • Make an item be dropped on the floor inside Pocket Dimension

  • Error is thrown

Reproduction steps for causing the game code to throw an IndexOutOfRangeException in the second loop (pos: [0x000df])

  • Ensure there are no valid players (all alive players, including SCPs, must either be in Pocket Dimension or be missing a roof above them)

  • Make an item be dropped on the floor inside Pocket Dimension

  • Error is thrown

Note:

Second loop can very easily be accomplished by being the only player on the server when dropping the item in Pocket Dimension.

What is supposed to happen

Items are supposed to have their DropPosition assigned so they can never leave Pocket Dimension.

What actually happens

The game throws an error and DropPosition cannot be assigned.

Attachments

LocalAdmin_Log_2026-02-24_20.46.32.txt