The Future of Time Travel
Now that I have the networking stack figured out for Eccoes, I need to start building it into a fun game. I’ve thought about different ways to have players battle against each other, and I realized that direct combat won’t work. Since the players aren’t going to be synchronized together, it won’t be possible for a player who is under attack to defend themselves. I think the game would be more interesting if competition was built around outwitting your opponent in different ways. The main objective is going to be some form of capture the flag or base defense. Players will need to solve puzzles, and navigate difficult terrain while using time travel while defending their own base. There’s a number of gameplay elements that I need to add.
Tools and Traps
Players will be able to impede and disrupt their opponent and their eccoes with different types of traps and obstacles. I’m imagining doors that can shut, snares that slow characters down, and a bow and arrow to cause damage. Players will need to anticipate what traps can be used against them, defend their eccoes from attacks, and place traps for their opponent.
Health is a simple system that gets complicated by time travel. The way I see it, any damage that is caused to a character in the past will affect all future versions of that character. This means that if I have just one health left, and one of my ecceos gets attacked and takes damage, my current character will take that damage and die.
I also want to explore the concept of ‘time health’. Allowing past eccoes to be attacked or tampered with raises interesting temporal questions. If my past self gets blocked and can’t reach the point where they go back in time, what should happen? If an eccoe is attacked, should it somehow defend itself? I think that if the past doesn’t happen the way it originally happened, that eccoe will take damage to its time health. This will also ripple forward, and cause a player to lose its future eccoes and have to retake control of its past self. I am also considering forcing changes to ripple forward. If an eccoe can’t reach the spot that it was supposed to have reached when it comes time to teleport, I may move the subsequent eccoe to that position, causing the recorded movements of all future ecceos to become shifted and distorted.
To further address the problem of your opponent messing with the past, I want to give players the ability to cancel their current character, and resume control of a past character. That way, if they are being attacked in the past, they can resume control and fend off an attack. This of course comes at the expense of losing everything they have just recorded.
I mentioned a capture the flag mechanic. I wonder how a victory condition could be affected by time travel. Suppose a player succeeds in capturing the flag, but the other player is a minute or two behind, and succeeds in capturing the flag later. When should the game end? The first time a player succeeds? Perhaps the rule should be that once a player’s flag has been captured, they lose the ability to go back in time and we play to see if the other player can manage to capture the flag ‘earlier’, while the first player defends.
Further Balance Considerations
I have no idea how powerful time travel can be. Giving players unlimited powers could result in games that are too one sided or unwinnable, or just not fun. I could limit the number of eccoes a player can have, or limit the number of times they can time travel. I could limit the player to only being able to time travel at certain positions on the map, or instead of sending them back to the start time only allow them to return a set period of time into the past. This are options I will try if playetesting proves the basic game to not be fun.
There’s a lot of small technical things that I need to do soon. I mention them here because they probably need to get done before I can work on the more visible, fun elements, Some of these features require collision detection. I want large rooms, a moving camera, animated sprites, a linked list of eccoes, and a consistent UI on the screen.
How can you help?
At the same time that I’m developing this game, I’m trying to build awareness of it, and a community. Whether or not this project actually turns into a finished polished game will depend entirely on the community. Right now, the project is just me learning how to make a game, and playing with mechanics that I might enjoy. Without a community, this becomes just something I show off to friends and something I can point to on a resume. The community would determine if I can find people to help with the game, to playtest it, and whether it becomes an open-source project or a kickstarter pitch.