FreeOrion

Forums for the FreeOrion project
It is currently Fri Dec 15, 2017 4:31 am

All times are UTC




Post new topic Reply to topic  [ 33 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
PostPosted: Tue Jun 27, 2017 7:30 pm 
Offline
Space Dragon
User avatar

Joined: Mon Apr 10, 2017 4:25 pm
Posts: 254
MatGB wrote:
Aside: not keen on complicated formula in the game, ever.
Same here. KISS.
I'd be happy with just a substraction and a division, if that can represent what it is being aimed for.
The thing is the formula should be the first thing to devise, since all the rest (scale of detection and stealth, turns to become detected if standing still in an enemy system, bonus given from each part/building, malus given by each weapon when fired, maybe also malus given by engines, etc.) will depend on that.

MatGB wrote:
Hull stealth rating plus part stealth rating plus/minus local/opposing effects is enough in all but exceptional cases.
The formula shall work in all cases.
Maybe it's time to think about all the possible cases and see if the simple sum of terms will be enough (probably it is).


em3 wrote:
I was thinking about this... and I'm not sure if we should show this at all.
Agree. I meant how the game will decide what sees what, how will be the internal mechanics (AKA equations).

dbenage-cx wrote:
Initial reaction is an object level meter for detection strength, not modifying the actual stealth of an object but the effective stealth wrt to the detecting empire for that case, prior to any detection check.
(again, I suspect this was discussed previously and rejected, so some less expensive alternative may need to be proposed)
Not sure if I understand you.

For what I gather, each ship should have its own base stealth meter and probably one "revelation" (how much detected; please pick a better word) meter for each enemy.
The base stealth meter would depend on the hull base stealth (H) and the local bonus/malus (bonuses: asteroid belt for asteroid hulls, bright star for solar hulls, presence of an allied sentient flagship...; maluses: presence of that part that I can't remember, maluses from having used its weapons and engines...). A given ship will have the same value for this regardless of which enemies are trying to detect it.
The "revelation" would depend on the time it's has been under detection range and how far from the detection source. This value will vary for each possible enemy. Maybe it doesn't need to be one for each ship but for each fleet (assuming that all ships in a fleet will have been the same time and at the same distance), but that is maybe too little performance improvement over having it ship-wise.


em3 wrote:
Actually, there would be one part with efficiency increased by effects contained in later techs, just as it is now with weapons.
Right, that was I was thinking. I misspoke.


Top
 Profile  
 
PostPosted: Tue Jun 27, 2017 8:12 pm 
Offline
Programmer

Joined: Mon Feb 29, 2016 8:37 pm
Posts: 204
MatGB wrote:
The big problem is that stealth is all or nothing
is the core problem. It would be more fun if stealth and detection worked like weapons and shields, where a level of tech is useful and then locally obsolete when faced with superior tech.


  • Stealth Numbers
    We should dispense with numbers entirely and go with a much more limited number of levels.

    No matter the range of numbers that we choose, there is incentive to create a tech/species with a tiny stealth/detection boost. It will need to be significant enough to pop it over the next threshold. Then that will suggest a tiny detection/stealth boost as a counter.

    With a limited number of levels, the choices in game and for content creators will be significant.

  • Refinement :)
  • Dwell time :) :)
    I think this idea could be a lot of fun.

    Perhaps, 3 turns in the same location as a target grants 1 additional level of detection and 10 turns grants 2 additional levels.

    This could mean that even the ultimate (non-SuperTester) detection tech would still need time to overcome the ultimate stealth tech. This would make stealth relevant right into the end game.

    It makes persistent scouts and killing those scouts valuable.

    It will require some GUI and AI feedback so that players can see if their scout is at its minimum/intermediate/maximum detection level.

    It will play well with the AI's new penchant for hunting down scouts.
  • Decoupling detection range and strength
    The techs for range and strength should be split up.

    I also propose coupling the dwell time mechanic with a progressive range increase as follows. When a ship arrives in a system it starts at its smallest range and lowest detection strength. After the intermediate dwell time it increases to its intermediate range. In the distance between its minimum range and its intermediate range it only receives its minimum detection strength. And finally after the maximum dwell time it hits its maximum range and will have three rings of detection strength from an outer ring of its minimum detection strength to its inner ring at its maximum detection strength.

  • Planetary stealth
    I like the idea of stealthy planets, but we may need more compelling fluff explanations for how planets are hidden. I've included some new blurbs below, in hopes that it might inspire.

    Planets are not easy to find. In real life, until this decade humans have not been able to detect any planets outside of our solar system. In 2014 in "Nature", it was argued that there is a massive, 10 Earth mass trans-Neptunian planet in our solar system, that we are currently unable to detect.

    It we took our current submarine technology 200 years in the past, we could create an undetectable outpost, because no one had sonar/radar.

