Players do not move with ship

That’s what I was trying to say because I’ve heard if you use a BodyMover the player won’t fall off the platform as with a tween they will and with an anim!

1 Like

I think the best bet is to use a BodyMover, instead of trying to simulate the physics

You could make nodes and make the ship follow them using position and orientation constraint.

tweens can rotate and move a model though. but now that i think about it, calcifers is actually correct.

I use tweens a lot but i haven’t used them in trying to move a player so i wasn’t sure at first

So how do i use a BodyMover? I’ve seen it a few times but i have no clue how it works

This should help!

That sounds really nice to have, but i am new to scripting so I don’t know how to do that

As far as I’m concerned, no.
And if there is, it’s probably a very hacky way which requires a certain amount of skills, which I suppose you do not possess yet since you are a beginner as you said… :frowning:
I’m sorry for not being able to help, I’m not very familiar with this kind of stuff. What I would do is using BodyMovers\BodyPosition, which are relatively easy to understand, there are tutorials on youtube and plenty of references on the Wiki.
Constraint Movers (roblox.com)
BodyPosition (roblox.com)

Is your ship suppose to go like you want it to go or you want players to steer it?

It should be automatic, it’ll ferry players from one port to another on the other side of the bay

1 Like

You will want to use a BodyPosition:

Code Sample:

script.Parent.BodyPosition.position = Vector3.new(0, 20, 0)

I think it would be more complicated than that, because the ferry needs to wait for some time at each port and then go to the other one

Try this:

local stopTime = 5 —How long you want it to be at each stop
script.Parent.BodyPosition.position = game.Workspace.Port1
wait(stopTime)
script.Parent.BodyPosition.position = game.Workspace.Port2

To clean this up:

local ports = game.Workspace.PortsFolder:GetChildren()

for _, port in pairs(ports) do
    script.Parent.BodyPosition.position = port.Position
    wait(5)
end

Make sure you put all your ports in a folder (in the workspace) called PortsFolder

Let me try this, how do i set the BodyPosition up?

Well however you want as long as all the ports are ina folder called PortsFolder in the workspace. You were talking about the ports.
Also I edited the second script!

Okay, is this correct?
image
image

Yea just put the script and BodyPosition in the part that’s in the model!

Okay, let me run my game and try this

Awesome, it works! How do I get it to change rotation though?

Just using the orientation property should work!