Skip to content

Joystick analog input is made digital when bound to turning (Mirror GH 38)

MB thread: http://mb.srb2.org/showthread.php?t=40203

To quote @RedEnchilada,

Like I said earlier, it's not that the game itself doesn't support the full 360-degree movement of analog controllers; it's that the gamepad code is really bad at actually feeding the full analog input into the game, and oftentimes ends up just sending it like a digital input instead.

The game actually ignores the analog value when it is bound to turning:

http://git.magicalgirl.moe/STJr/SRB2/blob/2609745b51e41ccd5ee6ea186ef051b3d9dfabc2/src/g_game.c#L983

	axis = JoyAxis(AXISTURN);
	if (gamepadjoystickmove && axis != 0)
	{
		turnright = turnright || (axis > 0);
		turnleft = turnleft || (axis < 0);
	}

(Mirrored issue from GitHub 38 )