Example table of 13 limited levels
Code:
              Stealth Level    1    2    3    4    5    6    7    8    9   10   11   12   13

Detection number of turns.         
Default                        0    3   10    -    -    -    -    -    -    -    -    -    -
Active Radar                   0    0    0    3   10    -    -    -    -    -    -    -    -   
Neutron Scanner                0    0    0    0    0    3   10    -    -    -    -    -    -
Sensors                        0    0    0    0    0    0    0    3   10    -    -    -    -
Omni-scanner                   0    0    0    0    0    0    0    0    0    3   10    -    -
Super-Testers                  0    0    0    0    0    0    0    0    0    0    0    0    0
Each detection tech starts by detecting in zero turns what the previous tech could only detect in 10 turns, so it is a big desirable improvement.

Each detection tech can have 3 levels of refinement, the third one being better than the introductory level of the next better detection tech. This is the same balance point as ship weapons, where upgrading the current tech is cheap and adequate up to a point.

Stealth tech
EM Dampening +3 levels,
Radiation Absorbing +5 levels,
Dimensional Cloaking +7 levels

Cloud Cover +3 levels,
Ash Clouds +5 levels,
Dimensional Cloak +7 levels,
Phasing Cloak +9 levels

ship hull stealth bonus up to +5 levels
species bonus up to +5 levels

Planetary stealth blurbs
Protoplanetary mass/Tidally disrupted mass planetary cloaking
By capturing asteroid belt material and forming billions of controlled orbits a planet is hidden within a shell appearing to be an un-coalesced protoplanetary mass.

Buckyball Planetary stealth
A massive active computronic fullerene captures and re-emits the temporal phase matched signature of space surrounding a planet, rendering it undetectable.

Dispersive gravitational lens planetary cloaking.
Advances in artificial gravitational lensing allow a planet's gravitational signature to be translocated to within the body the system star. This renders the planet undetectable.

Dark matter emulation planetary cloaking
This planetary cloak converts the electromagnetic and gravitational signature of a planet into a system wide undetectable increase in the background dark matter signature.

Dimensional folding planetary cloaking.
Most species only require 4 dimensions in order to live. This technology folds the four large dimensions of a planet into other spatial dimensions, leaving only a tea cup shaped manifold in normal space.


Top
 Profile  
 
PostPosted: Tue Jun 27, 2017 11:54 pm 
Offline
Programmer

Joined: Sun Feb 14, 2016 12:08 am
Posts: 359
Oberlus wrote:
Not sure if I understand you.

Given the current layot:
  • All universe objects have a stealth meter
  • An object may have a detection meter (e.g. ship) -> applies as detection range
  • An empire has a detection meter -> applies as detection strength
Roughly, as I understand it:
Detection range of owned objects is then compiled into a single detection area for the empire.
An object is detected if it is within the empire detection area and the empire detection meter meets or exceeds the objects current stealth meter.
  • Enemy ship A (current stealth 20)
  • Within the empires detection area
  • Empires detection strength is 30
Enemy ship is detected by the empire.

