8000 Seemingly swapped stealth between planet and fleet · Issue #5009 · freeorion/freeorion · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Seemingly swapped stealth between planet and fleet #5009

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By 8000 clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
Blue-Award opened this issue Sep 8, 2024 · 14 comments
Open

Seemingly swapped stealth between planet and fleet #5009

Blue-Award opened this issue Sep 8, 2024 · 14 comments
Labels
category:bug The Issue/PR describes or solves a perceived malfunction within the game.

Comments

@Blue-Award
Copy link
Contributor

Talking about recent test builds.

There's a planet, say Lembala'lam, above my detection level (say, my 50 detection vs 65 stealth).

I go into the system with lowly initial frigate, 5 stealth, fleet set to aggressive.

There is combat. OK, this is the first question, why is there combat? I would expect if my ship doesn't see the planet, it does not initiate the combat despite fleet aggression level. And I would expect the planet doesn't initiate combat, either? But maybe I am mistaken. here, and hidden native planet is expected to start fighting?

But question number two - why in the combat log it is said that it is the planet that does not see my ship on the first round (until it shoots), meanwhile my ship is said to see the planet from the get go and even attacks it on the first round (and is sait to be detected by doing so).

This is as if the stealth of planet and my ship was swapped, or something. Why a high tech 60 detection native planet treats my 5 stealth ship as initially invisible until it is detected due to shooting, meanwhile my 50 detection empire's ship treats a 65 stealth planet as visible from the get go?

Presumably that's also why the combat did happen in the first place, my ship was for some reason said to see the hidden planet and attacked it? I may be persuaded that a hidden native planet attacks on its own (but still would find that surprising), but I cannot be persuaded the combat log is showing the right thing in terms of how the battle should have went, even if the hidden planet shot first.

Attached save with reproduction of this, right before the combat, and screenshot of the combat log below. Vortex is my initial frigate, Panon Poe II is Lembala'Lam planet with 60 detection and 65 stelath, and my empire has 50 detection:

image
swapped_stealth_or_something.zip

@Blue-Award Blue-Award added the category:bug The Issue/PR describes or solves a perceived malfunction within the game. label Sep 8, 2024
@Blue-Award
Copy link
Contributor Author

Note that yes it did happen to me in current slow multiplayer game so is that extra bit annoying. I haven't tested it (yet) on local multiplayer to try to confirm if that also happens with enemy empire Sly or Laenfa plents (or conquered Lemba'Lam for that matter). But has potential to be this even extra bit annoying, though can't decide if more for my team or for the other team

Some time ago I fixed a bug where monsters would look up player detection (range) and treat it as their own detection (strength) due to inverted condition on what is an unowned (monster) object, so this has similar smell but dunno (as if instead of monster stealth, player stealth was taken into account, and vice versa)

@geoffthemedio
Copy link
Member
geoffthemedio commented Oct 6, 2024

I don't think there's anything weird in terms of swapping stealth between planets and ships happening.

The combat conditions are met because there is an aggressive fleet that is in the same system as a planet that it can detect (all planets are basic visibility at least, regardless of stealth) that is "at war" with the fleet. An unowned populated planet is always "at war" with every empire.

Quirky situations like this are part of why I would rather remove planets from ship combat entirely, making any planet-ship interactions a separate game mechanic.

The server log:

14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2344 : CombatConditionsInSystem() for system (176) Panon Poe
14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2345 :    fleets here: Battle Fleet ( id: 1230  owner: 1  aggression: FLEET_AGGRESSIVE )   
14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2486 :    Empires with at least one armed aggressive fleet present:  1 
14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2488 :    Empires with at least one armed obstructive fleet present: (none)
14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2490 :    Empires with any fleet present: 1 
14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2500 :    Empires with planets present:  -1 
14:35:34.926206 {0x00005210} [debug] combat : ServerApp.cpp:2552 :    Aggressive fleet empire 1 sees at war target planet Panon Poe II (owner: -1)

@geoffthemedio
Copy link
Member
geoffthemedio commented Oct 6, 2024

What is probably a bug is that it reports no neutral assets at the start of the combat...

The issue is that is sorts the objects initially in the combat by owner and and if it's a ship or populated planet, but stealthy planets aren't considered populated at that step...

#5012 could help with this...

@vincele
Copy link
Contributor
vincele commented Jan 25, 2025

Just speculating, I've not searched the code.

The bug may just be that the combat log is misleading, for those not knowing how things "work".

maybe change to: "Initial forces (ships)", if that is the case.

"Neutral forces cannot detect..." because there is no ships in that force, so maybe that message should not be shown in that case.

That does not explain why the planet that has detection strength > ship stealth has to detect it during combat, though.

WDYT ?

@Blue-Award
8000
Copy link
Contributor Author

Showing no neutral assets at the start of the battle is least of my worries but indeed looks like a bug, too (for combat log)

Otherwise please note that aftermath of the combat exactly matches what the log says. So why are you claiming the combat log is misleading?

