What would be the best method to build a custom character?

If you guys didn’t know, development on space frontier has ended, and I am now working on a new game!
In this game there will be custom characters. Not only that, but the characters will be changed pretty often.

I’ve never done this before, and thought I should get some advice.

My question is what the best method would be to go about doing this?

Bracing myself for loads of people telling me about some super simple way to do this that I didn’t know about, as usual. Lol.

My current ideas on how to do it so far are

  • Using humanoids and a custom camera seperate from the player, and maybe using :MoveTo() with custom controls to make it move in the direction that the player wants to go. (Seems like the movement part would be tricky to get right… I have a feeling that there would be a better way to do that, too.)

  • Making the player invisible and just welding the custom character to them. (This could work, but I am concerned that this could cause some really buggy physics, especially when the custom characters start to get really big.)

  • CFraming, with a custom camera, custom physics, and custom controls. (This would probably require the most effort and maths, and considering that the character model will be changing very frequently, I just have a feeling that this wouldn’t work out. Not to mention that animation would be a nightmare.)

My custom character requirements:

  • Must be able to be created at least semi procedurally. They will be able to add new limbs, resize torsos/legs, ect. This basically means that if I end up going the cframe route, I would need a really good way to figure out how to do collision detection.

  • Must have minimal lag. I want a decent amount of players in game.

  • Must be able to be animated and moved around easily. Animation won’t be super complex, mostly just flexing/unflexing of limbs.

I also want it to be able to use roblox animations, if possible. I can definitely work around it otherwise, but I haven’t used roblox animations before, so I figure now is a better time than ever to learn about em.

I figured it would probably be best to ask on here before starting to work on it, just considering that I’d likely end up choosing a super inefficient, buggy, difficult to work with method.

Anyways, feel free to give me some of your input! What are some tried and proven methods of giving the player a custom character?

seriously though, I’ve just been mulling over this for like a week now.

This one was used in earlier stages of Roblox. I know that you could build a custom rig. I don’t really know how to do that, but I’m sure it’s custom rigs. After the rig is created, you have to insert Motor6D and eventually create the animations for it.

I’m not entirely sure if animations read the Motor6D and plays the animation on RigA(the rig created first and animated with) and RigB(the rig modified, no Motor6D touched using the same animations). You should give that a shot, and see for yourself if that works.

Remember those dinosaur games? I remember very well that evolving changes the appearance, hence that the physics broke that game a little on large ‘costume’ over the original rig(i.e. invisible character with custom character welded on or somehow attached to it).