User:Bigjoe5/Tactical Interface

From FreeOrionWiki
Jump to: navigation, search

Combat in FreeOrion will take place over the entire system and involve all combat assets present in a system. In addition, the stealth and detection system will allow a player to lurk unnoticed in another player’s system, or watch as two other empires engage in combat in the same system. Based on these to aspects of combat, it is clear that it cannot be approached in the same way as combat in other space 4X games is approached.

Most 4X games feature combat involving only two sides, and if only stealthy units are present on one side, their presence, if not their identity, is made known to the other player before combat begins. Combat normally ends when only one side’s forces remain in the system. Obviously, this style of combat is not feasible in FreeOrion - any combat assets of a disinterested third party who happens to be present will always be present on the tactical map during combat, and traditional methods of initiating and terminating combat would unnecessarily reveal the presence of the stealthy third party.

A combat model must be created that allows interesting stealth-based tactics and strategies without giving any player any out-of-context clues that another empire’s ships are present in the system, and without causing undue inconvenience to the players by introducing arbitrary special rules about how and when combat begins and ends, and whose forces are revealed to whom. The following is such a combat model, and it unifies all combats - and in fact, all action that occurs in a system - under the same set of rules, which will allow the mechanics of initiation and termination of combat, and of stealth and detection to be understood more easily and intuitively by the player, while making available a greater variety of interesting strategic and tactical options.


System Action

It’s been generally assumed that only combat in which more than one empire has combat assets present in the system, and one or more empires wishes to engage in combat with another will occur on the tactical map, and that all the various potential system actions which can occur in combat will also be able to occur on turns in which there is no combat in a particular system, for example invading or bombarding a colony, dropping off a spy or detonating the star with a Nova Bomb would all take place as a result of special orders given on the galaxy map, and the ships in question would carry out their orders without actually having a defined location on the tactical map. Transiting a system would also be considered to be such an action, and the act of doing so uncontested would have to be made as similar as possible to actually transiting a system in combat on the tactical map, to avoid certain types of abuse that could occur if transiting a system took a different amount of time depending on whether or not it took place on the tactical map.

Shattering this assumption is one of the features of this combat model.

Rather than having only combats actually take place on the tactical map, and employing special rules to allow combat actions on the galaxy map when there is no combat, I am proposing that all action within a system take place on the tactical map. At all times, any ship which is present in a system has a defined location on the tactical map, and any action such as colonizing a planet, moving through a system or even simply holding position takes place between turns during the combat phase on the tactical map, with no fundamental distinction within the game mechanics between such actions and combat itself.

Multi-Player Auto-Resolution

Obviously, if every single system action had to be manually resolved, a multi-player game would take an obscene amount of time to complete. Obviously, there are some tasks that an AI can perform just as well as a human - holding position, for example, or colonizing a planet.

Combat Objectives

For the purposes of auto-resolution, there will need to be some way of setting goals for each system action defining exactly what goals the player wants the AI controlling his fleets to accomplish. In a game where combat is the only use for the tactical map, the only possible objectives are combat objectives. In a game where all action taken in a system occurs on the tactical map, these goals must be divided into Combat and Non-Combat Objectives.

Non-Combat Objectives are those which do not involve interaction with any enemy ships. An AI is assumed to be the equal of a human player with regards to accomplishing Non-Combat Objectives. In multi-player, to prevent massive wasting of time, a player cannot manually control a system action in which he has no Combat Objectives, though this restriction does not apply in single-player.

Combat Objectives are those which do involve interaction with enemy ships. Players in multi-player can choose to manually resolve system actions in which they have Combat Objectives, according to the rules agreed upon by the players at the beginning of the game. Objectives cannot be selected unless they are valid. If there are no enemy ships known to be present by the player’s empire, no Combat Objectives are valid, since all Combat Objectives involve interaction with enemy forces. Combat Objectives do not become valid due to stealthy forces in the system which the player cannot detect, and of which he does not have visibility through other means - only enemy ships known to be present can be objects of a Combat Objective.

