How I would go about that?

Hi !
I’m trying to make something but I can’t figure out how to do it here an explanation :
I want my log to go from point “a” to point “b” like this :
Capture
Have a nice day and thanks you for the reply !

3 Likes

do you want the log to go down that path like it was rolling down, but bouncing along the way?

3 Likes

Yes it’s exactly what I want !

Little bump to this topic !!!

This text will be blurred

1 Like

whats stopping you from using the physics engine?

Every time the log hits the ground, add an artificial bounce to it

Log:ApplyImpulse(DirectionOfBounce* Force))

and let the physics engine handle the rest

1 Like

First of all you must use tweenposition and also make an animation to the trunk with moon animator that you can look for on youtube about the animation.
If you don’t know how to use tween position, use the output that will give you the instructions there, it’s like using CFrame.new but hey…
In case you do not want to do it, make a repeat cycle which you add one of the axes for example: the Y axis and calculate where you want to leave it with the properties and in the untill you tell it to finish when the trunk is in the exact position and finish the animation

1 Like

good idea but for the bounce it is better to make an animation because if you do the bounce it would use more system resources (server)

2 Likes

Yes, But animating something bouncing, let alone an object curving, is incredibly hard and time consuming if you have to do it manually.

2 Likes

In case the game doesn’t have so many things, do it like @Rabbit_Lord, since that way it wouldn’t take so long to do it and it would be easier, but in case you want it more optimized, do the animation, although I tell you that with the animation it will be difficult do a good physics
and also what to do in case of @Rabbit_Lord :

local newCFrame = CFrame.new(20, 30, 40) -- whatever
local part = "you trunk"
local tweenInfo = TweenInfo.new(1, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut)
local tween = game:GetService("TweenService"):Create(part, tweenInfo , {CFrame = newCFrame})
tween:Play()
1 Like

Don’t worry I have already make a tween and I will try your answer !
EDIT : I can’t buy moon animator …

you should use the free one on 2

1 Like

There is a free one ?

This text will be blurred

of course the 2 is free I have it or I think it’s the one I don’t know but I do know that there is one free

1 Like

The 2 is for sale at 800 robux …
image

1 Like

So i pretty much found that using a proprety in a part of the wedge (or any part) that can change the velocity of something that is touching it its called AssemblyLinearVelocity this is what it looks like when i used it for your test
image
and this is what the result is :

Video demonstration

Tutorial

i set it to 25 but you can set it to whatever you would like
Note that this also affects player characters

Pretty sure you can use math.abs(math.sin) or something for that and lower the height of the part as it rolls down if you know the exact length of the slope.

local Height = 25
local Length = 50 -- Length in studs of rolling area

while task.wait() do -- just an example loop, you could use a linear tween for that too :)
    Length -= 0.5
    Height -= -- something
    -- so on and so forth
end
1 Like