When i grab an object and update its transform, it loses all rigidbody attributes and falls through objects.

private void Start()
{
connected = false;
}

    private void OnCollisionEnter(Collision collision)
    {
        if (collision.transform.tag == "Player")
        {
            dronePlayer = collision;

            offset = dronePlayer.transform.position - gameObject.transform.position;

            connected = true;
        }   
    }

    private void Update()
    {
        if (connected)
        {
            transform.position = dronePlayer.transform.position - offset;
        }
    }

simply, all i want to do it pick up an object from another object and then move around. so the script just changes the transform of the object i hit with a transform.

the problem here is that all works k except when i get close to another object in the scene. The laws of rigidbody are ignored and passes through other objects it normally would bump against.

you can add a joint component to your player and attach this object to that joint , this way physics will take care rest of it.