Unit Option When Damaged Change Into Different Unit (Weakened Battleships)
-
@redrum Question Red. Does this theoretically mean that if you gave a unit 3 HP as well as 3 Bombing damage.... would the unit then be capable of sustaining 3+3 points of damage? I am curious how the engine would deal with a unit with 2 HPs of damage and 2 Bombing damage.
I'm guessing the two different types of damage would be unrelated to each other. Which could probably cause some issues and conflicts in how the unit is changed. Not that that is a huge issue as long as it is specified in the POS 2 XML.
-
@hepps Yeah, the 2 types of damage (combat vs bombing) are treated completely separately. So for a unit with 3 HP and 3 max bombing damage then could sustain 2 of each before dying.
-
@hepps as always you amaze me H because I was actually thinking the same thing. Obviously they need to be Pu related and tied together. Damage = damage. I wonder if its possible? Once again you thought of the question before I even asked it.

-
@prastle Well they wouldn't necessarily need to be tied together or related... as long as the sample XML clearly defines the uses and limitations/potential conflicts of using both systems on the same unit... then you can have 2 independent types of damage.
-
@hepps I cant see how independent would work when only one monetary system.
-
<option name="whenHitPointsDamagedChangesInto" value="1:germanBattleshipDamaged:true" count="1"/>
<option name="whenBombingDamagedChangesInto" value="1:germanBattleshipDamaged:true" count="1"/>So question on this in case I am missing something here...
Even though the 2 types of damage are independent of one another.... if the unit changed into the same "Damaged" unit at the end of the current combat phase... wouldn't then either type of damage be cumulative?
ie. I send my strat. Bomber in to bomb a undamaged BB. Let's say it achieves a hit and the bombing damage option then changes the unit into a damaged ship (if there is only 1 type of damaged ship), then that new unit would by virtue of the unit change automatically be changed to a unit having only 2 remaining HP.... so then if you had also launched an attack against the same battleship... during the same pound wouldn't the unit now still have only 2 HP at the start of the naval combat? therefore basically overrighting the bombing damage?
-
@hepps It would only work that way if the damaged BB unit had say max HP of 2 instead of 3. The reason is it would only carry over the damage of the unit being replaced (if 'keepDamage'=true) which would only be bombing damage in your case. So you'd end up with a damaged BB unit with 1 bombing damage and 0 hit point damage.
-
@redrum Ah ok. So you would then have to have 4 different types of damaged unit, causing all kinds of issues with unit changing and re-changing depending on the damage taken... that does present an issue.
-
@hepps So using both types of damage on multi hit units is probably not a realistic goal.
-
@hepps Agree. There would need to be further thought and logic to better handle units that can take both types of damage. Probably something like a damageConvert unit option which would translate bombing damage to HP and vice-versa. So say if a BB had 3 HP and 15 max bombing damage then you could have a 1-to-5 damage conversion ratio so it is damaged evenly (ex. if it takes 5 bombing damage then would take 1 HP damage).
You'd also have to think about how repair would work as well (again some conversion ratio so both are repaired at the same time or separate repairs). It gets pretty complicated pretty quickly.
-
@redrum Agreed.
Probably best if those two conversions were independent of one another.
-
@hepps Initial PR to address the damage (not repair) portion of this feature: https://github.com/triplea-game/triplea/pull/2689
Tested it by editing TWW to add unit, unit image, and below unit attachments:
<attachment name="unitAttachment" attachTo="germanBattleship" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType"> <option name="movement" value="2"/> <option name="attack" value="7"/> <option name="defense" value="8"/> <option name="canBombard" value="true"/> <option name="isSea" value="true"/> <option name="hitPoints" value="2"/> <option name="bombard" value="6"/> <option name="requiresUnits" value="germanDocks:germanFactory"/> <option name="consumesUnits" value="1:germanHull"/> <option name="whenHitPointsDamagedChangesInto" value="1:true:germanBattleshipDamaged"/> </attachment> <attachment name="unitAttachment" attachTo="germanBattleshipDamaged" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType"> <option name="movement" value="1"/> <option name="attack" value="3"/> <option name="defense" value="4"/> <option name="canBombard" value="true"/> <option name="isSea" value="true"/> <option name="hitPoints" value="2"/> <option name="bombard" value="3"/> </attachment> -
@redrum AWESOME!!!!!
-
Initial PR merged and can be tested on https://github.com/triplea-game/triplea/releases/tag/1.9.0.0.7804
-
Second PR to address repairing them: https://github.com/triplea-game/triplea/pull/2691
Tested with this XML:
<attachment name="unitAttachment" attachTo="germanBattleship" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType"> <option name="movement" value="2"/> <option name="attack" value="7"/> <option name="defense" value="8"/> <option name="canBombard" value="true"/> <option name="isSea" value="true"/> <option name="hitPoints" value="2"/> <option name="bombard" value="6"/> <option name="requiresUnits" value="germanDocks:germanFactory"/> <option name="consumesUnits" value="1:germanHull"/> <option name="whenHitPointsDamagedChangesInto" value="1:true:germanBattleshipDamaged"/> </attachment> <attachment name="unitAttachment" attachTo="germanBattleshipDamaged" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType"> <option name="movement" value="1"/> <option name="attack" value="3"/> <option name="defense" value="4"/> <option name="canBombard" value="true"/> <option name="isSea" value="true"/> <option name="hitPoints" value="2"/> <option name="bombard" value="3"/> <option name="whenHitPointsRepairedChangesInto" value="0:true:germanBattleship"/> </attachment> -
@redrum So pumped!

-
@hepps Nice. Those are looking good.
-
Second PR merged so all changes can be tested in this or later releases: https://github.com/triplea-game/triplea/releases/tag/1.9.0.0.7850
-
-
@general_zod That is an excellent question, that I actually don't know the answer to. I believe that it should since it actually does simulate battles. It would be interesting to make a very small test to prove or disprove it though.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login