Ending Combat

The idea of "ending combat" is obviously fundamentally different in a game where all system action, "combat" or not, takes place on the tactical map. In this case, there are two ways combat can be said to have "ended", and both are subjective - combat may end for one player in a system while one or more other players in the same system are still "in combat".

The first way that combat can be considered ‘over’ is that all Combat Objectives have terminated, either manually by the player, or automatically due to having been completed to the greatest possible degree - in other words, the selected combat objectives are no longer valid. If an enemy ship can no longer be detected at any distance on the tactical map, an objective to destroy it is no longer valid. If a particular building on a planet is destroyed by bombardment, an objective to bombard that particular building is no longer valid. If all of the player’s troop transports are destroyed, an objective to invade a planet is no longer valid. In other words, in order to be valid, a Combat Objective must have both a subject - something owned by the empire capable of carrying out the order - and an object - something upon which the desired action can be taken, the presence of which is known to the player. If either of these conditions becomes false, the Combat Objective is no longer valid, and if such an objective was in progress, it is considered completed to the greatest possible degree and terminated. If this happens to all Combat Objectives, combat, in one sense, is over for the player unless he issues more Combat Objectives.

The second sense in which combat can be considered to have ‘ended’ is when the player relinquishes control of his ships to the AI. This can be done at any time by selecting “Auto-resolve”, at which point the player will be removed from combat and the AI will continue controlling the system action, or in multiplayer, this will happen automatically when all Combat Objectives are complete, since in multiplayer, no one can manually control a system action in which he has no Combat Objectives. Therefore, in multiplayer, the first sense of combat ‘ending’ will always immediately result in the ‘end’ of combat in the second sense.

Re-entering Combat

There are special, very rare circumstances which justify restoring manual control of a combat/system action to the player even though he had previously committed control to the AI. The most notable instance of this is when a ship which was not previously known to be present in the system becomes visible to the player’s empire.

Note that this refers to galaxy map visibility, which will give the player knowledge of a ship’s presence in a system, even if the player does not have tactical visibility of the ship in question. A ship becoming visible on the tactical map is not a significant event which warrants a player automatically being given manual control of a combat which he had previously put under the control of an AI.

Stealth, Detection and Visibility

The difference between galaxy map visibility and tactical visibility is as follows:

If EnemyStealth > FriendlyDetection - (GalaxyMapDistance/10), the friendly empire has visibility of the enemy ship. On the tactical map, the enemy ship and the friendly detector are obviously in the same system, which means that the distance is a constant: 0. This means that a change in galaxy map visibility is always due to a change in the stealth of the ship itself, which is presumably due to some significant action such as a stealthy ship exiting a location which gave it a location-dependent stealth bonus, or firing weapons. In addition, a change in galaxy map visibility gives the player vital knowledge which he previously did not have - that is, the knowledge that an enemy ship is actually present in the system. This new knowledge is significant enough for the player to have to re-evaluate his decision to relinquish control of system action to the AI. In addition, this is quite a rare circumstance, because it is very difficult to increase stealth levels to the point where they are actually higher than the enemy’s detection level.

If EnemyStealth > FriendlyDetection - (TacticalMapDistance/100), the friendly empire is informed of the enemy ship’s precise location on the galaxy map. This means that a mere change in location on the tactical map is sufficient to give a player tactical visibility of an enemy ship. In addition, absolutely no information is gained about the friendly ship apart from its location on the tactical map - if an empire has tactical visibility of a ship, it must also have galaxy map visibility of that ship, which means that it already has knowledge of its presence in the system. The mere knowledge of an enemy ship’s location on the tactical map is not sufficient justification for having the player revisit his decision to auto-resolve the combat - he is not gaining any information that would be useful for making that decision which he did not have when he made it in the first place. This is also a much more common occurrence, since it is fairly easy to raise stealth levels to the point where they are within 20 of the enemy’s detection level (the minimum necessary to avoid being detected all the way across the tactical map).

