Visibility systems in RTS

Started by
21 comments, last by Sandman 21 years, 3 months ago
I remember having a conversation on this topic a while ago, probably involving Dauntless, Diodor and Sandman. Considering a modern timeframe, we came to the concensus that it wasn''t merely a question of the means and mechanics of information acquisition, but also of the propagation of said information. Say you, the gamer, are a general bunkered well away from the front lines (because your primary contribution is strategic rather than tactical). Scouts, satellites and reports are your ears and eyes on the battlefield, but the veracity of their reports is affected by the time interval between the data acquisition and its arrival at your desk. In other words, even though a satellite image may show a convoy of enemy supplies at a certain position at 0600h, you can only surmise an ever-widening radius for their current location based on the current time and their maximum speed.

I think this is one much underrepresented aspect of information warfare - the degradation of data over time. In medieval terms, if it takes a rider a whole day''s journey to get to you from the front lines of battle and he reports that the southern flank is weakening, do you immediately order reinforcements given that it will take the slower cavalry and footsoldiers perhaps two days to reach the front, that the front may have been lost or sudden courage, cunning or external factors may have swung the battle in your favor... A game that incorporates this level of strategic reasoning will really draw the gamer into the experience.
Advertisement
Oluseyi, even though information is generally acquired immediately, there is a certain time delay before action can be taken based on that information. This delay can be produce the data degradation effect to some extent without further changes to gameplay. Taking a peak at the enemy commander unit in Total Annihilation and seeing it unprotected is an example. You must break off your scouting unit from the commander fast enough that the enemy doesn''t find out about your discovery and rushes his commander to safety, and make an attack based on (degrading) information.

It''s easy to imagine more complicated visibility systems.
- Scanners that can offer only partial information: in VGA Planets distant space-ships only offered a mass reading. Because the mass could be modified a lot by fuel and cargo identifying a ship type was quite difficult but it could be done. Likewise, one can make an educated guess on what unit types give the radar signals in Total Annihilation, based on their patterns and speed.
- Deceptions: fake units (used a lot in WWII).
- Silent runs: turning off the units search lights in Outpost (less viewing range but also less visibility); deep sea run orders for submarines (no contact with headquarters until the submarine surfaces again, but almost undetectable)
- Active vs Passive scanning. The sonar uses active scanning: it reveals the position of the scanning ship, but it can scan a lot better than passive scanners (microphones), and it can detect even stopped submarines.

The question is what kind of game rules can make the extra trouble with scouting worthwhile. What can be known in a game that can have a significant, non-immediate and non-local effect on the game? I believe the best answer to this questions is knowing an enemies thoughts and plans. Problem is, not many RTS''s have much planning ahead, or the plans are pretty obvious and unsophisticated. That''s why visibility systems, espionage, &c. cannot really evolve too much.
Diodor:

Agreed, scouting is a very high maintenance task in most RTS games. It''s an uninteresting task, yet essential if you want to be any good at the game.

I don''t want to remove scouting altogether, but I''d like to make it more interesting. Certain terrain locations offering good lines of sight become tactically important - similarly valleys and forests which offer cover can also be valuable. Large units are harder to hide, and so tank swarms can be spotted from miles away, whereas a small group of infantry units could get very close without being spotted.

Oluseyi:

I can imagine a strategy game based on such a system could be incredibly interesting, even with only simple game rules. However, it does seem suited more a slow paced (or turn based) game modelling an entire war, rather than individual battles.

I''d also like to consider the implications of different visibility systems on technical and interface aspects.

For example:

Line of Sight Only: Implementing a true line of sight system with unlimited vision range is an algorithmic nightmare. Something like O(N2M2) - correct me if I''m wrong - where N is the number of units in the game, and M is the size of the terrain. And that is just to determine basic visibility for units. If you want to be able to show the player which areas are visible and which areas are not (ie by making the non-visible terrain darker) it gets worse.

Limited Visibility: For implementing this method, how do you display to the player which parts of the terrain are visible and which parts are not? Does he even need to know?
quote:Original post by Diodor
The question is what kind of game rules can make the extra trouble with scouting worthwhile. What can be known in a game that can have a significant, non-immediate and non-local effect on the game? I believe the best answer to this questions is knowing an enemies thoughts and plans


Good question. It has occurred to me that in a game where the weapons are very deadly, playing the hide and seek game is more important - the best way to avoid getting your units killed is to not let your opponent see them. Conversely, once you''ve spotted your opponent''s forces, they''re as good as dead.




