I can't run your code right now and I might be missing something, but it seems that you're not transmitting grapplePoint -variable to other clients.
You pass it as a parameter to RPC_DrawRope (see https://doc.photonengine.com/en-us/pun/current/gameplay/rpcsandraiseevent):
RPC call:
PV.RPC("RPC_DrawRope", RpcTarget.All, grapplePoint);
RPC definition:
[PunRPC] void RPC_DrawRope(Vector3 grapplePoint) { this.grapplePoint = grapplePoint; ... }
There are better ways, though. Consider using OnPhotonSerializeView -method for synchronizing variables (https://doc.photonengine.com/en-us/pun/current/demos-and-tutorials/pun-basics-tutorial/player-networking).