[Release] Platformer character controller

Hello, after a while of looking around I finally found THIS character torso “Lerp-like” movement, I’m quite new to scripting so I was wondering if anyone could help.

I need this movement for a game I am attempting to make, however I ONLY need the character moving/leaning, camera look at, Jumping (One jump) also the High jump and falling.
I’ve tried to edit the scripts but after a few hours I still couldn’t get it to work with only those. could anyone help?!

1 Like

How did you do this?
Until now i still don’t know how to do this

EDIT: Nvm i made one
i guess i just have to try

1 Like

I know this is an old, old post, but I’m having an issue.
I reuploaded and changed all the animations, but they all work except for CrouchIdle and CrouchRun. Can someone please let me know what I’m doing wrong?

Edit: Here’s a screenshot of what happens when you hold crouch.
Character just freezes up and stands there.
screenshot

Edit 2: Fixed it! For anyone else having this problem, copy the ID of your reuploaded animation and place it into its respective place in the “Animate” LocalScript under StarterCharacterScripts.

6 Likes

lol this is so awesome! It reminds me a lot of Super Mario 64, good memories :') Really great module btw!

1 Like

I love this! It’s really smooth and I think I may use this for something. :eyes:

Since this work on Computer and on Xbox, how can you extend it for Mobile Users? I know you have to add some Buttons and Stuff like that but im not very well trusted with Stuff like that.

1 Like

Man, do I love that game, It’s the perfect game to replicate in Roblox!

Do you guys think this can still work, I also wonder if this can work on R6?

I will use this for my 2.5D game

Please tell me how im to small brain to know how to…

this didn’t work for me :frowning: still don’t see crouchidle and crouch run

can you tell me which controls the wall jump part?
tried to do it
and got a few errors


local function reflect(v, normal)
	return -2*v:Dot(normal)*normal + v;
end

function moveSet:wallJump()
	local hrpCF = self.hrp.CFrame;
	local ray = Ray.new(hrpCF * CFrame.new(0, self.hrp.Size.y/2, 0).p, 4*hrpCF.lookVector);
	local hit, pos, normal, material = game.Workspace:FindPartOnRay(ray, self.character);

	if not (self.isWallJumpActive and self._canWallJump and self:inAir() and hit and (not self._lastWall or self._lastWall:Dot(normal) < 0)) then
		return false;
	end

	self._isWallJumping = true;
	self._canWallJump = false;
	self._lastWall = normal;
	self._totalWallJumpCount = self._totalWallJumpCount + 1;

	self._jumpCount = 0;
	self:jump(false);

	local move = self.humanoid.MoveDirection;
	move = (move:Dot(move) > 0 and move:Dot(normal) < 0) and move or hrpCF.lookVector;
	self.humanControl:setMode(Enum.HumanoidControlType.Locked, reflect(move, normal));

	local count = self._totalWallJumpCount;
	delay(0.2, function()
		if (self._totalWallJumpCount == count) then
			self._isWallJumping = false;
			self._canWallJump = true;
			self.humanControl:setMode(Enum.HumanoidControlType.Default);
		end
	end)

	return true;
end

self._isWallJumping = false;
self._canWallJump = true;
self._lastWall = nil;
self._totalWallJumpCount = 0;

self.isWallJumpActive = true;

function moveSet:wallJump()
	local hrpCF = self.hrp.CFrame;
	local ray = Ray.new(hrpCF * CFrame.new(0, self.hrp.Size.y/2, 0).p, 4*hrpCF.lookVector);
	local hit, pos, normal, material = game.Workspace:FindPartOnRay(ray, self.character);

	if not (self.isWallJumpActive and self._canWallJump and self:inAir() and hit and (not self._lastWall or self._lastWall:Dot(normal) < 0)) then
		return false;
	end

I think the code misses documentation

You can show me Script pls if you want

Has anyone else experienced issues with high jump and long jump on Mac? Any of the moves that use Ctrl don’t seem to function for me.
ezgif.com-gif-maker (17)
As seen here, I was able to crouch, and if I jumped before pressing crouch, then held both Ctrl and Spacebar, I was able to high jump. Same thing happens with the long jump.

2 Likes

Speed Runners : If you execute a pixel perfect jump you can achieve a long jump ladder climb which boosts the climbing speed dramatically saving 5 seconds.

2 Likes

No, unless you configure the system then yes (if u can do it) .

maybe try changing the hip height on the avatar

I know this is older but if someone is available. Everything works If I transfer to a baseplate but if I transfer to one of my games nothing works, not even the footstep particles or tilt, only 1 error appears - I get this error. Any help is appreciated.

ReplicatedStorage.CustomMovement.PhysBall:67: attempt to index nil with 'WaitForChild' - Client - PhysBall:67

It says it can’t find a child of one script, are you sure you copied over everything exactly?