I’m now in the process to solve some problems with the engine.
The first one is scrolling, while it has been fixed and also helped closing other nasty problems in the code found while re-implementing the scroll, it still lacks support for two players, the scroll is still based in just one. Now, we must take care to not scroll the screen in a way any of the two players disappear from the screen. While in regular horizontal scroll this is not a problem, Rockbot is meant to be a platform game, so scrolling of screen change is more complex.
Think about the case of entering a boss room: how one player can enter it and the second one not?
Or when you go up/down a ladder and the screen is scrolled to show a new part of the stage. What to do that if the other player is not even in the ladder?
The solution, of course, is to now allow the player out of the screen while the second one is not also on the exit. Meaning that, to enter on a boos room, both must be in the door area, or to change area when on a ladder, both must be.. in the ladder!
Another problem is that in one player mode, when you die, you just return to a “safe spot”, in the start or middle of the stage. In 2 player mode, the player must return to the same part, but not in the same spot, because this can make him die again – imagine diying by falling in spikes, then returning above the same spikes again and again. A good solution to this problem is found in chip & dale for the NES, the player that died returns floating in a baloon, and press a button the the character is at a good position.
While adding so many problems, having two player simultaneous adds a lot of fun to the game, and is a feature used so few times in games that it is a shame. Godd times of Battletoads, Chip & Dale and Contra 🙂