Land Transport Improvements
-
@hepps Initial improvements: https://github.com/triplea-game/triplea/pull/2673
Changes
- Add new parameter "isLandTransportable" that functions the same as "isInfantry" which will be considered deprecated (some time in the future it will be removed all together as it is a very confusing property with a bad history).
- Fix bug that didn't allow air transports and land transports to be moved in the same move.
- Have units with "isLandTransport" utilize the "transportCapacity" property to determine how many units they can transport and if not set then default to being able to transport 1 unit (keeps current functionality unchanged).
- Have "isLandTransportable" units utilize "transportCost" so they then function similar to sea transports. The goal then is to have the engine make a best effort to load all selected land transports and transportable units but if it selects them incorrectly then the player may need to move 1 land transport at a time.
Example
<attachment name="unitAttachment" attachTo="LargeTruck" javaClass="games.strategy.triplea.attachments.UnitAttachment" type="unitType">
<option name="movement" value="2"/>
<option name="attack" value="0"/>
<option name="defense" value="0"/>
<option name="canBeDamaged" value="true"/>
<option name="maxDamage" value="1"/>
<option name="canDieFromReachingMaxDamage" value="true"/>
<option name="isLandTransport" value="true"/>
<option name="transportCost" value="2"/>
<option name="transportCapacity" value="5"/>
<option name="canBeGivenByTerritoryTo" value="Germany:Britain:Japan"/>
<option name="isInfrastructure" value="true"/>
<option name="isAAmovement" value="true"/>
</attachment> -
@redrum Well done! Can't wait to try this little beauty out... Trains just got that much more valuable! This is going to get fun!
-
Rock n Roll Overdrive ! Nice : )
-
The PR has been merged so feel free to try it out: https://github.com/triplea-game/triplea/releases/tag/1.9.0.0.7792
-
@redrum Looking at this now. Wondering... do I have to go back and change all units that are defined as "isInfantry" immediately for thiese changes?
-
@hepps No, isInfantry will still work for now but sometime in the future support for it will be removed and all maps updated to use isLandTransportable instead.
-
@redrum Follow up question....
Let's just say you have 2 types of land transport. One being a truck and one being a train....
Lets say we leave the truck as it was originally designed... by not defining the transport capacity for the unit it should only be capable of transporting a single unit.
Now, if I add Tanks, Hvy Tanks, Mobile Art., Hvy. Art. Mech Inf. all to being land transportable for the train.... does this not mean that the truck will be capable of transporting all of these units? Seems to me it will.
-
@hepps That's correct. Any unit with no transport capacity defined is able to transport any "1" unit that has isLandTransportable or isInfantry. The potential solution there is to change trucks to have say transportCapacity="2" so they can only transport units with lower transportCost.
My general recommendation is to move all land transport units to have a set transportCapacity if any of them need that functionality so its easier to balance and more clear the functionality as it will then work the same as sea transports.
-
@redrum Yup. Was just clarifying.... since now attributing the trucks with a capacity will change some of their functionality. Need to re-think some of it and plan out the changes.
Also need to examine how this will alter the Mech. Inf.
-
@hepps Yeah, probably want to pretty much do the same for mech as you do for trucks.
-
@redrum Just tested this new feature with TWW 2.8 for the first time.
Appears to work flawlessly! Initial tests are very positive. Movement enhancements really make for a new experience.
Now the long and arduous journey begins to see how it will affect balance.