Inlining Functions and Stuff

If I have a GameObject class server-side, is using a Vector3 instead of 3 floats (X Y Z) for position, more efficient than having a transform component?

Unless I’m misunderstanding, the transform component is literally build into every GameObject, so any “alternatives” are not necessary- you can’t remove the transform in the first place. If you mean “is access faster by storing the current position of the GameObject as a current class member” (yeah, seems like a long-shot), the answer is “not really”, since you don’t need to use generic methods like GetComponent to reach the transform component, since it’s “special” like that, access speed is already pretty optimized for that.

I would check. In the old days “caching your transform” was one of the cardinal rules of code optimisation. 5.0 was supposed to fix this. But I have heard rumours to the contrary. I would run a benchmark to test.