The thought was to allow a new meter to be added to an object for detection strength (with adjustments for bonuses/malus').
This meter would be an adjusted value from the empire detection meter.
A target object would then be detected if it was within a source objects detection range and that sources detection meter met or exceeded the targets current stealth meter.
  • Enemy ship A (current stealth 20)
  • Owned ship X (current detection strength 10)
  • Owned ship Y (current detection strength 30)
Ship A is not detected by ship X, but will be if within range of ship Y.

@LGM-Doyle Did you envision a different approach in your proposal?
Still mulling it over, but favoring at least the idea of reducing stealth/detection from values to levels.

_________________
Any content posted should be considered licensed GNU GPL 2.0 and/or CC-BY-SA 3.0 as appropriate.


Top
 Profile  
 
PostPosted: Wed Jun 28, 2017 11:54 am 
Offline
Programmer

Joined: Mon Feb 29, 2016 8:37 pm
Posts: 204
@dbenage-cx the only difference that I see is that I would remove the empire detection strength as the base for ship parts. Detection parts work the same as weapon parts, their strength is from the part ± any refinement and species, system etc. bonus/malus.

The colony and outpost base is the empire detection strength.


Top
 Profile  
 
PostPosted: Wed Jun 28, 2017 12:37 pm 
Offline
Vacuum Dragon
User avatar

Joined: Sun Sep 25, 2011 2:51 pm
Posts: 500
LGM-Doyle wrote:
@dbenage-cx the only difference that I see is that I would remove the empire detection strength as the base for ship parts. Detection parts work the same as weapon parts, their strength is from the part ± any refinement and species, system etc. bonus/malus.

The colony and outpost base is the empire detection strength.

That would require including at least one detection part in most designs, or building "eye" ships for most fleets. Maybe hulls should also have some detection strength (empire-derived?).

_________________
[...] for Man has earned his right to hold this planet against all comers, by virtue of occasionally producing someone totally batshit insane. - Randall Munroe, title text to xkcd #556


Top
 Profile  
 
PostPosted: Thu Jun 29, 2017 11:24 am 
Offline
Programming, Design, Admin
User avatar

Joined: Wed Oct 08, 2003 1:33 am
Posts: 12041
Location: Munich
LGM-Doyle wrote:
We should dispense with numbers entirely and go with a much more limited number of levels.
I don't really see much of a distinction between your levels and just having stealth numbers from 0 to 130 or so. If you want a distinct system with discrete levels, you'd probably have to limit it to 4 or 5 levels. After that, it's just a meter with a weird display convention.
Quote:
Perhaps, 3 turns in the same location as a target grants 1 additional level of detection and 10 turns grants 2 additional levels.
[...]
It will require some GUI and AI feedback so that players can see if their scout is at its minimum/intermediate/maximum detection level.

Indeed; how do you suggest displaying where an empire has what detection level? A major benefit of the current system is that there is a detection range, and anything in it is detected at the empire's current level, which is very simple to display.
Quote:
The techs for range and strength should be split up.
No argument there.
Quote:
When a ship arrives in a system it starts at its smallest range and lowest detection strength. After the intermediate dwell time it increases to its intermediate range. In the distance between its minimum range and its intermediate range it only receives its minimum detection strength. And finally after the maximum dwell time it hits its maximum range and will have three rings of detection strength from an outer ring of its minimum detection strength to its inner ring at its maximum detection strength.
That sounds too complicated to me.

Also, if I recall correctly, part of the motivation for the current design was that it's annoying and micromanagy to have to move scouts through every / many systems after each detection tech upgrade in order to re-scan them.


Top
 Profile  
 
PostPosted: Thu Jun 29, 2017 6:02 pm 
Offline
Programmer

Joined: Mon Feb 29, 2016 8:37 pm
Posts: 204
em3 wrote:
That would require including at least one detection part in most designs
Geoff the Medio wrote:
it's annoying and micromanagy to have to move scouts through every / many systems after each detection tech upgrade
Colonies still have an intrinsic detector with a strength and range that increases automatically as the empire researches new tech.

Within colony scanning range/"borders" there is no need to manually re-scan when technology is upgraded.

Outside of empire boundaries "eye" ships need to re-scout and deal with enemy stealth. That is unchanged from how things are now. Currently, increasing detection strength does not automatically rescan areas outside of the current range that have previously been scanned.

em3 wrote:
hulls should also have some detection strength
Hulls already have varying default detection strength and some like the sentient hull boost ship's detection in the same fleet. That should stay the same.

Geoff the Medio wrote:
If you want a distinct system with discrete levels, you'd probably have to limit it to 4 or 5 levels.
I agree. I expanded the number of levels to accommodate both dwell time and refinement in the detectors, which resulted in too many levels. Removing either/both of those would reduce the number of levels.

This issues might also be solved with better balance so that all stealth/detection techs/species effects are significant choices/steps.

Geoff the Medio wrote:
A major benefit of the current system is that there is a detection range, and anything in it is detected at the empire's current level,
Except for things like the interstellar light house, distortion modulator, etc that locally reduce all other empire's stealth. This effectively makes the local empire detection strength of all empires different than their global detection strength. The current GUI does not convey this information. It provides an effective detection bonus to empires not using the tech.

Geoff the Medio wrote:
how do you suggest displaying where an empire has what detection level?
The GUI should provide answers to three questions:
  1. Can player empire A detect foreign object B?
  2. What is player empire A's detection strength or conversely what stealth can player empire A detect at some location?
  3. What stealth can foreign empire C detect at some location?

The current GUI only displays detection range. The global empire detection strength is not the same as the local effective detection strength. Various technologies can locally modify object's stealth, which is effectively the same as modifying the detection strength for all empires, not just the one with the tech.
  1. Can player empire A detect foreign object B? This already works.
  2. What is player empire A's detection strength or conversely what stealth can player empire A detect at some location? This does not work with the current GUI. There is no indication that some techs locally decrease/increase stealth.
  3. What stealth can foreign empire C detect at some location? This information is not conveyed by the current GUI.

I'd propose three independent changes to the GUI to improve the situation.
  1. Instead of displaying a uniform halo showing only detection range, use a progressively lighter halo to also show detection strength. With a limited number of detection levels, it would show clear bands. It might work for a smooth gradient of detection levels. Dynamic changes in detection range and strength are obvious. When a scout arrives or a colony is colonized a range/strength ring appears and grows and darkens on turns 3 and 10.
  2. When a foreign fleet or colony is selected show the galaxy from their empire's perspective. This answers question 3., because it only shows universe objects that player empire A knows that the foreign empire C can detect. I implemented something similar for overlapping stealthy supply and I found it quick and intuitive. Click on a foreign object C to see if its foreign empire can detect some other object.
  3. Add a hover tool that shows for each empire with positive detection strength the stealth it can detect at some location. This covers the cases where there is no test object, for example when designing a ship to sneak past a particular opponent.

Geoff the Medio wrote:
That sounds too complicated to me.
The dwell time or dynamic interaction of detection and stealth preserves stealth as a strategy into the end game. Without a dynamic interaction the highest detection strength must either be greater or less than the highest stealth. And consequently in the endgame stealth would be either useless or unbeatable.

This does not depend on the range also being coupled to the detection strength change. Decoupling the range, means that it changes the detection strength in the entire range circle.


Top
 Profile  
 
PostPosted: Thu Jun 29, 2017 6:34 pm 
Offline
Space Dragon
User avatar

Joined: Mon Apr 10, 2017 4:25 pm
Posts: 254
LGM-Doyle wrote:
I expanded the number of levels to accommodate both dwell time and refinement in the detectors, which resulted in too many levels. Removing either/both of those would reduce the number of levels.
Or (better IMO) allowing some overlapping and nerfing last stealth level. Something like this:
Code:
              Stealth Level    0    1    2    3    4    5

Detection number of turns.         
Default                        1    3   10    -    -    -
Active Radar                   0    1    3   10    -    -
Neutron Scanner                0    0    1    3   10    -
Sensors                        0    0    0    1    3   10
Omni-scanner                   0    0    0    0    1    3
Those '1' I added mean you can stop in a system you just explored and go away next turn (i.e. keep going) before getting detected.

Something I don't like about all this is that it doesn't account for fleet size.
I don't think a single tiny stealth scout should be as easy to detect as a huge fleet of thillions of tones of metal, no matter how much stealth material you put on it.
I believe there should be a KISS way to represent that, but I have no time nor neurons right now to make a sound proposal.


Top
 Profile  
 
PostPosted: Thu Jun 29, 2017 10:32 pm 
Offline
Space Squid

Joined: Tue May 16, 2017 3:42 am
Posts: 58
Oberlus wrote:
I don't think a single tiny stealth scout should be as easy to detect as a huge fleet of thillions of tones of metal, no matter how much stealth material you put on it.
I believe there should be a KISS way to represent that, but I have no time nor neurons right now to make a sound proposal.

Yet, cosmologists believe the (by far) heavier part of the universe is made out of elusive dark matter. If we can make armor out of neutronium (which is a rather weird idea, when you know what neutronium is really supposed to be), why couldn't we use dark matter for stealth-giving ship parts? :lol:


Top
 Profile  
 
PostPosted: Mon Jul 03, 2017 12:16 am 
Offline
AI Lead, Programmer
User avatar

Joined: Sat Sep 22, 2012 6:25 pm
Posts: 4390
LGM-Doyle wrote:
Geoff the Medio wrote:
A major benefit of the current system is that there is a detection range, and anything in it is detected at the empire's current level,
Except for things like the interstellar light house, distortion modulator, etc that locally reduce all other empire's stealth. This effectively makes the local empire detection strength of all empires different than their global detection strength. The current GUI does not convey this information. It provides an effective detection bonus to empires not using the tech....
The current GUI only displays detection range. The global empire detection strength is not the same as the local effective detection strength. Various technologies can locally modify object's stealth, which is effectively the same as modifying the detection strength for all empires, not just the one with the tech.

I think this argument about decreasing objects' stealth being effectively an undisplayed boost to all empires' detection levels is an unhelpful argument. You are certainly free to argue that we could have a better display by doing away with stealth decrease effects and then going with your scaled detection strength display, but just because a stealth decrease effect could be considered like a detection increase effect does not mean that it necessarily should be so considered and displayed. So to argue there that there is a problem if it is not currently displayed in that fashion seems like an imaginary/false problem. They are two alternative paradigms, and you can't fairly critique one for simply not being the other.

Stealth decreasing effects generally are displayed by the current UI in at least some fashion, though I could definitely see some benefit from them being displayed better. (The current manner of display including things like stealth meter tooltip, stealthy planet tooltips, visibility of a lighthouse building in the system, etc). Right now and in recent past, the only stealth decreasing effects I can think of either applied only within a given system or else applied within the boundaries of a (generally visible) field; this makes it easy to ascertain the location extent of the effect, and I think that at least by convention we should continue to so restrict such effects. (I also think that the expanse of a field should be more clear, say by delineating its outline when mouse-hovering over it, as well as giving a tooltip about effects applied, it can be hard to determine the actual expanse of some fields.) For such effects in systems, their existence could easily be made more clear than now by some modifier to the system name in the MapWnd star display (perhaps wavy lines surrounding it) and then, if we wanted, providing more detailed info in a tooltip for either that name display or the SidePanel system name display.

LGM-Doyle wrote:
I'd propose three independent changes to the GUI to improve the situation.
  1. Instead of displaying a uniform halo showing only detection range, use a progressively lighter halo to also show detection strength. With a limited number of detection levels, it would show clear bands. It might work for a smooth gradient of detection levels....
  2. When a foreign fleet or colony is selected show the galaxy from their empire's perspective. ...
  3. Add a hover tool that shows for each empire with positive detection strength the stealth it can detect at some location. This covers the cases where there is no test object, for example when designing a ship to sneak past a particular opponent.

I first need to question if this is truly *only* a change to the GUI, as opposed to a paradigm change in which we do away with any location-specific stealth decrease effects and replacing them with detection strength increasing effects? If you are still allowing the same stealth decrease effects, then I don't see how point (1) actually helps solve anything -- it would seem to only add an extra degree of complication and the current sort of situations and display would actually be a situation that could still be encountered truly identically to how they are now. And it seems like any location-specific stealth increase effects (like from current ion storm) should logically also be treated in the same fashion (and in at least one of your sentences you seem to say so).

But then I still don't see how this idea (1) of varying detection strength by itself actually helps anything, especially given the fact that without point (2) the display would just be a riot of weirdly shaped shaded color regions from various overlapping empire detection spaces, sort of like now but tremendously more complicated, that I don't think could realistically be made sense of with more than a couple empires. On trying to see how these tiers might help, it strikes me that the issue may be different from the point of view of someone trying to what they can detect and where, versus someone trying to know where a specific one of their fleets could stay hidden from an enemy. Could you perhaps address both of these perspectives and how you think tiered detection strength helps them. It's fine with me if you also want to take into account your point (2), but then I think you should discuss all three situations (no fleets selected, one's own fleet selected, and an enemy fleet selected), for a total of 6 perspective/selection combinations. And if you can't make this argument in favor of point (1) without reliance on point (3), then please acknowledge that and also compare it to how point (3) would act in the present paradigm.