Essentially, if a ship whose presence wasn’t even previously known to the player comes out of hiding and/or attacks the player’s fleets while a system action was being automatically resolved by the AI, this is sufficient justification for giving the player manual control of the combat from that point forward, so that he can re-evaluate his Combat and Non-Combat Objectives and whether or not he intends to use the auto-resolve option.

Defend Against Enemy Forces

The player cannot be given manual control of combat without a Combat Objective however, which means that in order to summon the player back into combat, a Combat Objective must be defined. This Combat Objective is "Defend Against Enemy Forces", and is valid whenever there are forces belonging to another empire present in the system. This Combat Objective is active by default, and will activate as soon as any new enemy forces are detected. Ships with this Combat Objective will defend themselves from any forces which engage them. The existence of this Combat Objective allows a player to be summoned back into a combat in which a new enemy appears, even if he previously did not have a Combat Objective.

Combat Manager

It’s a given that in multi-player, there will be a combat manager that gets players through their manual combats as efficiently as possible. Since a stealthy player may choose a combat objective in a system where the only other empire present cannot detect him, it is possible for a stealthy player to be "in combat", moving his ships and preparing to attack a fleet of ships belonging to an empire who is not actually "in combat". When the player gains visibility of the enemy fleet, he will be summoned in to take manual control of the combat. When this occurs, the combat manager will have made sure that the surprised player is not currently in another combat, but is available to take control of his ships, which will serve to make the transition that occurs when a player is summoned into combat perfectly seamless, so that there will be no out-of-context cue that the stealthy player has been detected.

An example of a situation in which this would be necessary:

Black has a fleet of stealthy ships hiding in an asteroid belt. Red’s fleet is moving through the system, and Black intends to intercept. Based on Black’s visibility of Red’s fleet, he believes that he will not be detected if he exits the asteroid belt and moves toward’s Red’s fleet. However, Red has a stealthy detector, or a detector with some kind of jammer that prevents its parts from being known, and this detector has a detection level which is higher than the stealth level of the Black fleet. Red is summoned immediately into the combat, which proceeds seamlessly without Black receiving an out-of-context cue that he has been detected by Red.

Free Manual Control

In multi-player, each player may be limited to manually controlling only a certain number of combats per turn, or to manually controlling combats for a certain amount of time per turn, depending on the settings upon which the players agreed at the start of the game. If such limitations are present, they do not apply to the situation in which a player is summoned back into combat - such situations are special, rare occurrences in which giving the player a free combat is warranted.

Single Player Auto-Resolution

Obviously, there are no restrictions on which system actions a player can control in single player mode. He can control every action if he desires, from holding position to transiting a system to colonizing a planet, but he is not compelled in any way to do so, nor will doing so give him an in-game advantage. As long as the actions are occurring on the tactical map however, the player should be free to oversee them, if for no other reason than to watch his ships fly majestically through the system and to see his colony ship descend gracefully into the atmosphere of his latest acquisition. There is one particular rule however, which applies equally to single player and multi-player:

Re-entering Combat

Like in multi-player, the single player will be summoned in to manually control his ships whenever he is able to detect a new ship in the system, or some undefined, equally extraordinary thing happens, and his ships will likewise automatically be set to "Defend Against Enemy Forces", even though there is no strict need for them to have a Combat Objective if he is to be present. Since setting ships to "Defend Against Enemy Forces" whenever a new ship is detected is an in-game rule with real in-game effects rather than being a mere combat management rule, there is absolutely no justification for having it be any different in single player than it is in multiplayer, and having ships set to "Defend Against Enemy Forces" by default is a good thing to have happen in single player too, regardless of how it’s done in multi-player.

Pre-Combat Ship Placement