quote:
Original post by Sandman

Agreed, scouting is a very high maintenance task in most RTS games. It''s an uninteresting task, yet essential if you want to be any good at the game.

I don''t want to remove scouting altogether, but I''d like to make it more interesting. Certain terrain locations offering good lines of sight become tactically important - similarly valleys and forests which offer cover can also be valuable. Large units are harder to hide, and so tank swarms can be spotted from miles away, whereas a small group of infantry units could get very close without being spotted.


I wouldn''t want scouting removed, just automated and cheapened. I''m thinking of group orders like "search area", "return to base", "resume search", with all the details the likes of tailing an enemy without engaging handled by AI (if I have the choice of search strategy so much the better).


quote:
Line of Sight Only: Implementing a true line of sight system with unlimited vision range is an algorithmic nightmare. Something like O(N2M2) - correct me if I''m wrong - where N is the number of units in the game, and M is the size of the terrain. And that is just to determine basic visibility for units. If you want to be able to show the player which areas are visible and which areas are not (ie by making the non-visible terrain darker) it gets worse.


Well, you could probably cheat your way to building such a system. Let''s take a tile based game with maps as large as 128x128 (largest maps in Warcraft 2 I think) You can precalculate the visibility for each game tile. There are 16K tiles. You can store the bit map for the visibility of a single tile as 16K bits, that is 2K bytes. The total precalculated data is 2K * 16K = 32 MB. To calculate the visibility of enemy units, you have O(N*N) complexity (for each enemy unit check whether it''s tile is visible in the tile visibility map of each of your units). To calculate the entire map visibility, you have O(N*M*M) complexity (simply OR all the tile visibility maps of the units of one player).

Improvements such as RLE compressing of the visibility maps can improve the speed and memory requirements by at least a factor of 10 (this depends on how irregular the terrain is).

quote:
Good question. It has occurred to me that in a game where the weapons are very deadly, playing the hide and seek game is more important - the best way to avoid getting your units killed is to not let your opponent see them. Conversely, once you''ve spotted your opponent''s forces, they''re as good as dead.


This is what happens a lot in the end-game of Total Annihilation games. Massive air attacks against enemy counter-nuclear defenses, followed by a nuclear attack. Knowledge of the location of super-structures (nuclear or fusion energy plants, nuclear and counter-nuclear missiles, long range cannons) is very important.
quote:Original post by Diodor
To calculate the visibility of enemy units, you have O(N*N) complexity (for each enemy unit check whether it''s tile is visible in the tile visibility map of each of your units). To calculate the entire map visibility, you have O(N*M*M) complexity (simply OR all the tile visibility maps of the units of one player).


32mb seems rather large for a map file, and that is excluding the actual map geometry and textures.

In all other respects, I like this approach - if you do the map visibility first, you reduce the unit visibility to O(N), and you also get a free texture map to do the actual shading of the hidden terrain.

I''ll have to see if I can think of any neat ways of reducing the data requirements.

As I said, I imagine using Run Length Encoding can reduce that figure by a lot. Close to zero if the terrain is made of large features and the visibilty zone of a single tile is more or less regulated.
I think what's most important about a visibility system is how the information gets passed from the observing units to the actual player. In other words, the unit has to be able to see what's out there, but just as importantly, the unit must relay that information back to the player.

I think therefore there are two elements, sensory and communication. The sensory aspect I think should have two main parts...a sensory rating score for the observing unit, and a "silhouette" rating for units in terms of different spectrums of "observability" (for example, a physical silhouette is measured against the human eye, but a thermal silhouette is measured against IR sensors...etc.).

Let's say I send a scout company in advance of my main column in a n extended skirmish formation. Let's say this armored Cav Scout company is composed of both light recon vehicles and dismounted infantry units with some specialized sensor gear. What they will be able to see is dependant on on what is out there, the range to the target, and the sensor characteristics of the observing units. Actually, vehicles have a harder time spotting units unless they aren't buttoned up, in which case their height has a certain advantage. However, vehicles have a severe field of vision restriction which is partially mitigated by the turret (the driver can see where he's going, but he's at the same eye level as an infantryman) unless they are unbuttoned again. Now, let's say that about 200meters off in some light woods, there are some main battle tanks and some supporting infantry. The tanks should be spotted before the infantry are. Also, the scout infantry should be able to detect both units before the Scout Vehicles can.

