Help with moving a character inside a moving ship

I’ve been searching for tips/help regarding moving around inside a moving ship but all the answers I’ve found have been from years ago (Example, Example) and I’m curious if there’s been any improvements or changes since then? The plan is to make a multiplayer game so I need to have more than one person in the ship.

The three ways I can think of to achieve this are:

1 - Move the ship in the world and have the player follow along
2 - Move the world around a stationary ship
3 - Make the interior of the ship a separate level from the exterior

Ideally I’d like to use the first option but everything I’ve tried so far has resulted in a lot of janky movement when the client is trying to update its position.

Is there a way to have the ship interior be a sublevel of the persistent level and update its position when the ship moves? Could I have the interior be a separate physics grid that ignores the persistent level?

Any and all ideas would be much appreciated!