The defender should be able to place his ships when he is being invaded. If all ships have a defined position on the tactical map however, this would essentially be the equivalent of allowing the defender to automatically teleport his ships to any point on the map when attacking ships approach. This is very bad if a stealthy player already in the system was just getting his ships in order for a sneak attack. To alleviate this problem, ships should not enter the tactical map at the beginning of the Battle Quantum in which they enter the system, but rather at the end (i.e. at the beginning of the following Battle Quantum). This way, with the defending ships gaining the highest possible visibility of the enemy fleet - based on the visibility calculation for a distance of 0 - at the beginning of the Battle Quantum in which the enemy fleet reaches the system, they will have an entire Battle Quantum to move into position - the same interface that is planned for pre-combat ship placement can still be used, but the ships will actually move from their current positions to the player-specified positions on the tactical map (this system action would be non-combat, and could be auto-resolved based on the regular rules for auto-resolution of system actions), and could potentially be intercepted by cloaked enemy forces en route.


  • All action that takes place within a system occurs on the tactical map, and can be either manually resolved by the player, or auto-resoved by the AI according to the player’s preset Tactical Objectives
  • Tactical Objectives are separated into Combat Objectives and Non-Combat Objectives
    • Combat Objectives require a valid target for the objective in question, which means an object owned by another empire must be present unless the player for some reason wants to destroy some of his own objects, should this be allowed
      • "Defend Against Enemy Forces" is one such directive, and it is activated by default when enemy forces are detected in a system
    • Non-Combat Objectives also require a valid target for the objective in question, but such a target does not need to be owned by anyone; it can be an empty planet, a starlane, or even a particular region of space.
    • In multi-player, players are forbidden from controlling combats in which they do not have Combat Objectives
  • There are certain circumstances in which a player who is not manually controlling combat will be summoned in to take manual control
    • Gaining galaxy map visibility of a ship is one such circumstance
    • In multi-player, the combat manager will ensure that the player is not in a different combat when such a situation occurs
    • The player gets free manual control for the remainder of the combat in which such an event occurs, regardless of the limitations on manual control of combat preset at the beginning of the game
      • If no manual control of combat is permitted, or tactical combat is disabled for a particular game, the player might still be able to set new Tactical Objectives based on the new situation, or his ships might simply defend themselves according to the "Defend Against Enemy Forces" directive
  • Ships enter a system's tactical map at the end of the Battle Quantum in which they reach it via starlane on the galaxy map, but they are considered to be at 0 distance from the system - for the purposes of visibility calculations - from the beginning of the Battle Quantum in which they enter the system.

The current plan is for system actions involving two or more players to operate under precisely the same set of rules. This proposal would extend this principal such that all system action involving one or more players will operate under precisely the same set of rules, thus simplifying the concept of combat immensely, and allowing stealth tactics which transpire in an interesting and intuitive manner.


This is the simplest possible combat model that is plausible for a game which is already committed to allowing combats with multiple players, any of whom may or may not be visible to any of the others. By unifying all system action under a single set of rules, the need for a complex set of special-case rules regarding stealth and detection and starting and ending combat is eliminated, and all the rules of system action can be perceived intuitively by the player.

Nothing about the fundamental nature of the game is changed; it is still a 4X space strategy game. It is still turn based, with orders given on the galaxy map during the main turn, and being carried out between turns. The only difference is that all orders which were given during the main turn which involve any action taken in a system will be carried out during the combat phase, on the tactical map.

This system, as I’ve said, eliminates the need for special-case rules. This of course, is in reference to special-case gameplay rules, not special-case combat management rules, which, being primarily internal, can be arbitrarily complex without causing any detriment to the player’s experience. As long as the rules of gameplay itself are simple, intuitive and straightforward, rules for combat management can and should be as complex as necessary to ensure that the player’s experience is optimized.

I know of no 4X space strategy game that has utilized such a combat model, and I am aware that it runs counter to many unquestioned assumptions about the nature of combat, but I also know of no 4X space strategy game that has ever had as much ambition or potential as FreeOrion has, and I recall that a lot of my unquestioned assumptions had already been shattered by this project long before I had even discovered it. This combat model is one that IMO, is worthy of FreeOrion’s trademark simplicity, originality and enjoyability.