Regarding point 3 especially, it seems like a similar hover tool could provide just as much help under either paradigm, it's just a question of which information it would show. (And I think my suggestions above for the current paradigm, re system and field, would provide that functionality).

I think you also need to consider the very major non-gui aspect of this-- the back-end mechanics of blockades and combat initiation and resolution-- it seems to me that this proposal of varying detection strength would tremendously complicate a great deal of back-end code.

Finally, I'll also mention an idea that I think is paradigm independent but which might reduce your dissatisfaction with the current one-- to help stealthy fleet planning, when you have one of your fleets selected and are looking at prospective travel paths, currently we use ETA markers to flag blockades, but we could also do something (with ETA markers or the path marker) to indicate expected detection status.

_________________
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0


Top
 Profile  
 
PostPosted: Mon Jul 03, 2017 8:54 am 
Offline
Space Krill

Joined: Sat Jul 01, 2017 4:54 am
Posts: 3
I don't like the current planetary stealth fluff. If its enough to block most scans, what is it doing to sunlight? hello eco system? Are you alive?

Why not instead have stealthy starlanes? Hiding something that requires special tech to use should be easier to hide then a planet with a colony. Suggesting it would be controlled/powered via building. Perhaps additionally via ship part. Some monsters could be equipped with such a part (ie sentinals).

Stealth should have a range. The range would be where It is known there is a ship there but targeting solution can't be found. Think of the range as anti targeting tech.
Eg. empire A has ship with 50..70 stealth. empire B arrives with ships.
if empire B has detection strength 40: empire A undetected.
if empire B has detection strength 50: empire A detected. untargetable. 100% miss
if empire B has detection strength 60: empire A detected. targetable. 50% miss
if empire B has detection strength 65: empire A detected. targetable. 25% miss
if empire B has detection strength 60, empire B includes a ship with lvl 60 detection scanner part.gives bonus to detection diminishing returns with additional scanners

With a range, stealth is not all or nothing.


Top
 Profile  
 
PostPosted: Wed Jul 05, 2017 9:00 pm 
Offline
Programmer

Joined: Mon Feb 29, 2016 8:37 pm
Posts: 204
Dilvish thanks for the detailed response to the UI changes I proposed. I'll provide short direct answers to your questions up top, with a longer treatment below.
Dilvish wrote:
You are certainly free to argue that we could have a better display by doing away with stealth decrease effects...
I'm not suggesting removing local stealth changes. I'm arguing that players care about the local difference between stealth and detection strength. If we are changing stealth/detection to be more dynamic, then it may be helpful to display the local difference.

For example the dwell effect that MatGB proposed, would progressively change either local stealth or detection strength. Without UI feedback in the map window that will result in a surprise when a ship/colony is suddenly no longer hidden.

