A good game with bad controls is not a good game. The connection between player and game character needs to be harmonic. If the game responds slowly or in an unexpected manner that simply kills the fun and playing gets really strenuous.
This is why the input-system is an important aspect. Playing Schein should be a pleasant experience with the gamepad as well as with the keyboard – and this requires a lot of fine-tuning. My task is to rewrite parts of the input-system. Now you might ask… why? It was already playable, right? The reason is that there’s always more than one iteration in software development. Especially if a game “grows” and changes there will be parts that need to be redeveloped.
Maybe because a better solution for a problem is found, a more efficient implementation is required, or simply because we’ve learned something new.
Of course, the “old” input-system worked – and it worked pretty well too. But, for example, we want to support all gamepads – and if possible even have the controls customizable by the player. And for us the system should also be simple for future maintenance.
But redeveloping it a third time would be too much, for real.