I know how to animate Players and NPC but I cant animate custom models. I've read the wiki article multiple times however it is no help to me because it doesn't have much detail. I'm trying to animate a tail made of 5 segments. Please help me.
Okay, I'll take you through this step by step. PM me if you need more help, I'm very good with animation models/NPCs.
The first thing you want to do is create the Motor6Ds. The Motor6Ds are basically what connects everything to the Torso. The first thing you want to do is create and connect all the basic body parts to the Torso. A helpful plugin I like to use to create Motor6D's is this by FromLegoUniverse. When using this, select the Torso as Part0, and select each limb seperately and make it Part1.
The Second thing you want to do is make a HumanoidRootPart. The HumanoidRootPart is basically the real torso. We want to create a Motor6D connection with HumanoidRootPart as Part0, and the Torso as Part1. We will name is Root Hip (This is very important)
We can move onto the more important matters. There needs to be an AnimController located in the humanoid of the NPC (did I mention it needed a Humanoid) Well, there doesn't necessarily have to be a humanoid, but I guess you could read about loading animations onto NPCs with AnimControllers on the wiki page for Animations. But now that the animations are set, you can now animate it. This is easier then you think. All you do is click on where you put the Root Part, and the Animation menu will have all the things that the Torso was connected to with Motor6Ds.
Loading animations is basically the same if you have a humanoid with a different motor6d interface. But if we have a Model, then that's something different. If we don't want to add a humanoid, you want to add the AnimController into the model. and load the animation into the animcontroller. the AnimController should Automatically find all the Motor6Ds.