triplea-game / triplea

TripleA is a turn based strategy game and board game engine, similar to Axis & Allies or Risk.
https://triplea-game.org/
GNU General Public License v3.0
1.33k stars 392 forks source link

Kamikazes don't kill marines on board #4634

Open simon33-2 opened 5 years ago

simon33-2 commented 5 years ago

Engine version

1.9-13066

My Operating System

Ubuntu 16.04.3

Map name

World War II Global 1940 Balanced Mod3

Can you describe how to trigger the error? (eg: what sequence of actions will recreate it?)

Put a marine on board a US (normally) Battleship or Cruiser Marine amphibiously assaults an empty Japanese territory in a Kamikaze zone. Japan sinks the ship with Kamikazes

Marine who should be dead takes territory.

Do you have the exact error text? Please copy/paste if so

Instead of this error, what should have happened?

Marine killed. Territory remains Japanese.

Any additional information that may help

Refer #4162. Probably the same problem but you never know.

simon33-2 commented 5 years ago

Seems that this is an old bug. Just tested on builds 11599, 7378 and 3627. All had the bug.

panther2 commented 5 years ago

Does it still occur on versions above 12640? At least #4162 had been fixed, then, chances are it's related.

simon33-2 commented 5 years ago

Well it still occurs on 13066.

simon33-2 commented 5 years ago

Test case. marine.zip

DanVanAtta commented 4 years ago

@simon33-2 @panther2 , I notice in the rules for global: "Japan may target any surface warship in a Kamikaze zone"; I'm not a global player, is it 100% intentional that transports are not eligible for kamikaze attacks?

It seems odd that a cruiser doing an amphib assault can be sunk via kamikaze but not a transport. I presume you left that out for good reason, just want to confirm that it's how it should be, that transports by themselves are not eligible for kamikaze attacks. Example (1.9.0.0.13066): marine2.tsvg.zip

Cernelius commented 4 years ago

"Japan may target any surface warship in a Kamikaze zone"; I'm not a global player, is it 100% intentional that transports are not eligible for kamikaze attacks?

Yes. Transports are ships, but they are not warships. What that rule is saying, is that you can target any ships but transports (non-war) and submarines (non-surface).

Not much of an idea why transports cannot be targeted at all, instead of being simply deprioritized, as usual.

panther2 commented 4 years ago

@DanVanAtta In Global 1940 "The Japanese player has the ability to make a special defensive strike against Allied surface warships. "... "A kamikaze strike can target any specific enemy surface warship (not a submarine or transport) belonging to the attacking power. So as @Cernelius said.

Balance Mod (no official ruleset but a very popular mod) introduced the "Marine Unit" that is transportable by a cruiser. However the cruiser is still more a warship rather than a transport.

DanVanAtta commented 4 years ago

Ya, just an odd inconsistency.

The way transports are tracked is very weak. A fix here I think either needs a gameData datastructure to replace or augment the various flags for unit transport or we need to be able to look into history to check for offloaded units. Either way perhaps not a quick fix to correct this.

On Thu, May 21, 2020, 8:51 AM P@nther notifications@github.com wrote:

@DanVanAtta https://github.com/DanVanAtta In Global 1940 "The Japanese player has the ability to make a special defensive strike against Allied surface warships. "... "A kamikaze strike can target any specific enemy surface warship (not a submarine or transport) belonging to the attacking power. So as @Cernelius https://github.com/Cernelius said.

Balance Mod (no official ruleset but a very popular mod) introduced the "Marine Unit" that is transportable by a cruiser. However the cruiser is still more a warship rather than a transport.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/triplea-game/triplea/issues/4634#issuecomment-632170658, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC6SZONYSJ3DLPTKBVJVZUTRSVEYPANCNFSM4GSVF2EQ .