My ship should be damaged more if it was visible by the planet to begin with. Log said it was hidden from planet on first bout and only revealed second bout., THAT IS THE PROBLEM I am reporting here and I feel like it is being dismissed

Why the combat happens at all, me not seeing the planet, was questionable at first too, but I can see how stealthy planet is "aggressive". But this is not the main problem I am reporting. Main problem is my ship was stealthy to the planet, and planet not stealthy to my ship, while it should be other way around

@vincele
Copy link
Contributor
vincele commented Jan 25, 2025

Sorry about that, that was not at all what I was trying to express.

My totally uninformed (I was trying to explain that with the "just speculating") take was that there's 2 things here:

  • the bug in that your ship was being considered stealthy
  • the informations in the combat report log were not clear enough (at least to me) to understand that bug

I'll now hide back into my dyson forest. Again, sorry for the noise.

@Blue-Award
Copy link
Contributor Author
Blue-Award commented Jan 28, 2025

nah no worries I think there's lots of weird stuff happening with combat log, like another example I saw is a three way fight between me, another empire, and natives, natives could not detect my stealth at first but the other empire could, meanwhile the combat log showed it is the other empire that detected my ship rather than the natives (on the second bout)

Granted, this particular fight the other empire had unarmed scout so it's not like they could attack my ship even if it was visible to them, so can't say if that was only combat log thing or actual combat thing. Still, initial log preface was saying "neutral cannot detect XXX" but then it was the other empire "detected XXX" instead of the Neutrals

@vincele
Copy link
Contributor
vincele commented Jan 28, 2025

Ouch, yes, if the combat log is itself found to be buggy (misleading, not clear enough, etc.), that would be real bad because it can/will hamper the debuggability of a whole class of combat bugs.

@geoffthemedio
Copy link
Member

My ship should be damaged more if it was visible by the planet to begin with. Log said it was hidden from planet on first bout and only revealed second bout., THAT IS THE PROBLEM I am reporting here and I feel like it is being dismissed

So the log says your ship was initially hidden, and the amount of damage is consistent wit that? I don't understand the problem...

my ship was stealthy to the planet, and planet not stealthy to my ship, while it should be other way around

Why? I wrote above:

(all planets are basic visibility at least, regardless of stealth)

For the planet detecting the ship, that should depend on the ship's stealth and the detection of the planet. I didn't see the detection of the planet in the comments above (did I miss it?).

@Blue-Award
Copy link
Contributor Author

It's in the description.

My ship: 50 detection, 5 stealth
Planet: 60 detection, 65 stealth

Expexted: either no fight to begin with, or my ship is visible to planet and gets hit in first bout, planet is not visible to my ship so can't be hit, planet reveals and can be hit on second bout

Actual: opposite happens, my ship is not visible to planet on first bout and "reveals", meanwhile planet is visible on first bout and gets hit (and the combat actually happens to begin with, I thought invisible planet would not be aggressive)

@geoffthemedio
Copy link
Member

For visibility of or detection of a planet by an empire, think of detection strength < stealth as meaning "you can't see what's on the planet" but not than "you can't see the planet".

The combat starts because an empire with an aggressive fleet sees a planet (the neutral planet) considered at war with the empire. The planet is not aggressive, rather your fleet/ship is.

The ship in the fleet not being initially visible to the planet is arguably a bug. As far as I can tell, the initial visibility for combats is set from the main universe visibility, which doesn't calculate detection by neutral objects with the standard stealth vs. detection strength comparison. There is another pass to override that in some cases, when intializing the combat, but that doesn't change anything in this case.

That said, narratively, what happens makes sense... Your ship shows up, shoots at the planet, which then reacts and shoots back.

@Blue-Award
Copy link
Contributor Author

OK so you are saying that when you are in system then regardless of planet's stealth and your detection level, you see the planet at some basic level that allows you to shoot at it if you're aggressive, and planet will naturally respond in kind.

Bit surprising regarding how stealth works on ships but I can internalize that, even though it feels counterintuitive. I mean you can't settle a hidden planet I think, either? Or am I misremembering and it was about ship having zero detection range in nebula, rather the planet being hidden?

So ok, then only the part of calling my own ship stealthy looks wrong, after accepting the bit that planet is always visible to attack regardless of its stealth level.

@geoffthemedio
Copy link
Member

Or am I misremembering and it was about ship having zero detection range in nebula, rather the planet being hidden?

Could be. I vaguely recall something changing so zero detection range could still detect in the same system, though.

@Blue-Award
Copy link
Contributor Author

Oh but you can't outpost / colonize planets that are stealthy by the cloud/ashes/rift specials, and think so too about invasion (and annexation?) so it reinforces the idea you shouldn't be able to shoot at them.

So you can shoot at a veiled planet and see what happens, but can't try to outpost, colonize or invade it.

May argue you know a planet is inhabited even if stealthed, so know you can shoot at it, but then you also know when planet is not inhabited, so why can't outpost it?

It is what it is, I guess

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:bug The Issue/PR describes or solves a perceived malfunction within the game.
Projects
None yet
Development

No branches or pull requests

3 participants
0