Implement variable transport speeds
Implement transports moving at different speeds depending on how many and which types of units they have loaded. Closes #6186.
Description of the proposed changes
- Each Tech 1 unit decreases the transport's MaxAirspeed by
0.15 - Each Tech 2 unit decreases the transport's MaxAirspeed by
0.3 - Each Tech 3 unit decreases the transport's MaxAirspeed by
0.6 - ACUs decrease the transport's MaxAirspeed by
1
Stat changes:
Transport MaxAirspeed: 10 --> 10.75 (Tech 1 Transports) MaxAirspeed: 13.5 --> 14.5 (Tech 2 Transports) MaxAirspeed: 15 --> 17.5 (The Continental)
Land units TransportSpeedReduction: 0.15 (Tech 1 land units) TransportSpeedReduction: 0.3 (Tech 2 land units) TransportSpeedReduction: 0.6 (Tech 3 land units) TransportSpeedReduction: 1 (ACUs and SACUs) TransportSpeedReduction: 1 (Tech 4 land units, to ensure compatibility with survival maps) TransportSpeedReduction: 1 (naval units, to ensure mod compatibility)
The TransportSpeedReduction stat can be tweaked for each unit individually, though I did not do it here for consistency reasons. For example, you can make LABs lighter than tanks. The TransportSpeedReduction stat has also been made visible in the UI in the additional unit details displayed when Show Armament Detail in Build Menu is enabled.
Additional context
- As Jip already pointed out, the change introduces a new balance knob.
- Enables more teamplay, as getting an empty transport to your teammates is faster.
- The changes would introduce a new choice for the player, allowing him to decide between a swift and less damaging drop or a slower but more damaging one.
- Nerfs arty drops, specifically Seraphim transports fully loaded with Zthuees, in an intuitive way. As Seraphim has the highest capacity transports (and the strongest Tech 1 Artillery), I regard this as a positive.
Checklist
- [x] ~~Populate the
TransportSpeedReductionblueprint field of all land units~~ (alternative approach via blueprints-units.lua) - [x] Changes are annotated, including comments where useful
- [x] Changes are documented in the changelog for the next game version
@EvildrewFAF This is my own implementation of this idea. You are obviously free to do whatever you want with it. Since your implementation is more detailed, overriding this would be the easiest solution to keep your mod compatible. Alternatively you could build your own implementation on top of this one.
@Garanas @lL1l1 If you have time, please consider giving this a review. I would be very thankful if someone could populate the UnitWeight stat with a script, so I do not have to do it manually.
Are you referring to this blueprint value: https://github.com/FAForever/fa/pull/6279
Also the stat should be added to blueprints-units.lua's post-processing for mod compatibility.
Also the stat should be added to
blueprints-units.lua's post-processing for mod compatibility.
Done. Thanks for reviewing.
Are you referring to this blueprint value: #6279
The UnitWeight stat is now populated via blueprints-units.lua. We could also populate the field in the blueprints themselves to make the stat more visible.
Are you referring to this blueprint value: #6279
The UnitWeight stat is now populated via blueprints-units.lua. We could also populate the field in the blueprints themselves to make the stat more visible.
I'll look into it for you 👍
This should be ready now, thanks for the reviews.
The balance team would like to test this out first so once reviews are happy this can be merged as apart of the next iteration.
are you happy with this now @lL1l1
are you happy with this now @lL1l1
Yes.