I am looking to add an objective to my game.
https://www.youtube.com/watch?v=O3uxaxy5_tc
The above video is the most recent video I've made of gameplay in my game. As you can see, the game has got:
- Opponents to fight (in the video NPC opponents, but multiplayer opponents will be there soon)
- Objectives to capture (the towers).
- Variation. That is, players can choose different skills to have different setups.
- A large and diverse map (note that multiple maps are easily possible, but that isn't the point right now).
- Constant action, thanks to the fact that players respawn immediately after they die.
On the surface, this looks fine. There appears to be everything needed for a game. However, I have a problem with a win condition, and an overall objective. Let me explain:
The map is divided into squares. Each tower controls a square. To take over a tower you must destroy it - Once "destroyed", the tower switches team and regains all of it's health.
The problem is when a team starts losing. Let's say that the map is like this: (Ignore the red line in the picture)
As the teams respawn only in territory controlled by themselves, this means that the blue team would be respawning in a much smaller area than the red team. This means that the blue team are always in the territory they are defending, but the red team are mostly spawning really far away.
Using Photoshop to better visualize the problem:
With the black dots representing members of the red team, and the white dots representing members of the blue team (both teams have 10 members in this example), you can see clearly how the blue team can never be defeated. Any member of the red team is simply ganged up on, overwhelmed, and then respawns really far from the fight. Yes, theoretically in that example one or two of the territories could be taken. But then the problem just gets worse. Imagine this example if the blue team only has one territory.
This isn't just theoretical, by the way. I've actually left the server and the AI tanks battling for over 3 hours and no team was able to win.
So to summarize the problem:
When a team controls less territory, there are more members of that team per piece of territory they own, and so there is no way that the opposing team can ever win.
Now let's talk about possible solutions that I've tried and dismissed:
One solution would be to remove respawning entirely. This would mean that:
- Taking territory would not be a problem, as you would not be attacking lots of newly-spawned opponents.
- Winning would not be as difficult.
However,
- This would encourage users to play very cautiously, just like in World Of Tanks.
- If a user dies, they have either a long boring wait in front of them, or have to quit and join a new battle.
I could also make each tower taken give the team more power (for example more health the more towers they have). This:
- Technically does solve the problem. A players' team can overwhelm the other team.
However:
- The battles are too quick. Once one team gains one or two towers there is far too much of a "landslide victory", where the extra power the team gains allows them to decimate the opposition.
- It isn't much fun being on the losing team, being able to die to the winners in far less shots and barely being able to harm them.
I could also make towers simply be permanently destroyed, rather than having them take over the other team. However, this then creates a permanently equal match.
- Players travel the same distance from their controlled areas, fight on equal terms in no-mans-land, and can never reach each others' towers to destroy them. This also sort-of falls prey to the original problem anyway in that there are tons of players who just respawned in that small area protecting all the towers, whereas the enemy players had to travel through the whole map to attack them. Which makes the problem worse.
I could limit the respawns, or have a respawn timer. However obviously,
- Players do not want to be sitting around.
- It interrupts the action to have to wait around.
I could leave the game how it is! I could add progression in a shop and buying skills. However,
- I am an indie developer. A multiplayer shop system, skills, storing player data, is all a ton of work for me. This is a huge amount of work for something which isn't really significant or that satisfying for a game as a whole.
In short, I've done a lot of experimentation with this and thought a lot about it, however there appears to be no clear answer.
And, even if a team takes all the towers and wins, what then!? The map just resets, and the battle starts again? This would be repetitive, and boring.
In short:
My game needs an objective system which is fulfilling, which allows one team to win, but to not make that victory worthless, and which allows both teams to have a long and enjoyable battle.
Edit: I forgot to mention that players in their own territory get a health regen, meaning the defenders in their own territory have even more of an advantage.