Super Monkey Ball Control System

I’m working on a Super Monkey Ball-esque game, and the movement system has been giving me a bit of trouble. I’ve figured out that the stage always pivots around the ball, and I’ve actually implemented that (pics of the blueprints below). However, the way that function works, the stage does not snap back to the origin when I let go of the joystick (using an XBox 360 controller for movement).

The question: How do I alter this function, or make a new one, to have the stage pivot around the ball but have the rotation correspond to the joystick position? I assume it’s a more direct wiring of joystick values to the rotation values, but I can’t figure out how to do that while maintaining the pivot-around-the-ball feature.

Extra tidbit: I’m pretty sure that in Super Monkey Ball, the stage really only tilts in the direction the camera is facing, maybe a little backward if you pull back. Besides that, the joystick just rotates the camera. I’d like to try and implement that system as well as an option for this game, but think it’d be better to give the player the option of a self-controlled camera. Just thought I’d throw that out there!

Hi there,

Did you ever manage to figure this out?

If anyone else can help, this would be great.
I’m having similar issues. I can’t get the rotation of the stage to smoothly return to 0/0/0
I also can’t clamp the angle of rotation, either. The stage can always rotate 360 degrees, in any direction. Ideally I’d like to lock it to about 45-ish.

Hi hi,
you can make the stage return to its origin point by using the RInterp To node. Pass it the currentRotation and target is 0,0,0. With delta time and interp speed you can determine the speed of the “snap back”. Do this with a branch where you check if Axis value for Y-Axis and X-Axis is 0.