I’m making some airplane stuff, and right now I am working on the ejection sequence which (irl) works as follows: the canopy of the aircraft is jettisoned, and a fraction of a second later, the pilot’s seat fires its rocket motors and separates from the aircraft.
The issue is that the pilot seat only moves up and away from the aircraft for a brief moment before it freezes in the air; physics just stop calculating. In the video you can see that the canopy, which was jettisoned in a similar manner just a second prior is behaving normally, it continues to move forward due to inertia, whereas the pilot seat floats in the air. In the output window, it’s showing the network ownership of the canopy and the pilot seat, they’re both set to the player (dw about the name). This is really strange for me because the way the weld constraints are disabled (disabled on a server side script) and the way the forces are applied are nearly identical for the canopy and the seat.
I’m fairly confident that it’s something to do with the fact that it has something to do with the fact that the seat is welded to the player’s character, the AssemblyRootPart of the seat is the character’s HumanoidRootPart. However, even when the character leaves the seat, despite the character getting launched forward due to the inertia from when the seat initally ejected, the seat still stays still in the air.
How do I get around this?
Also, I’m somewhat confident that it’s not an issue in my code because I’ve used the same code for other things, not just the canopy. For example: deployable ordnances on the plane’s wings. (There’s nothing going wrong in this video, I’m just showing that my approach does work for other objects, just not the seat apparently)
