Open floralpond opened 1 year ago
What should we do here if there are unspotted units that are either allied or at peace with us, instead of war?
I guess there are 3 options.
Option 1 is probably OK, and you can consider it just a risk of bombarding randomly, thus discouraging bombarding random tiles. If you want to reverse the consequences of your actions you'll have to engage in some diplomacy to smooth things over with the other party. Option 2 is probably a bit more realistic. In real life, countries accidentally bomb neutral/allies all the time "by accident". It's a scandal, but it's not immediate war. After spotting the units, if you continue to bombard then that's intentional and would cause war, which again seems realistic. Option 3 is probably the least risk from a technical perspective, although least realistic. From a gameplay perspective, you're probably trying to spot unseen ENEMY units, rather than neutral units.
==================================================
Then again, I'm not sure how much any of this matters because I just realized that you don't need to use the "bombard' feature search for units. You can use the landing feature. If you attempt to land, it'll ask you if you're sure b/c it'll damage your ship. But if there are unspotted units there, then it'll just tell you "you can't do this because there are unspotted units".
So I think for now this one needs some more thought to figure out the best course of action. Doing any of the 1, 2, or 3 options does make a change but doesn't really change the situation a whole lot.
I think it's OK to sideline this issue for now, unless people also want to change the messaging around landing damage. I think it's OK to make some kind of design change around both bombarding and landing messaging, but I don't think it's a high value add.
Basically the issue here is that a warning message serves as a side channel for information. Similar how "there is no such username" response on login prompts serves as a way to look for existing usernames or to check if knows usernames have account there.
To avoid the side channel, "wasting MP" warning message should show up in all cases, before checking if there are units there. Then, if user agreed to spend a turn, MP is decreased and user is asked if they want to bomb friendly units. At this point they can back down, but MP is spent nevertheless.
Imagine a ship setting up for a bombing run before receiving panicked messages from friendly forces on the ground. Fuel and time is already spent, but weapons don't need to fire.
Same with landing damage -- always show the message, decrement MP, then check for units and show another message.
I'm changing the milestone to 1.6, I think we're going to need to think through some more of these corner conditions. I agree we'd want to have the warning message pop in all cases, but there's some cases where we don't have a message where we might want one, like usually bombarding an occupied hex asks you if you want to go to war? But if you land on a peaceful unoccupied city then you automatically go to war, no questions asked. So there's probably some more design before implementing anything.
Basically the issue here is that a warning message serves as a side channel for information. Similar how "there is no such username" response on login prompts serves as a way to look for existing usernames or to check if knows usernames have account there.
To avoid the side channel, "wasting MP" warning message should show up in all cases, before checking if there are units there. Then, if user agreed to spend a turn, MP is decreased and user is asked if they want to bomb friendly units. At this point they can back down, but MP is spent nevertheless.
Imagine a ship setting up for a bombing run before receiving panicked messages from friendly forces on the ground. Fuel and time is already spent, but weapons don't need to fire.
Same with landing damage -- always show the message, decrement MP, then check for units and show another message.
I like this solution as it should be easy to implement and resolves all issues.
Description:
in https://github.com/HDIAndrew/Patch/issues/32 a change was made to prevent players from being able to spot unseen units by bombarding unseen hexes without a penalty. This was the intent anyway. But in discord today, Cranky Corvid and Unfleshedone pointed out that if you happen to click on a tile with unseen units, it will NOT give you the warning about bombarding empty hexes. Therefore, you can click on an empty hex and if it gives you the warning, then you can simply cancel out of it and you now know that it was an empty hex and don't need to spend a move point.
Expected behavior: When bombarding any hex without already seen units, you SHOULD get the warning about bombarding empty hexes costs a move point.
Actual behavior: When bombarding any hex without already seen units, you DO NOT get the warning about bombarding empty hexes costs a move point, and the game immediately goes into combat with the unseen units.
Game version:
1.51 vanilla
Steps to reproduce:
Additional information: