When we first started with KABOUNCE, a multiplayer competitive pinball game, we tailored it to the theme of a UE4 game jam: Rocket and Roll. Physics based, rocket propelled pinballs you control, seemed like an easy, small scope game at the time. We added a dash of multiplayer team sport, some tron-esque post processing, and we have ourselves a game, or so we thought. When we started to fully develop KABOUNCE, we quickly figured out that there were some inherited challenges within the jam concept which we had to overcome. In this article, I will talk about how we overcame one of these challenges.
Similar to pinball, in KABOUNCE one of the primary objectives for players is bouncing the pinball into bumpers. In doing so players colour them into their respective team colour – orange or blue – and score points associated with those bumpers.
We often distribute bumpers into what we call ‘clusters’. Between different clusters there should be space for players to manoeuvre. Clusters, in turn, should be a combo galore.
KABOUNCE used to be nearly completely physics based, however, physics can be difficult to grasp. Especially in a third-person, fast paced, rolling ball game built around ricochets. It’s simply too much to ask of new players. This led to players feeling that one of the core gameplay elements was unpredictable, unless you had a lot of in-game practice or understanding of physics.
Oftentimes it was difficult to hit satisfying combos, which caused a core feature to have an enormously steep learning curve. Due to the fast paced nature of KABOUNCE, it was even considered frustrating or impossible to hit the bumper combos you wanted. We decided to design a system that would make the bumpers function how we wanted: turn rolling around in a pinball machine into a gratifying, ‘juicy’ experience which feels true to the explosiveness of points and combos in pinball.
We ended up designing an aim-assisted system that tackles the aforementioned inherited challenges with physics based gameplay. The system basically does a projection for the player, detecting the bumper in the closest proximity of the actual projection vector. It then adds a correction to the ricochet direction to ensure players will connect with the next bumper. This may feel like a ‘cheat’, but none of the players we tested with noticed it. Some even reacted in disbelief after we explained the system to them.
The reality is that most of us are very poor at doing quick, real time projections, let alone from an angled third-person perspective at KABOUNCE’s pace. At times when players – or even I – played they would be confident their approach to the bumper would cause them to ricochet into the next bumper, only to end up against a wall, causing them to feel cheated by the game’s design and physics.