When a particle from an avatar's ParticleSystem collides with a world collider, OnParticleCollision(GameObject other) fires, but other is null because avatar objects are protected. World creators therefore cannot tell which player the particle came from. Test (SDK 3.10.5, live client, local avatar, collision module + Send Collision Messages): Two world targets, 5 shots each from an avatar gun Raw events: 10, other == null: 10, non-null: 0 The existing Player-routing path did not trigger (Player events: 0) Use case: PvP worlds where players bring their own avatar guns. Hits can be detected, but kills cannot be attributed to a shooter. Workarounds (estimating trajectories from hand bone poses) break down for arcing or exploding projectiles. Proposal: when an avatar's particle collides with a world object, keep other hidden as it is now, but raise a new event such as OnAvatarParticleCollision(VRCPlayerApi owner) that only exposes the owning player. This follows the same approach already used for player triggers and collisions: https://feedback.vrchat.com/udon/p/ontriggerenter-event-gives-a-null-reference-if-a-player-enters-the-collider No avatar objects or components are exposed, so it should not create ripping or manipulation risks.