So in a nutshell:
1) Field of awareness is important (this is where infantry and air units shine)
2) Observing units should have some sort of sensory score that affect how far they can sense, and how well they they do it
3) Target units should have some sort of signature score that affect how easy it is for a unit to spot it (the range threshold)

**Field of awareness should be something that is affected by unit formation and the orders of the unit. A unit in skirmish formation is essentially scouting the area, and also a unit that is order to move cautiously or do a "bounding overwatch" (where units advance one after the other by leapfrogging each other and maintaining their field of vision on one particular area per unit) will greatly affect their field of awareness


Now, how do you cover the terrain? I believe that if it's truly unknown territory, then the map should be blacked out. However, that's rarely the case, and in most WWII era or beyond games, there should at least be some aerial recon photos taken before hand, so I think terrain should be revealed.

Lastly, is passing the recon information gained to the player. It's always bothered me that the player has God-like communicative power with his troops. In real life, many many times units are cut-off from their superiors (at Market Garden, more than half of the Division's radios were faulty....and in Vietnam the jungle canopy was notorious for having bad receptions of radio traffic). So, even if your units know there's something out there, that doesn't mean you know there's something out there. In fact, I want that to be a playable element in my game. In fact, I've developed "bollix" teams....specialized EW teams that essentially scramble and jam all broadcase communications within a certain radius. Point to point links may or may not be affected, but PtP links on a battlefield are tenuous at best (why do you think during Gulf Storm the first targets that were taken out were the communications links?). I think Communications is highly highly underrated in strategy games, and they are a crucial factor in determining your strategy. Being able to relay information about troop movements and your own troops status is very important (if your units are cut-off, then they just disappear to the player...maybe they are alive, maybe they are dead...but it'dbe wise for the player to send some reinforcements just in case)

[edited by - dauntless on January 23, 2003 5:18:58 AM]
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley
As it is, scouting is pretty much useless. Sure, you need to find the enemy base, and explore the map, but after that?

It doesn''t exactly change your plans if your scouts report a large force heading towards you. All of your forces are generally stationed in the base anyway, unless they''re attacking the enemy, (In which case he probably won''t have time to attack you). Either that, or you rely on your static defenses to take out the enemy. So you don''t really need to know in advance if you''re being attacked.

If you attack, you basically just need to know where the enemy base is, and *maybe* send a quick scout to just check out approx. how strong the defenses are. You don''t need to know the actual position of units, or the precise type, because it simply doesn''t matter... Your army is on its way there, and if you see something, you shoot it.

In current games there''s really no reason for scouting, as no advanced tactics are possible. You can''t sneak around ambushing people, terrain doesnt really matter, units speed is just a matter of convenience, but doesnt affect the outcome of a fight.
Spoonster-
Scouting is useless only because games today don''t really accomodate it. You''re right that scouting is nice to find the base, though I think it is good to try to and know your enemy''s forces composition. The problem is that while you are manipulating your scouts to their best advantage, you are neglecting a lot of other things, and the enemy just comes along and pounds you into dust.

Command, Control, and Communication are the cornerstones of every military commanders thinking (mention C3 or C-cubed to a military officer, and I''ll almost guarantee you he''ll know what you mean.....and if he thinks it''s the older version of plastique, ummmm, make sure he''s really an officer ). And yet where do any of these three really fit in today''s RTS games? Command? I just have a bunch of hodge podge units with no need to organize large groups of units. Control? Why whould I have a semblance of combined arms warfare or integration of tactics? I click on something and give it the "special function" or tell it to do something blindingly obvious to do. Communication? What do you mean communicate....I should automatically know everything my units know, and when I tell them to do something, they do it. Besides, I just need to know one thing...."where they are" (apologies to Aliens fans )

See how totally unrealistic that is? And yet, that''s what games are. Some say, "realism is overrated as long as it is fun". While this is true to a degree....why are all RTS games couched in war terms? The simple fact is, war is fun as long as we don''t see its real horrors (Robert E. Lee said, "It is a good thing war is so terrible, otherwise we should grow too fond of it"). Players like the idea that they are controlling huge amounts of troops and they like the mental challenge of factoring all the elements of warfare to achieve victory. I think there are so many elements missing from strategy games that I no longer enjoy playing RTS games. In fact, I prefer playing old miniatures games to computer games, because to me there is much more cerebral thought to these old-school turn based games than RTS games have now.
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley

This topic is closed to new replies.

Advertisement