I started getting reports from users saying that they are unable to move in my game - their character seems to be spawning in, they can move their camera around, even jump, but they are unable to move.
I found a way to replicate this issue on a default baseplate, however there must be at least one other set of conditions that trigger this “hardlock” as I will explain later.
Reproduction Steps
-
Plug an XBOX controller into a PC, but don’t touch it. Just leave it plugged in and on. You will be using WASD the entire time to try to walk around.
-
Join an empty baseplate. Note that WASD works to move your character.
-
Reset your character.
-
You become hardlocked, WASD no longer works to move your character.
Interestingly, opening the developer console appears to fix the hardlock.
Once again I would like to note that there must be another currently unknown set of circumstances that can cause this issue, because I have players reporting that they are entering this broken state immediately upon joining, without resetting their character. I am thinking it might have something to do with me having CharacterAutoLoads = false in my game, and when I call :LoadCharacter it might be serving the same function as a reset, but I haven’t been able to replicate exactly what my users are reporting since I don’t know all the details of what device they are on, what gamepad(s) they have plugged in, etc.