Somewhere in the Unity tutorial, it mentions that for a development project, you should also check player->world collisions on the the server.
To me, this means (if I were to program such a game-- fortunately, I am not, my game is simpler), I would need to rewrite most of the collision routines that I have taken granted for in Unity since SFS2.0 has no way of knowing it. Which means I would need to reprogram things like meshColliders, box colliders, as well as checking if moving from lastPos to currentPos causes a collision per each collider.
This also means that much of the Unity API that I have taken for granted is about to bite me in the butt, since doing things like ray casting is easy in Unity, but going through the FPS tutorial, it looks like this needs to be programmed in should I want to raycast (look at the "checkHit" function).
So, to do something like check for world collisions, SFS is going to have to have a copy of the world model, be it a complicated mesh collider, a bunch of box colliders. For a mesh collider, it would then have to check the windings of the triangles and see if lastPos -> currentPos collideded with the windings of all the triangles in the map. In addition to that, SFS would also have to have some sort of a hinting system to make the collisions run faster.
I am assuming for the full authoratative server, physics would also have to be reimplemented server side to prevent cheating (not that running physics server side is the brightest idea, I'm sure y'all remember how bad multiplayer in HL2 ran with all the physics objects).
To me, this means that just about everything in Unity needs to be rewritten server side to prevent cheating.
Don't get me wrong, I am not trying to complain. I really am just seeking the answers to the raycasting and world collision problems presented in the tutorial. Before I start programming, I would like to know what might be in store for me in the future, and if there are any Unity routines I might want to copy over. And quite possibly, maybe I would write a Unity Helper Java .jar to replace some of the missing functionality, such as raycasts.
Thanks for your response in advance! (I am going to finish reading through the FPS tutorial code right now