This design is probably one of the most complex to think about: how to make a fun shooting game, where players can change time, but not only slowing it, but going back and forward?
I think that this game must allow for three players: one who can slow it, one who can go back, and one who can go forward. Even if this game is a shooter, I think that there should be only one weapon, so the most skilled will win, and not just because “my weapon can shoot X bullets in Y time”.
To make it work, I think that these powers work in a “bubble” around the character, and it changes what’s going around him:
- When you are going back in time, everything will be returning to it’s original position: a bullet will go back a certain amount, particles will return to their point of origin…
- When you slow time, everything, but you, will be slower: particles, bullets, eventual damage to walls and floor…
- When you go forward, everything will be extra fast, only with their paths appearing, but will return, then, to how they are: it’s up to you see what’s going to happen, and how to avoid it.
The main problem is how to make it all work together. For example, the player who can go forward and the player who can slow time. For this, I believe that it could work with something like this:
- Going Back + Slow: When these two characters face each other, everything will be slower. Both the characters will suffer the effects of going back in time, seeing bullets going back and damages to walls and floor. However, the character who can go back in time can’t slow his own time, and the character who can slow time can’t return the bullets of his enemy.
- Going Back + Go Forward: When these two characters face each other, things will be extra fast, returning in a slower speed. The character who can go back in time will be able to reduce the speed of bullets that are moving back, while the character who can go forward can increase the speed of any bullet that’s going forward.
- Slow + Go Forward: When these two characters face each other, the general speed won’t be changed. However, when the character who can slow time uses his power, it’ll cancel the first effect of going forward, and the player won’t be able to see the path of each bullet, while the character who can go forward in time can cancel the effects of slowing time.
This is not an ideal solution, I’m assuming that the players can trigger their powers, instead of being always activated. And that everything in the game would have three sets of variables, one for each power, and the way they act is based on which power are affecting them, or if none of them is – I’m not a programmer, and I don’t have any experience on doing anything like that, so there may be better ways to do it, but I don’t know them.