Fixed! I added direct keyboard handling with Phaser's input system for WASD and arrow keys, in addition to the SDK controls. The player should now move with WASD, arrow keys, and touch joystick on mobile.