Dilvish wrote:
... someone trying to [know] what they can detect and where...
Count the number of bands of your detection color. If there are 5 bands of increasing intensity surrounding some point then you can detect stealth level 5 at that point.

Dilvish wrote:
...someone trying to know where a specific one of their fleets could stay hidden from an enemy...
Count the number of enemy bands in their detection color. I they have 3 bands of increasing intensity surrounding some point, then your 5 stealth fleet is hidden at that point.


I like your idea of highlighting the edges of fields, when they are hovered over. There is already a context menu item to lookup the Pedia article which provides an explanation of the effects.

I like your idea of modifying the system icon/system name icon to indicate a stealth modifying effect.

When adding an indication to the ETA marker of expected detection status, how would this marker deal with multiple empires with different detection strengths?

Global v.s. Local
These UI changes are proposed in the context of this thread relating to making stealth more interactive. These UI changes support detection strength having local variation.

I'm not suggesting doing away with local stealth changes in favor of local detection strength changes.

I was using the local stealth varying tech to explain that the global detection strength with range circles is not sufficient information to determine if a particular universe object/fleet will be visible to a particular empire, because there may be a local stealth changing effect not apparent from examining the map window.

The visibility of an object is always with respect to a specific empire.
The current system compares the empire's global detection strength with the current or local stealth of the object.
Empire[global detection strength] v.s. object [local stealth]
A disadvantage is that techs can only change an object's stealth which results in a bonus/penalty to all foreign empire's not just the empire deploying the tech. Other than increasing its global detection strength there is no tech than can improve an empire's detection strength locally without also improving all other empires' detection strengths.

The proposed changes would compare the empire's local detection strength with the local stealth of the object.
Empire[local detection strength] v.s. object [local stealth]

Marginal detection strength is (detection strength - stealth strength). Player's care about the marginal detection strength, it determines if a fleet is detected.


A 3D UI Digression
I'm adding a digression to describe a 3D UI which we can not implement to clarify how the 2D interface proposed works. The 3D interface is more intuitive and I may have not chosen well in translating it to a 2D interface.

It is developed in three steps.

Step one: Start by imagining that each universe object/fleet's stealth and each empire's detection strength is shown as a 3D terrain where the elevation indicates the stealth/detection strength. With the current game mechanics each empire' detection strength is a flat elevation map. Every fleet's elevation map shows how moving the fleet increases/decreases its stealth across the map. For example, in locations within an Ion Storm field all fleet's stealth elevation map shows a rise or hill because their stealth would increase if they moved into the field and it would show a trough around an interstellar lighthouse.

For one fleet and one empire if both terrains are displayed together in 3D, it is easy to compare terrain heights at one location and see if the stealth is higher/lower than the detection strength.

For locally varying detection strength the empire elevation map would be hilly, with detection strength high near colonies and dropping to zero outside of the empire's detection range. It would still be easy to compare one empire's detection strength and one fleet's stealth a single location, by looking at elevation in the 3D display.

Step two: A problem is that there are many empires and many objects and very many (empire, object) pairs. Displaying all of the detection and stealth terrains at the same time won't work.

However, many stealth changing effects are the same for all universe objects. For example the ion storm and lighthouse, but not the solar hull's star effect. A solution is to subtract the common stealth variations from each empire's detection terrain, creating an effective (detection - stealth) strength. Then only display a single empire's effective (detection - stealth) strength as an elevation map with each universe object/fleet suspended at their current (detection-stealth) height above that terrain. Display the zero threshold as a cloud bank, tinted with the detecting empire's color. Any fleets in the clouds are hidden. Any fleets above the clouds are visible. Moving a fleet into the mountain of clouds surrounding an ion storm would hide the fleet, from the given empire.

Step three: There are still many empires. Display only one empire's detection strength at a time to reduce the clutter.

How should the UI decide which empire the player is interested in displaying?

