New Gamepad Controls

As mentioned in the last post, we had the chance to rework and test some new things with the gamepad controls. This is a continuation on that, but it will be a bit long, so here’s a TL;DR:
We’ve figured out a new way to map the Cloudbuilt camera controls to a gamepad, and it works so well that we will have new Default control settings in the game.

With that out of the way, let me frame this a little bit.

Cloudbuilt was originally developed only with keyboard and mouse in mind, it was only towards the end of development that we for various reasons started to look into gamepad controls. Doing so, we quickly realized a big issue with jumping controls. We could not map jumping to the regular X or A button on the gamepads, as it then stopped us from controlling the camera at the same time. Which is needed for some of the more complicated action platforming, or advanced wall run sections.

Holding X button for jump on a wall, but unable to then use the right stick at the same time.

This was a big issue, and the only viable solution we saw was to map jumping to a shoulder button, like L1, and when considering wall boosting too, we had to use both L1 and L2 at the same time. It was not at all comfortable at first, but after getting used to it, it at least worked and we could clear the game with it.

We sometimes had to use two finger for both jumping and boosting on the same hand. Which most players are not comfortable with, and is not a great solution.

We did investigate other options, but to make an already long story shorter, we didn’t land on any solution at the time, and had to refocus our efforts on just the mouse and keyboard. We were so unhappy with the state of the gamepad that we actually removed the gamepad controls from the game on release. They were only added back shortly after, with an added disclaimer popup informing that mouse and keyboard is recommended on the first startup. Which of course is less than ideal.

To this very day, whenever I watch a stream or a fresh player playing on YouTube, almost all cases when they use a gamepad, the first reaction is still a negative impression about the jump button. 

“Why would anyone think jumping with LB is a good idea!?!”

- Almost all gamepad players ever

Many players get over it, but I would say almost 50% of players end up changing the button mapping to jump on the A/X button. And without knowing it, creates issues with the camera later on in the game.

We did various things to polish the gamepad controls for Super Cloudbuilt and the console release, but we never landed on a solution to the jumping and camera issue, and we still never had time to experiment much with new solutions. Till now…

Now we have had time to test and experiment more, and we finally made two new systems that when combined made us feel “this is actually working”!

Camera Assist:

We’ve made a system that depending on your actions and environmental context, automatically can align the camera. Like, facing along your movement direction on a wall run, or rotating up when you climb up on a ledge, rotating along with the jump direction when jumping off a wall, and so on. Just various small things, which always can be overwritten by giving manual camera input. 

We actually tested similar systems before back in 2013, but it was really hard to balance and we never landed on anything. This time we made it less intrusive/less strong, and had a little more time to balance it.

Notice that there are no right stick input. The asssist does not automatically align the camera perfectly, but it helps you a lot.

This alone is not enough to solve all issues, but along with the aim assist we mentioned last post and this, it really helps to let you use your right thumb for jumping in a lot of platform scenarios.

L-Stick Jump Aiming:

With these systems working, things were a lot better, but there were still some cases that could be problematic.

When using the L1 button for jumping, we can hold it down on a wallrun to stick to the wall and still control the camera for more controlled jumps, but this is still not possible when we use the thumb for the jump button. Which could be a big problem, till we added this next system. 

With this, when you hold down the jump, we now let you aim the camera with the L-Stick, which also handles the movement/jump direction input. When we were just thinking about it initially it felt so unintuitive to do this, but once we started to see it as “giving jump direction input, and preemptively making the camera follow”, it suddenly clicked, and felt like it was worth a try.

Once again, there is no Right Stick used during wall runs or jumps here. Notice how the left stick is used instead while we hold down the A button.

Now with the finished system in front of us, it works so naturally that it just feels baffling that we didn’t try this before. It really works quite great! It might not give you the best input for aiming a gun and shooting, but with some aim assist in place, it actually works well enough for that too in most cases.

Conclusion

I am personally too used to L1 now, and it does give you a bit more manual control, so I will stick with that personally, but this solution is now good enough for Bag to feel like it’s his preferred method for playing with the gamepad. After I used this to complete some of the hardest levels in the game, I can also say that I feel confident enough in this system to actually make this the default setting for gamepad!

I’m sorry for the long rambling in this post here, but I am just so excited to finally feel like we have an okay answer to this jump button issue that has been haunting us for so many years.

I think if we spent even more time to fine tune it, and with feedback from all you players, we can make something even greater for Super Cloudbuilt! I really hope gamepad players who previously had issues with the game can give it another chance and let us know what they think!

Next time I’ll cover something not related to gamepads, but something relevant to all players. 

Stay tuned!

https://discord.gg/bumbn3Ep

https://twitter.com/coilworks

Thanks for reading!