Air Battles Can Be Ignored
-
There already exists "Sea Battles Can Be Ignored" and "Land Battles Can Be Ignored". I would like to have "Air Battles Can Be Ignored" as a property as well.
I am using both properties for a TripleA game where you can ignore battles in contested territories and it works very well, however it doesn't work for air battles. When ignoring a land battle, any air battles in the territory automatically start, which I think is inconsistent.
So therefore I propose to extend this property type to include air battles too.I think it's best if the player receives separate prompts for the land/sea and air battle. It would allow for more freedom in setting these properties, and in the cases where that's not of any use, it is just one small extra step.
It might be an idea to govern all three battle types by a property called "Battles Can Be Ignored" or "All Battles Can Be Ignored", to have a shortcut for setting all three different properties.
Not sure how hard this will be to implement, but I think it shouldn't be too hard since the logic of the two properties that already exist will hold?
-
There is "Sea Battles May Be Ignored", as is documented in PoS2 which gives the attacker the option to ignore the sea battle without retreating.
But "Land Battles May Be Ignored" is not documented in PoS2. It may be assumed that is functions in the same manner, thus allowing the attacker the option to ignore the battle without retreating.
With air battles there are "Air Battle Attackers Can Retreat", which means the attacker can retreat after the 1st round. And "Air Battle Defenders Can Retreat" which allow the defender to retreat prior to battle.
There are 2 types of air battles. Prior to raid/SBR, "Raids May Be Preceeded By Air Battles". If the attacker retreats, the raid/SBR is also retreated. If the defender retreats the attacker continues with the raid/SBR. What should happen if the attacker is allowed to ignore the air battle? Continue with raid/SBR or abandon it?
Then there is "Battles May Be Preceeded By Air Battles". If the attacker chooses to retreat, then those unit cannot participate in the land battle, as they have retreated. The same is true for the defender, with the exception being those unit that were in that territory at the beginning of the turn. Any air units that were scrambled must retreat prior to the main battle. If the attacker is allowed to ignore this battle, should those units be allowed to participate in the main battle? And what about the defenders' units which were scrambled, should they be allowed to participate?
Then there is also "Retreating Units Remain In Place" and "Scrambled Units Return To Base" both could have an effect on air battles.
So, yes sea and land battles can be ignored, but air battle are more involved, and there are other properties that govern them.
I hope this helps explain why IMHO, this is already taken care of and expanding it is more involved than just creating a new property.
Cheers...
P.S. Changes like this need to be discussed prior to implantation, as there have been many changes added to TripleA that have not been fully implemented. Adding/expanding AA functionality, expanding SBR functionality, stacking of supports with bonusType. Just to name a few.
So, thank you for allowing us a chance to discuss this!
Cheers...
Cheers...
-
You have sharp eyes WC, you come up with things I haven't even thought about
You are right, it was "May" not "Can". The "Land Battles May Be Ignored" is undocumented in PoS2 however it is documented right here:
https://github.com/triplea-game/triplea/blob/master/game-app/game-core/src/main/java/games/strategy/triplea/Constants.javaTo tell you a funny story, I discovered that "Land Battles May Be Ignored" existed just by changing "Sea" to "Land" and see if it worked. A couple of days after my discovery, I noticed that the land property was added to that list on GitHub. So both events happened close together but were completely unrelated.
Anyway, you mentioned that land units could retreat while the air battle is ignored. That changed my mind to not make "Air Battles May Be Ignored" a separate property, but a default setting for "Land/Sea Battles May Be Ignored". It would indeed create many problems if it was separate.
To be more specific, if a land battle is ignored, any air battles in that territory are automatically ignored as well. The same goes for sea battles.
The reason I want to have this is because in Axis and Allies WW1 1914, combat lasts only one round so territories can be contested. Players that have units in contested territories from the start of their turn have the option to not fight any combat. The property "Land Battles May Be Ignored" allows them to choose exactly where they want to have combat or not. In the case you attack a territory that wasn't contested from the start of your turn, you must fight. Even though you will still receive a pop-up for these battles, it can be easily player-enforceable simply by clicking "Yes" in these cases (the engine will ask: "attack units in ...?). However, any air units also should have the option to reinforce a territory and not fight any battles but the engine will automatically start any air battles.
I am talking about the 2nd type of air battle, the one that happens when you have land/sea combat with air units of both sides involved and "Battles May Be Preceeded By Air Battles" is true. Allowing raids/SBRs to be ignored wouldn't make any sense as you actively move units to damage a facility without any other reason to do it (e.g. reinforcing the area).
Are both of these air battle types handled separately by TripleA or does a change to one type affect the other?
-
@victoryfirst said in Air Battles Can Be Ignored:
To be more specific, if a land battle is ignored, any air battles in that territory are automatically ignored as well. The same goes for sea battles.
The problem here is that air battles precede (not Preceede) the main land or sea battle. They happen first, so if an attacker wishes to ignore the air battle, should the preceding main battle take place?
@victoryfirst said in Air Battles Can Be Ignored:
The reason I want to have this is because in Axis and Allies WW1 1914, combat lasts only one round so territories can be contested.
But air battles are not 1 round, they are battled until there is a winner because surviving air units give an attack bonus to artillery. So even though the attacker may want to ignore the ground battle, they cannot ignore the air battle.
@victoryfirst said in Air Battles Can Be Ignored:
Are both of these air battle types handled separately by TripleA or does a change to one type affect the other?
Yes and no, it would be hard to get very specific here with the way it is handled.
@victoryfirst said in Air Battles Can Be Ignored:
You have sharp eyes WC, you come up with things I haven't even thought about
Thank you, I call it my 'Why?' process. Many additions/changes have been done without follow-through. Like giving SBR abilities to non-isAir units. To do this 1 line of code was removed, but no thought was given to what happens to those units after the SBR round. Another is giving all units AA abilities, don't get me started on that, ask @beelee.
Cheers...
-
To be more clear, I refrain from having a separate property called "Air Battles May Be Ignored" as it causes too many problems as you pointed out. I would like to have the property "Land Battles May Be Ignored" to function in such a way, that if a player opts to ignore the land battle, any air battle that might trigger in that territory as a result of the land battle is automatically ignored as well. In WW1 1914, the air and land battles are linked. You cannot start a land battle and ignore the air battle or fight the air battle and not do the land battle. This is stated in the rulebook.
I have no understanding of how TripleA deals with these things so I don't know how hard it will be to implement something like this, or if it will be easier/harder to implement if there are some changes here and there to the feature request. So again, if there happens to be an SBR in the territory you would like to have no combat (which wouldn't come up in WW1 1914 but might come up in other games), the SBR shouldn't be ignored. However, I don't know if that's possible to make that distinction between the two different types of air battles.
Awesome you have a 'Why?' process. It is an essential skill to have for any kind of developing project which indeed many people lack. @beelee Hehe now you have to tell me about it too, about what went wrong with the AA abilities
-
@wc_sumpton said in Air Battles Can Be Ignored:
The problem here is that air battles precede (not Preceede) the main land or sea battle. They happen first, so if an attacker wishes to ignore the air battle, should the preceding main battle take place?
Yeah so the air battle precedes the land battle but the prompt for ignoring land battles is shown after combat movement and before combat. So when the game asks you to fight in a territory and you click "no", no battle happens. I think it should be possible to extend this to air battles too, so I don't understand why the air battle preceding the land battle is a problem?
-
I have not worked on the "Battles May Be Ignored" pieces of the engine yet, so I am not quite sure how they are hooked up. My answers are the quick ones from what I know about the coding, so you may be right in there being a way to "hook" air battles into the main battle. My plate is full so to speak, but I will try to look into this soon.
@victoryfirst said in Air Battles Can Be Ignored:
@beelee Hehe now you have to tell me about it too, about what went wrong with the AA abilities
It was just something he said.
Cheers...
-
@victoryfirst
Not sure what you trying to achieve, but in 1941 GCD some ground units cannot hit air units and vice versa.Inf-Conscript is blocked from shooting at air unit, as it has no skill/no AA.
To achieve this
<option name="canNotTarget" value="$All-Air$"/>Bomber is blocked from attacking sea units, they fly too high to be accurate
<option name="canNotTarget" value="$All-Air$:$All-Sea$"/>Combined with limited combat rounds
<property name="Land Battle Rounds" value="7" editable="true"> </property>
<property name="Sea Battle Rounds" value="5" editable="true"> </property>
<property name="Air Battle Rounds" value="3" editable="true"> </property>Might give you the elements of what you are after?
-
@wc_sumpton said in Air Battles Can Be Ignored:
I have not worked on the "Battles May Be Ignored" pieces of the engine yet, so I am not quite sure how they are hooked up. My answers are the quick ones from what I know about the coding, so you may be right in there being a way to "hook" air battles into the main battle. My plate is full so to speak, but I will try to look into this soon.
No worries. I already appreciate you are looking at this. Take your time and do the things first that are most important.
-
That's interesting what you have posted there, I think that would come in handy for another game I am working on. However unfortunately that is not what I wanted to achieve for this game. In this game, battles last one round so territories can be contested and players have the option to not have any combat in contested territories. The property "Land Battles May Be Ignored" deals with this and allows players to not fight in any territories of their choosing. However, it doesn't work for air battles. So if there are air units from both sides in a territory, the engine will automatically start an air battle in this territory unless you move out and then edit move in which is pretty annoying.
-
@VictoryFirst has asked an interesting question here. If "Sea Battles May Be Ignored" and/or "Land Battles May Be Ignored" are true, what is to happen to the preceding Air Battle in the same territory? Should it also be ignored also, if so, should the prompt explain this? Should there be a separate property/prompt for Air Battles? These Air Battles only deal with those linked with a land or sea battle, SBR Air Battles should happen normally.
Cheers...
-
In "basic" TripleA rules, Attacking air units must retreat/non-combat move to a safe location to land. This even hold true for defensive air unit that may scramble into a battle. This being the basic rule, if the air battle is ignored, then it would seem pointless to move/scramble air units into an ignored battle, since these units would need to be relocated during non-combat movement.
So, you must be using "removeAirThatCanNotLand" in both the move and place steps. Also "isKamikaze" in air units' attachments. Or/And the "Kamikaze Airplanes" property.
So, the only time that this ignore air battle setting would be used is when these rules are set.
Just food for thought.
Cheers...
-
@VictoryFirst, @TheDog, @Cernel, @beelee
Here is something that I, IMHO, should not be allowed. If "Sea Battles May Be Ignored", the attacker may take loaded transports into a heavily guarded territory, ignore the battle and still land the attacking units. If the sea battle is ignored, the transport should not be able to land their units.
Thoughts?
Cheers...
-
I agree with that.
-
@victoryfirst said in Air Battles Can Be Ignored:
Yeah so the air battle precedes the land battle but the prompt for ignoring land battles is shown after combat movement and before combat. So when the game asks you to fight in a territory and you click "no", no battle happens. I think it should be possible to extend this to air battles too, so I don't understand why the air battle preceding the land battle is a problem?
You are right! With the message coming prior to selecting the order in which to fight battles, it is quite easy to check for the preceding air battle and nix it also.
Wow who knew?
Cheers...