When nothing is selected or one's own fleet or colony is selected or the own empire is selected on the Empires list, then the player's own empire's effective (detection - stealth) terrain is displayed. It will look like a bowl carved out of a cloud bank. Any fleets that are detected, will be a distance above the cloud floor showing how visible they are. Any stealthy fleets known about, perhaps due to combat will be displayed a distance below the cloud floor indicating how stealthy they might be. Artifacts like the ion storms will look like a mound of clouds, which if higher than some foreign fleet, would hide the fleet if they flew into the clouds/ion storm.

This answers the questions in the following way:
  1. Can player empire A detect foreign object B? If the object is above the clouds then it can and is being detected. If it is below the clouds, then it is known about through some non-detection means.
  2. What is player empire A's detection strength or conversely what stealth can player empire A detect at some location? The lower the cloud floor the higher the detection strength at that location.
  3. What stealth can foreign empire C detect at some location? This question is not answered when the player's empire's detection is displayed.
  4. What is the stealth of object D? This is apparent from how high the object is above the cloud floor.

When a foreign fleet, colony or empire is selected then that empire's effective (detection - stealth) strength is displayed. The player will see what the player's empire thinks that the foreign empire can see. The terrain sculpted from the clouds shows the foreign empire's detection strength. Fleets below the cloud floor are fleets that the player's empire knows about, but that the foreign empire can't detect. This might include the player's own fleets, indicating that they are hidden from the foreign empire. The height above the cloud floor indicates the detection margin, or how much a fleet's stealth needs to increase to be hidden from this empire.

This answers the questions in the following way:
  1. Can player empire A detect foreign object B? This question is not answered when a foreign empire's detection is displayed.
  2. What is player empire A's detection strength or conversely what stealth can player empire A detect at some location? This question is not answered when a foreign empire's detection is displayed.
  3. What stealth can foreign empire C detect at some location? The lower the cloud floor, the better the detection strength of the foreign empire.
  4. What is the stealth of object D? This is apparent from how high the object is above the cloud floor.

Translating the 3D display of an elevation map with a threshold into a 2D display.

Display the elevation map of heights of the clouds by varying the intensity of the range halo. A darker highlight indicates stronger detection strength. An ion storm moving through the empire would display as a low intensity hole in the detection halo of the displayed empire. Only one empire's detection halo is displayed at a time, so there are no competing halos. The display is less cluttered.

Display falling below the zero threshold/cloud floor using the scanline shader, perhaps tinted with the detecting empire's color. This adds the ablility to the 2D UI to detect at a glance if a foreign empire can detect the player's own fleet. The player's own fleet will be rendered with the scanline shader, when a foreign empire/fleet/colony is selected, that can't detect that fleet.

Relative to the 3D display the 2D implementation lacks the ability to use the elevation to display the detection/stealth margin. That ablility could be recovered as you describe by annotating either the object name or fleet icon. If the annotation is clear and the number of levels is small, then it would be apparent that some fleets needs X more levels of stealth to hide from a given empire. Perhaps an annotation like an RF signal strength icon, but with horizontal stacked bars.

Hover tool
As you pointed out, a hover tool works with any implementation of stealth and detection, it just displays different information.

If the proposed display is working well with limited stealth levels, then the hover tool is superfluous because simply looking at a fleet icon after selecting an empire of interest and some mental subtraction will yield the (detection - stealth) difference. Then a hover tool is for players/devs who want a detailed break down of all the mechanics influencing stealth/detection at a given location.

Backend changes
The visibility system in encapsulated as follows.

All consumers of visibility use GetObjectVisibilityByEmpire() to query if a given universe object is visible to a given empire. None of the changes proposed in this thread would change anything for consumers of visibility information. Blockades, supply, combat etc would still query GetObjectVisibilityByEmpire() in the same way.

The information in the table that GetObjectVisibilityByEmpire() indexes is collected from 5 factors: owning an object grants automatic visibility, owning a colony in a system grants partial visibility of the system and its planets, combat exposes stealthy attackers, fields modify stealth, and empire range effects. All of the code changes would be in the last function, empire range effects. In that function there is a table of detectors with their range. It would need to be augmented to include detection strength.


Top
 Profile  
 
PostPosted: Thu Jul 06, 2017 7:25 pm 
Offline
AI Lead, Programmer
User avatar

Joined: Sat Sep 22, 2012 6:25 pm
Posts: 4390
LGM-Doyle wrote:
I'm not suggesting removing local stealth changes. I'm arguing that players care about the local difference between stealth and detection strength. If we are changing stealth/detection to be more dynamic, then it may be helpful to display the local difference.
Hmm, I think our discussion is getting muddled by mixing too many things (even if in this case that 'too many' might really just be two or three).

