Hi all, As an exercise to learn C# (among other things, eg, modeling & texturing) I've been working on making a working stargate in the evenings while watching stargate . While I've got it mostly figured out and coded I've run into a problem; I have no idea how to get the vector/position of a part. part.transform.localPosition; part.rigidbody.position; part.transform.position; part.localRoot.transform.position; part.GetReferenceTransform().position The above all seem to provide the position of the vessel, not the part. So my puddle jumpers and gate travelers all jump to the centre of the gate ship, not the gate, which causes....problems... So what am I missing? How do I find the position of the part? Thanks in advance. @Okreeks: I might be able to help. Looking at your example code you seem to be creating a new Celestial body but not properly intialising it and giving it a name, so your print statements are correct when they return 0 or Unnamed. Try printing the following, it'll get the name of the celestial body whose SOI your vessle is currently in: vessel.mainBody.name Hope that works and you can work it out from there.