Total World War: December 1941 (BETA) 2.8.0.5
-
@redrum TripleA engine version 1.9.0.0.8505
Loading map: total_world_war, from: C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip
Loading resources from the following paths: [C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip, C:\Program Files\TripleA\assets]
Loading map: total_world_war, from: C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip
Loading resources from the following paths: [C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip, C:\Program Files\TripleA\assets]
Error: No such Property Field named: m_destroyedWhenCapturedFrom, or: destroyedWhenCapturedFrom, for Subject: UnitAttachment attached to:UnitType{name=germanAirTransport} with name:unitAttachment
java.lang.IllegalStateException: No such Property Field named: m_destroyedWhenCapturedFrom, or: destroyedWhenCapturedFrom, for Subject: UnitAttachment attached to:UnitType{name=germanAirTransport} with name:unitAttachment
at games.strategy.util.PropertyUtil.getPropertyFieldObject(PropertyUtil.java:76)
at games.strategy.engine.data.DefaultAttachment.getRawPropertyString(DefaultAttachment.java:113)
at games.strategy.triplea.attachments.TriggerAttachment.triggerUnitPropertyChange(TriggerAttachment.java:1932)
at games.strategy.triplea.attachments.TriggerAttachment.fireTriggers(TriggerAttachment.java:229)
at games.strategy.triplea.attachments.TriggerAttachment.collectAndFireTriggers(TriggerAttachment.java:168)
at games.strategy.triplea.delegate.BaseTripleADelegate.triggerWhenTriggerAttachments(BaseTripleADelegate.java:90)
at games.strategy.triplea.delegate.BaseTripleADelegate.end(BaseTripleADelegate.java:59)
at games.strategy.triplea.delegate.AbstractMoveDelegate.end(AbstractMoveDelegate.java:50)
at games.strategy.triplea.delegate.MoveDelegate.end(MoveDelegate.java:188)
at games.strategy.engine.framework.ServerGame.endStep(ServerGame.java:454)
at games.strategy.engine.framework.ServerGame.runStep(ServerGame.java:418)
at games.strategy.engine.framework.ServerGame.startGame(ServerGame.java:266)
at games.strategy.engine.framework.startup.launcher.LocalLauncher.launchInNewThread(LocalLauncher.java:58)
at games.strategy.engine.framework.startup.launcher.AbstractLauncher.lambda$launch$0(AbstractLauncher.java:51)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: No such Property Field: destroyedWhenCapturedFrom
at games.strategy.util.PropertyUtil.getFieldIncludingFromSuperClasses(PropertyUtil.java:58)
at games.strategy.util.PropertyUtil.getFieldIncludingFromSuperClasses(PropertyUtil.java:63)
at games.strategy.util.PropertyUtil.getFieldIncludingFromSuperClasses(PropertyUtil.java:63)
at games.strategy.util.PropertyUtil.getFieldIncludingFromSuperClasses(PropertyUtil.java:63)
at games.strategy.util.PropertyUtil.getFieldIncludingFromSuperClasses(PropertyUtil.java:53)
at games.strategy.util.PropertyUtil.getPropertyField(PropertyUtil.java:101)
at games.strategy.util.PropertyUtil.getPropertyField(PropertyUtil.java:81)
at games.strategy.util.PropertyUtil.getPropertyFieldObject(PropertyUtil.java:69)
... 14 more -
@hepps I have a feeling that you can't use destroyedWhenCapturedFrom in a trigger. Can you try using destroyedWhenCapturedBy instead?
-
@Hepps @redrum
Why is the m_ in there?@hepps said in Total World War: December 1941 Trains (BETA) 2.8.0.1:
@redrum TripleA engine version 1.9.0.0.8505
Loading map: total_world_war, from: C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip
Loading resources from the following paths: [C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip, C:\Program Files\TripleA\assets]
Loading map: total_world_war, from: C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip
Loading resources from the following paths: [C:\Users\Hepster\triplea\downloadedMaps\total_world_war-master.zip, C:\Program Files\TripleA\assets]
Error: No such Property Field named: m_destroyedWhenCapturedFrom, or: destroyedWhenCapturedFrom, for Subject: UnitAttachment attached to:UnitType{name=germanAirTransport} with name:unitAttachment
java.lang.IllegalStateException: No such Property Field named:m_destroyedWhenCapturedFrom
, or: destroyedWhenCapturedFrom, for Subject: UnitAttachment attached to:UnitType{name=germanAirTransport} with name:unitAttachment -
@redrum I'll try.
-
@general_zod Yes I also wondered that. I searched the entire XML for an instance of either; m_destroyedWhenCapturedFrom, as well as m destroyedWhenCapturedFrom... and yielded no results.
-
@hepps This should work:
<attachment name="triggerAttachmentgermanAirtraninfra1" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="false"/> <option name="unitProperty" value="attack" count="1"/> <option name="when" value="before:germanyCombatMove"/> </attachment> <attachment name="triggerAttachmentgermanAirtraninfra2" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="true"/> <option name="unitProperty" value="destroyedWhenCapturedBy" count="China:Russia:Germany:Britain:Italy:Japan:Usa:Spain:Sweden:Turkey:Brazil"/> <option name="unitProperty" value="attack" count="0"/> <option name="when" value="after:germanyNonCombatMove"/> </attachment>
-
@hepps This should also work if you want to do the "from":
<attachment name="triggerAttachmentgermanAirtraninfra1" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="false"/> <option name="unitProperty" value="attack" count="1"/> <option name="when" value="before:germanyCombatMove"/> </attachment> <attachment name="triggerAttachmentgermanAirtraninfra2" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="true"/> <option name="unitProperty" value="destroyedWhenCapturedBy" count="FROM:Germany"/> <option name="unitProperty" value="attack" count="0"/> <option name="when" value="after:germanyNonCombatMove"/> </attachment>
-
@redrum lol
I did that and was about to save.... then changed it all to what you had just suggested!
-
@hepps Yeah either way works. You could technically just set the destroyedWhenCapturedBy option on the unit itself instead of a trigger and just flip the "isInfrastructure" in the trigger.
<attachment name="unitAttachment" attachTo="germanAirTransport" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType"> <option name="isInfrastructure" value="false"/> <option name="destroyedWhenCapturedBy" value="China:Russia:Germany:Britain:Italy:Japan:Usa:Spain:Sweden:Turkey:Brazil"/> </attachment>
<attachment name="triggerAttachmentgermanAirtraninfra1" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="false"/> <option name="unitProperty" value="attack" count="1"/> <option name="when" value="before:germanyCombatMove"/> </attachment> <attachment name="triggerAttachmentgermanAirtraninfra2" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="true"/> <option name="unitProperty" value="attack" count="0"/> <option name="when" value="after:germanyNonCombatMove"/> </attachment>
-
@redrum Worked... this is a good example of an opportunity for better notations in POS.
-
@redrum Both ways work.
-
@hepps Oh one other thing is that I think you should technically be doing a reset on destroyedWhenCapturedBy if you are leaving it in the trigger. As it is a list that gets added to:
<attachment name="triggerAttachmentgermanAirtraninfra1" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="false"/> <option name="unitProperty" value="destroyedWhenCapturedBy" count="-reset-"/> <option name="unitProperty" value="attack" count="1"/> <option name="when" value="before:germanyCombatMove"/> </attachment> <attachment name="triggerAttachmentgermanAirtraninfra2" attachTo="Germany" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player"> <option name="trigger" value="conditionAttachmentDummyCondition"/> <option name="unitType" value="germanAirTransport"/> <option name="unitProperty" value="isInfrastructure" count="true"/> <option name="unitProperty" value="destroyedWhenCapturedBy" count="FROM:Germany"/> <option name="unitProperty" value="attack" count="0"/> <option name="when" value="after:germanyNonCombatMove"/> </attachment>
Could also just do it in the 2nd trigger instead of the first like this:
<option name="unitProperty" value="destroyedWhenCapturedBy" count="-reset-FROM:Germany"/>
-
@hepps POS2 XML updated: https://github.com/triplea-maps/the_pact_of_steel/pull/6
-
@redrum Just an fyi... when I tried moving the "destroyedWhenCapturedBy" out of the trigger and back into just the unit.... the map would no longer load.
-
@hepps Hmm. Interesting. I don't see any reason that it shouldn't work.
-
@redrum May have been something I did as well. Either way when I put it all back in the tigger it worked fine.
Now I am onto a different issue.
-
Just a quick update. All the revisions are done. The new features are completely awesome!
We are trouble shooting a few minor issues currently, but these are certainly fixable.
The new game includes...
-
Rail lines now sustain 3 damage when captured. (Disabled)
-
Trains now sustain 2 damage when captured.
-
Research Centers now sustain 4 damage when captured.
-
Air Transports can now be bombed by Tact. Bombers and can be disabled. (2 H.P. disabled if hit)
-
Air Transports are now unselectable as a casualty on defense (1 less user enforced rule) {destroyed upon capture}
-
Can now load transports in hostile S.Z. (Included so we can test functionality)
-
Trains are now available to L&L. Allied->Russia via Murmansk, Archangelis and Iran. Russia-> China via Altay.
Beyond that I have no idea what the future holds.
-
-
@hepps May the Insanity BEGIN!
-
@prastle This is more like lunacy... insanity will be G.D.
-
So far everything now appears to be working well.
The new functionality looks good and the changes at seem ok. Just testing some of the basic functionality, and barring any issues will release this some time later today.