Steps to create from scratch:
  1. Create a non-kinematic pickup
  2. Add a script that turns on kinematic OnPickup and disables it OnDrop
  3. Throw the object in game. On the live version of VRChat it gets thrown normally. On beta, the object drops straight down.
My prefab SmartObjectSync sets objects to kinematic when they're held to stop objects from getting knocked around and moving while running. This stability is essential for things like guns where you need to aim down sights while running.