Custom character (ant) doesn't move linear

Sorry but I don’t know in what category put this topic…
In a game, I’ve made a custom character to change the player character by a ant, so, the first time I tested I added a humanoid (R6) Instance and renamed some parts to Torso, Head and HumanoidRootPart


I know, in my model some things are missing but it’s less important than the rest…
PAMDir
There is a weld from Head to Torso, Torso is the brown Joint closer to the head and GraphMisc is anything like eyes, foot and legs…
But then when I change the Player’s Character to PlayerAntModel, he die :frowning:
I don’t have anymore the script which change the Player’s character because I wasn’t able to create topics on the DevForum and, so, it frustrated me :rage:

So I changed to a better way that work now but abnormally (It can walk but stops walking and rewalk… :thinking:)
Now I have a model like this:
PAMDir2
The model looks like the old. Now I can have the script that does the work, the script used now delete anything useless (in the player’s character) then copy the PlayerAntModel (which is now in the ServerStorage) to the Player’s Character then it remplace the rest parts to the PlayerAntModel parts and move the PlayerAntModel’s rest parts to the Player’s character… :upside_down_face:
Also it is using the HumanoidRootPart as a foot :smile: Else it won’t work idk y

local function BecAnt(Humanoid,NewPos)
	if Humanoid then
		NewEvent:FireClient(game.Players[Humanoid.Parent.Name],1,true)
		local PlrObj = Humanoid.Parent
		local T = PlrObj:GetChildren()
		local Keep = {"Head","Torso","Humanoid","HumanoidRootPart"}
		local i=0
		local j=0
		for i=1,#T do
			for j=1,#Keep do
				if Keep[j] == T[i].Name then
					break
				elseif j == #Keep then
					T[i]:Destroy()
				end
			end
		end
		Humanoid:ClearAllChildren()
		local AntM = game.ServerStorage.PlayerAntModel:Clone()
		AntM.Parent = PlrObj
		AntM.GraphMisc.Parent = PlrObj
		AntM.Abdomen.Parent = PlrObj
		AntM.Join.Parent = PlrObj
		AntM.Center.Parent = PlrObj
		PlrObj.PrimaryPart = PlrObj.HumanoidRootPart
		PlrObj.Head:Destroy()
		AntM.Head.Parent = PlrObj
		PlrObj.Torso:Destroy()
		AntM.Torso.Parent = PlrObj
		PlrObj.HumanoidRootPart:ClearAllChildren()
		PlrObj.HumanoidRootPart.Position = (PlrObj.Center.Position - Vector3.new(0,1.495,0))
		PlrObj.HumanoidRootPart.Orientation = PlrObj.Center.Orientation
		PlrObj.HumanoidRootPart.CanCollide = true
		PlrObj.HumanoidRootPart.Size = Vector3.new(6,1.5,3.75)
		local Weld = Instance.new("WeldConstraint",PlrObj)
		Weld.Parent = PlrObj.HumanoidRootPart
		Weld.Part0 = Weld.Parent
		Weld.Part1 = PlrObj.Center
		PlrObj.HumanoidRootPart.CFrame = NewPos
	end
end

I undrestand that you can be lost in my explanations but it’s important to understand.
SO. It WORKS but I’ve some problem while walking, and uh, sorry, I can’t upload .wmv videos but you can see by yourself in Becants
You must go to one of the color plates and you will be a ant, select one of the buttons that will appears (it doesn’t matter which) click [OK] then try to keep walking [W], you will see the issue… And sorry for the fact that I can’t upload a video…

So… My goal is to get the ant keeping walking without stoping.
I don’t know if I must do a Script or change the design or else…

Also, the hitboxes are like that:
HitBoxAnt

In the past I’ve had issues with custom characters continuously tripping, and running

script.Parent.Humanoid:SetStateEnabled("RunningNoPhysics", false)

in a LocalScript prevented it. I’m not sure if this is still a problem, but you could give it a try.

Âlso, I forgot to say, the ant is uncompatible with rig animations, and it should be without animations but since I will need to animate the ant, it will be done by scripts, frame by frame…
Also, it may be the cause of that…

If you’re having more problems with your rig, you will probably have to rebuild it. You should look at rigs like your character or the dummy rigs the animation editor can generate for reference, even if they’re R15.

If you’re using R6, I think the only things you need to care about are the HumanoidRootPart, Torso, Right Arm, and Head, as well as the Motor6D hierarchy (ie. HRT connects to Torso, Torso connects to Head). I’m not sure if R6 can find the character head if it’s indirectly connected (Torso connected to neck, neck connected to Head), but this works with R15. With R6, the right arm motor must be called “Right Shoulder” for tools to work.

I don’t think having parts in a folder inside of the character will work properly, and you should use something like the custom character creator plugin to connect things together, or run Humanoid:BuildRigFromAttachments on a specially made model from the command bar. Do not use welds, they do not support animation and may likely cause other problems. If you’re using Motor6Ds, you can use what Roblox provides already for humanoid animations.

To test your rig you can rename the model StarterCharacter and place it inside StarterPlayer. You can do the same for a StarterHumanoid.

In the model, there is no rigs, else it would be R21 (antennas are missing)
I noticed that players must be in R6 to see the HumanoidRootPart used as the foot…
R15 doesn’t work else

The number of parts in a rig doesn’t matter. You can do anything you want provided the important body parts I mentioned exist and are connected correctly.

You can also set Humanoid.HipHeight to lift the player off the ground. You shouldn’t have the HumanoidRootPart directly on the floor.

I use HumanoidRootPart directly on the floor because else it wasn’t working at all, it goes sideways…
I think using a Humanoid is handicapping because we must respect some rules which sometimes forbid to use somethings… (R15 can’t change his HumanoidRootPart size)

I wonder then, how can we make custom character which can react with user’s inputs?

Now it doesn’t move at all… BRUH

Humanoids provide a very large amount of functionality for you and you shouldn’t avoid using them unless there is literally no other option.

Pretty sure this is not true.

There is something fundamentally wrong with your character and you will need to rebuild it properly.

If I must rebuild it, I will remove the Humanoid and make a Script to handle what I would need…
I think it’s better because I know exactly what it does.

1 Like