Let’s do something different this week!
Instead of a weekly update (which we will now provide every second week), we want to discuss some game design aspects of CrossCode with you. This week, we’ll discuss a more controversial design decision of CrossCode: the automatic jumping.Ever since we published the TechDemo, we’ve often gotten the feedback to add a jump button for more precise jump control. Up to this point, we still don’t plan to integrate this button. And in this post we want to give some insight into that decision. In the following we will provide 3 reasons why we have auto jump in CrossCode:
CrossCode is about height – not about jumping
Pretty early on we decided to make CrossCode three-dimensional so that the player can walk on layers of different heights. Having height is always a great thing to make the design of areas more interesting and dynamic. It is also a great tool to design more challenging puzzles. Even boss fights taking height into account are a possibility.However, while height is definitely an important part of CrossCode, jumping is not. We obviously need jumping to move between different heights, but if we look at puzzles or battles there is no reason to do precise jumping here. This is also because the jump height in CrossCode is fairly low. It’s not even high enough to jump on top of most enemies.
So it all boils down to 3 things we do with jumping:
- Jump up on a higher platform
- Jump down on a lower platform
- Jump over gaps
There are two ways a jump button would provide more control:
- You can decide exactly when to jump
- You can decide how long you’ll jump by pressing the button for a longer time
Timing is important for jumping over gaps, but for this aspect, auto jump already does a perfect job: it jumps at the last possible moment in front of the gap.
As for the duration of the jump: since jumps in CrossCode don’t go very high there isn’t much to adjust in the first place. In addition, you can change your movement speed during the jump to adjust the distance which works pretty well for shorter jumps.
There is one situation however, where auto jump can be slightly annoying: sometimes you don’t want to ‘jump’ down a platform, but simply fall. There is actually a way to achieve this in CrossCode: you need to approach the slope more slowly. But this is still harder than simply ‘not pressing a button’. There is a workaround, where you can simply use ‘dash’ on the slope, but this has its own problems.
All together: we think the additional control of a jump button isn’t really all that important for CrossCode. But maybe we’re missing some use cases here?
We want to keep the ball throwing action mostly 2D
Free jumping also means that you can jump during battles – and throw balls while jumping (in the known jump’n'shoot fashion). While this works perfectly fine in 2D, here is what happens in 3D:
Can you guess the exact position of these 3 balls? Here is the solution:
Kinda unexpected? This is a general downside of 3D: it’s often hard to see the actual position of entities. It’s especially difficult for pseudo 3Dwithout perspective distortion (things far away don’t get smaller).
When we add free jumping to CrossCode it’s likely we’ll have more balls at different heights at the same time. Since CrossCode will be a fairly fast paced game, this added complexity will most likely result in confusion in the heat of the action.
Of course, we already have problems to some extend since we added platforms of different heights. However, with a limited number of platforms, the player can at least be sure that two ball-throwing entities on the same platform will hit each other as expected. In contrast to free jumping, you only have a limited selection of heights you can move on, reducing the complexity.
Auto jump worked before
Finally, we want to refer a popular video game series that already successfully makes use of auto jump since quite some time: The Legend of Zelda.
Auto jump has been added in Ocarina of Time and remained in the series ever since, even in more 2D-ish titles such as Phantom Hourglass.
All together, we think that auto jump is a better choice for CrossCode compared to free jumping. So much for our opinion. What do you think? Is there any advantage to free jumping that we missed? We’d love to hear your opinion on this topic!