Basically, the game I’m developing completely abandons the traditional concept of a playable character, instead, players will be in control of flying objects (and I do not want them to just be sitting in a seat).
I was wondering if there are any ways to allow the player to control something that isn’t a typical roblox character, and also get rid of the original character they spawn as.
You can very easily set a default character, which isn’t the typical R15 or R6 rig, by setting a model in StarterPlayer called “StarterCharacter”. You can also overwrite the default control scripts by creating a replacement in StarterPlayerScripts. You should make sure, however, that the client has network ownership of their character or inputs will be super delayed.
Thank you for your reply! This is exactly what I needed and, in hindsight, I probably could have googled it. Thank you for your time and have a great day!
There’s a thread on the dev hub that explains network ownership:
Basically, it describes which device is calculating a part’s physics, and it is almost always beneficial to let the client control your StarterCharacter for lagless inputs.
Network ownership is complete control over all physics of a part. Basically, instead of the server handling physics for your character (and other parts you may set, such as projectiles), your client handles them. This does two things: First off it decreases visible latency with movement, since you are in total control over the physics of your character. Secondly, it takes some stress off of the server.