Especially if we don't remove local stealth changes then it appears to me that whether you have a tiered detection strength (if that is what you are referring to here as 'dynamic') or a flat detection strength you will in both cases be just as dependent on other UI elements, especially the stealth-tooltip , to help clarify the local difference. The tiered detection strength idea might be practically dependent on an enhanced stealth tooltip, but that does not mean that the benefits of the enhanced tooltip should be considered as benefits of the tiered detection strength idea.

Dilvish wrote:
Could you perhaps address both of these perspectives and how you think tiered detection strength helps them.
LGM-Doyle wrote:
Count the number of bands of your detection color. If there are 5 bands of increasing intensity surrounding some point then you can detect stealth level 5 at that point...Count the number of enemy bands in their detection color. I they have 3 bands of increasing intensity surrounding some point, then your 5 stealth fleet is hidden at that point.
Well, you did nominally 'address' these situations, but I guess I left it too implicit that when asking how the tiered detection strength "helps", I meant in comparison to how a determination would be made in the case of flat detection strength. Here, I am not seeing any help from your approach (taking the point of view that if a player does not remember that he or an enemy has detection strength '5', it is at least as easy for him to look up an empire's detection strength as it is to count bands). It also seems to me that you are not really considering how tricky it might get to count bands if there are any local variances in addition to the distance-from-detector. Especially for any local variance that applies only within a system, it seems that counting bands would likely be impossible.

And in areas where empires have overlapping detection, this 'counting bands' approach seems it would be too confusing without switching over to the individual-empire-detection view, which conceivably could be worth the hassle if it offered a significant additional benefit, but right now I'm just seeing the hassle without a corresponding benefit.

Moving on to some of the other points we touched on...
LGM-Doyle wrote:
None of the changes proposed in this thread would change anything for consumers of visibility information. Blockades, supply, combat etc would still query GetObjectVisibilityByEmpire() in the same way.
Perhaps this is a smaller issue than I had thought, but (probably since GetObjectVisibilityByEmpire() doesn't work for assessing visibility to a monster), there are some places that blockade/combat related visibility determinations are currently made by directly comparing detection strength to object stealth, such as Fleet::BlockadesAtSystem() and (CombatSystem) ObjectTargettableByMonsters()

LGM-Doyle wrote:
When adding an indication to the ETA marker of expected detection status, how would this marker deal with multiple empires with different detection strengths?
I suppose the default would be for it to display whether or not your fleet is hidden from all enemies known to have detection at the given location, and if it is detectable by anyone then the player could choose to get more detailed info from either a stealth-tooltip or perhaps by some sort of empire selection (perhaps by selecting an empire from empire window, or by selecting a fleet/planet owned by a particular enemy).

_________________
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0


Top
 Profile  
 
PostPosted: Fri Jul 07, 2017 7:34 am 
Offline
AI Lead, Programmer
User avatar

Joined: Sat Sep 22, 2012 6:25 pm
Posts: 4390
Dilvish wrote:
(probably since GetObjectVisibilityByEmpire() doesn't work for assessing visibility to a monster), there are some places that blockade/combat related visibility determinations are currently made by directly comparing detection strength to object stealth
And as I just figured out while digging into a problem with a blockade UI PR, on the client side GetObjectVisibilityByEmpire() currently only works for your own empire, not anyone else's. That might change with Espionage or for other reasons, but in the meantime it's probably a good reason for some of this code to continue relying on direct detection/stealth comparisons.

_________________
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0


Top
 Profile  
 
PostPosted: Fri Jul 07, 2017 11:00 pm 
Offline
Creative Contributor
User avatar

Joined: Fri Jun 28, 2013 11:45 pm
Posts: 3291
Hmm.

I'm not sure a player ought to know if your own stuff is losing stealth to, for example, a hidden stealth reducing effect. Or even a visible one. How would you know?

What could be good is to have the UI expose info already discoverable through Objects, like turns in system or turns since last battle, because if a scout is equipped with equipment that reduces stealth by 10 per turn it's stationary, then knowing it's been there for 5 turns is useful info because that's public anyway.

A player relying on stealth has to know that there are affects that reduce stealth and counter them and/or not stay in place too long. I don't see how, for example, a stealthed scout would necessarily know it's close to being detected, let alone how a colony would know a ship in orbit has observed enough for the cloud cover to be irrelevant.

Thus trying to work out a complex UI to display things isn't something I'd considered, because I hadn't thought of it working that way.

For each turn my ship has remained stationary in a system enemy objects there have their stealth reduced by 10 for me, objects that've arrived since my scout are affected from the turn they've arrived (both are theoretically scriptable).

Regarding levels, I have zero objection I just don't know what it's achieving that the current numbers can't do, we have a UI for the current system, it's not ideal but it works and is consistent with other UI elements.

_________________
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 33 posts ]  Go to page Previous  1, 2, 3  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group