Hello,
In recent months, we have received many bug reports in which users in our game Emergency Hamburg could not enter vehicles and equip tools (except the phone) after doing stuff involving vehicles.
After testing, we suspected it was due to SeatPart not being set correctly, as Humanoid.SeatPart being set while the Humanoid is not seated would exactly cause these issues.
We have now found a replication, which most often only works in Roblox Studio though, but I have some screenshots that show the issue.
In Emergency Hamburg Roblox Studio:
- Press play and locate your car.
- Enable a network delay tool like clumsy.
Filtering: “inbound or outbound”
Functions: Drop and Throttle Enabled (Default Settings are fine) - Enter a vehicle seat repeatedly after jumping (Press Space and immediately after that press E) until it isn’t possible anymore.
If the “Seat” Prompt disappears, SeatPart is set incorrectly on the Client.
If the prompt is visible, but the interaction doesn’t work, it’s set incorrectly on the client.
In the following screenshots i was able to replicate the bug:
On this screenshot, you can see SeatPart is correctly set to nil on the Client:
On this screenshot, you can see that SeatPart is incorrectly set on the Server.:
Seat.Occupant and Seat.GetPropertyChangedSignal(“Occupant”) still works correctly even if SeatPart is incorrect on the character.
The issue with SeatPart being set incorrectly can happen both on the client and on the server; In our bug reports, it was most often set incorrectly on the server.
This issue seems to happen to players mostly with a bad internet connection, however, it leaves them in a soft-locked state and requires them to rejoin as vital game mechanics stop working, so I hope for a fast fix.
Let me know if you need any additional information.
Thanks!
~ Felix