22
\$\begingroup\$

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: enter image description here (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:enter image description here

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.enter image description here

  • 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.

\$\endgroup\$
11
  • 2
    \$\begingroup\$ The concept of terratory seems to be the problem. How wedded to that are you? \$\endgroup\$ Commented Jun 23, 2017 at 12:22
  • 10
    \$\begingroup\$ Have you tried letting players only respawn in frontier territories (territories that border on enemy territory)? That means for the attackers: Less time traversing own territory (= more action), attacker density becomes thicker (counterbalances defender grouping), but leaves their deeper territories more vulnerable in case a defender manages to sneak by. \$\endgroup\$
    – hoffmale
    Commented Jun 23, 2017 at 16:10
  • 1
    \$\begingroup\$ the tie part is the case with computer, but is it really with real player? I remember playing COD (or any other war game really) when you are confined to your spawning area and the other team generally has a mutch bigger advantage. They are in good spot and know generally from where their enemy will come \$\endgroup\$
    – Rémi
    Commented Jun 23, 2017 at 16:45
  • 5
    \$\begingroup\$ It sounds like you are predicting a problem based on the performance of an AI -- but from your description it simply sounds like the AI is bad. In particular, the AI isn't trying to fight in groups like it should, but what's happening is that the respawn condition forces that to happen by accident. So, you're in a perpetual situation where whichever AI team is losing is playing much better than the AI team that is winning, and thus the battle goes nowhere. \$\endgroup\$
    – user64554
    Commented Jun 24, 2017 at 10:45
  • 1
    \$\begingroup\$ Take a look at Planetside 2. They basically use multiple maps (continents) and allow the continents to be locked for extra bonuses. Locked continents can't be spawned on, moving the fight to a different map. \$\endgroup\$
    – Mast
    Commented Jun 26, 2017 at 10:15

11 Answers 11

21
\$\begingroup\$

The winning condition is to capture all the towers and control the entire map.

  • Add respawn timer per tower.

Each tower has its own respawn timer so the players will only have to wait in 2 situations:

  1. A teammate just respawned in the strategical point I want to respawn. This will give the option to more impatient players to do it in another tower and the more patient ones to wait and implement the desired strategy.
  2. The team that has smaller territory don't have enough towers to respawn all members. This should help to finish the battle. Also, the first time a player notices that he needs to wait, he will play with more caution.

How this works remains completly on the balance of the timers and how many tiles a team need to lose before timers matter. So this first "wait to respawn" should translate into "ok, or we turn that now or we are doomed"

  • "players in their own territory get a health regen, meaning the defenders in their own territory have even more of an advantage."

Each tower acts as a "healing beacon" and the healing splits between players. The more players in one area the less they individually heal.

Edit: Additionally, consider adding a "wipe-out respawn" if all players in a team die they all have to wait n-seconds. That is intended to give a cornered team a chance to make a "comeback", regain territory and turn the match around.

\$\endgroup\$
2
  • \$\begingroup\$ "Need to loose" should be "need to lose". \$\endgroup\$
    – Kat
    Commented Jun 24, 2017 at 18:45
  • \$\begingroup\$ Thank you very much for this answer. After coming home from holiday I tried implementing the method of respawning in waves which somebody else suggested (as it was easier to implement), however I definitely believe that it adds a lot of unnecessary waiting around. Whereas, your idea only introduces waiting around when the team is close to losing anyway. I'll definitely be trying this out soon. Of course I need to make the tiger tanks auto-choose a tower too. \$\endgroup\$
    – joehot200
    Commented Jun 26, 2017 at 21:46
11
\$\begingroup\$
  • Savage 2 and Warcraft worked around this problem by having a global ~60s timer: every 60s all dead players spawn. This causes players to naturally create "waves", which reduces the issues caused by defenders spawning at the battle site closer than the attackers.

  • Battlefield 2 worked around this issue by allowing you the option of your spawnpoints, allowing attackers to spawn in combat areas, instead of the dead area.

  • One game I don't recall provided a minigame while awaiting spawn timers that gave your teammates tiny bonuses.

  • Several games allow you to watch teammates while waiting to spawn which provides useful intel about cross-map movements.

  • DotA type games give a team bonuses as they approach the enemy base (such as stronger or siege creeps), so that by the time you get to that last point, you have enough of a bonus to landslide. You have to be careful that the bonuses near the middle are small or zero to avoid the early game landslide you mentioned, but once a team is clearly winning, this is an excellent way to go to end the game, and not draw out a losing match. I saw an interview with Blizzard where they said this was a key piece of why Heroes of the Storm maps work the ways that they do, and why siege creeps are so strong, but I can't find it now.

  • DotA type games also have mercenaries and boss creeps for the same reason: A team that's way ahead can afford the time to take these side goals, which give a large enough bonus that they can take the final goals and end the game.

  • Heroes of the Storm maps offer side goals which attack the enemy base directly, allowing a team that's winning to remotely end the game.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you for your answer. I have come home from holiday now. Some sort of mercenary or boss isn't really practical to my game, nor do I think side goals would be viable. A minigame is unnecessary work. And allowing an option of a spawn point may make a part of the map irrelevant. I liked the 60s timer idea and tried it, however on it's own it definitely doesn't solve the problem. It also adds a lot of boring waiting around, which isn't a good thing. However, your answer is definitely helpful. \$\endgroup\$
    – joehot200
    Commented Jun 26, 2017 at 21:40
8
\$\begingroup\$

A quite typical solution for "control" maps is this: game win condition is achieving a certain amount of points, with points being received regularly based on the number of towers/amount of territory under control. Optionally, if you make the relation between towers controlled and points gained non-linear, you can tweak the unpredictability of the end result as you see fit.

If a simple "point" game is too boring for you, you can make those points a sort of a currency, rather than the win condition. Make it so you can activate a powerful (but temporary and one-shot) power-up or ability for a certain amount of points. Then, on the one hand, the weaker side still generally enjoys numerical superiority to make it easier to push back and return in the game. On the other hand, the winning team can get the momentum required to finish off tightly respawning enemies.

\$\endgroup\$
2
  • 1
    \$\begingroup\$ Giving more resources to the side which is already winning often leads to a really unstable game balance where the winning team keeps winning and the losing team keeps losing. Make sure the effect of resource is either so minor that it hardly matters or so major that it immediately ends the game. \$\endgroup\$
    – Philipp
    Commented Jun 26, 2017 at 6:29
  • \$\begingroup\$ This answer has definitely been very useful to me. I'm currently trying out a variation of what you said - The team which controls more towers gets points. And, if those points reach above a certain value, then one team starts getting a health bonus to allow them to end the game much easier. This allows a "landslide victory", but only after a hard battle has been played and towers held for a long time. \$\endgroup\$
    – joehot200
    Commented Jun 26, 2017 at 21:43
6
\$\begingroup\$

Victory points.

Controlling territory, killing turrets, killing players, etc. Some or all of these could generate differing numbers of victory points. Collect enough victory points, and you win.

Additionally, or alternately you could make it so there is a no man's land between the guaranteed spawning locations and the spawning locations you earn by securing objectives.

\$\endgroup\$
1
  • \$\begingroup\$ WoW's Alterac Valley was "solved" in this way after devistating 30 hour battles only ended when enough players fell asleep. \$\endgroup\$
    – corsiKa
    Commented Jun 24, 2017 at 18:31
3
\$\begingroup\$

The game becomes a drag when it runs long, so impose a time limit:

  • Use a hard time limit. Frequently I see games offer this as a setting for the round/battle regardless of the type of round (Capture the Flag, Free for all, etc) and usually with a number of reasonable options, but defaulting to No Time Limit.
  • See @Alice's answer for a variation where controlling towers earns points and the first to a set number of points wins. I've seen the number of points be a setting for Control types of rounds, but you could also just arbitrate a reasonable number.
\$\endgroup\$
3
\$\begingroup\$

I offer Team Fortress 2's design choice for the analogous mode, capture point; there are 5 points on a symmetrical map, with 1 in the middle. Each team starts controlling the two closer to their base, with the middle one neutral. You capture points by standing on them without enemies standing there. The points are in a line, it's a tug-of-war kind of deal, and you can only capture the enemy's point closest to you.

Your spawn points move up as you capture points to ensure the team with advantage can actually reach the fight in a timely manner, but the losing team always spawns closer to the main "conflict zone". The final capture point is right next to their spawn. How is this gamestate resolved?

Points that are further from the center get captured faster. The final point is captured in 2 or so seconds, compared to the 30 it takes to get the middle one. Consider something similar! Towers have more health if you control more of the map, meaning that having more map control makes defending a little easier, and speeding up the game once one team has obviously been put in a losing spot.

\$\endgroup\$
2
\$\begingroup\$

In the spirit in keeping constant action as one of the games design goals, I would consider adding secondary objectives. These objectives would not technically be necessary to win the game, however they would provide a large bonus that would greatly aid the attacking team and allow them to finish the game.

For example, certain towers (either deep in the defensive territory or in a sort of "side-quest" area) could provide debuffs to the respawns of the defending team. Some ideas I was toying with were:

  • Slowing field on spawn points
  • Smokescreen to block vision
  • Cannot fire weapon for x number of seconds (I particularly like this one because it allows the defense to make proactive movements while they are disabled)

You could also have a neutral "mini-boss" in the middle of the map that gives a huge combat bonus. Depending on the difficulty of the boss, fighting him would risk allowing the other team to come back, kill your team, and steal the objective. This sort of objective would create the play-style of pushing deep enough into the enemy base to give you the time and space to retreat to the boss and take him safely.

\$\endgroup\$
2
\$\begingroup\$

You could designate the top left/bottom right corners as spawn zones, with no towers. That way, tanks that re-spawn need to travel towards towers to defend, giving the other team an opportunity to get some shots in on the tower before the defenders reach them.

This prevents any imbalance-ing that your suggestions might have. It also makes it so that the defenders don't crowd around a single objective to fortify, they have to split up. That gives the attackers the chance to form strategy, i.e. if each team has 10 tanks the defenders will need to split up 5-5 on the last two remaining sectors, so the attacking team can see this and split 7-3 on some. When that tower is destroyed, the defenders don't instantly spawn on the other objective to defend it, the attackers can make a push there while the defenders are en-route to defend.

That system is more like Battlefield 1's multiplayer mode Rush, which is probably a good indication of it being a good system; if a major publisher uses it in a game that is very critically acclaimed, chances are it's at least usable. The only difference is in Rush there is 1 attacking team and 1 defending team, and the attackers have a limited number of lives to destroy all objectives. That provides a time limit without actually having a temporal time limit, which I usually don't like, but may be necessary to stop a game.

You could award points only for team kills (or devise other methods not related to tower destruction, like killing the last enemy inside of a square to 'clear the zone' or something), to give the game a multi-faceted approach for winning. Players will have to devise strategy. It won't make players too cautious, either, because they'll need points to win if they don't capture all the objectives!

\$\endgroup\$
2
\$\begingroup\$

UT2004 onslaught mode tackled this in the following ways:

  • players can choose spawn points => attackers don't have to walk as far and can reenter the action more quickly
  • towers spawn vehicles => vehicles are faster => attackers can reenter the action more quickly
  • ... at a fixed rate => the more towers, the more vehicles (which are stronger than infantry)
  • towers spawn some items at fixed rate => the more towers the better your weapons
  • some long ranged weapons => attackers don't necessarily have to walk far to fight
  • no respawn at towers under attack => attackers can lock down a tower for taking it
  • after 20 minutes game time, towers would start to loose health for every tower under enemy control
\$\endgroup\$
2
\$\begingroup\$

Have you played Star Wars Battlefront 1 or 2? Those have endless respawning (sort of), and taking of territory, but they have several things your game doesn't. You could try any or all of these.

1) A total troop limit. Each team has, for example, 500 total soldiers, and each spawn decreases that number by one. So, eventually one team will run out of people, but the human players won't need to wait around if they run out of lives, because they can draw from the shared pool of soldiers.

2) Each "territory" allows the owning troops to spawn there. So, in your example, as red takes more towers, red tanks can spawn at those towers, keeping red tanks closer to the front lines.

\$\endgroup\$
1
\$\begingroup\$

You could allow players on the winning side to respawn in regions close to the remaining towers to be captured. This would allow the winning side to also enjoy the benefit of having all of its players spawn in close to the action and would eliminate the frustration of having to trek across the map, unable to do anything important, between respawns.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .