Consider trimming campaign com weapons list
Somebody wants dual wielding basic weapons on the campaign comm, but there are not enough engine weapon slots. Regardless of whether we actually want to allow dual wielding (I like how you are somewhat forced to have variety), cleaning up the list might be good.
https://github.com/ZeroK-RTS/Zero-K/blob/3daf9cae326c34f100ac72ec8c54d75a17f87c15/gamedata/modularcomms/dyncomm_chassis_generator.lua#L112-L142
- hpartillery is unused.
- HPB and Shock rifle are bugged. Maybe it's a good idea to fix before removal so that modders could trivially reuse it though. https://github.com/ZeroK-RTS/Zero-K/issues/4448
- peashooter seems not used, but used to be the default historically so some code may assume it exists as an option. Note that it's also listed twice.
- perhaps the big modules like paralyzer +2s stuntime could be made dynamic as well instead of requiring a separate instance?
- dual-wielding would be exclusive with a manual-fire weapon so there could be a clone with two copies of basic weapons but no manualfire ones (using the 0101 clone system that handles shields, jump etc).
- dynamic weaponry like this sounds like a common modding desire so maybe a lua api to replace weapons on individual units could be a good engine request.
dual-wielding would be exclusive with a manual-fire weapon so there could be a clone with two copies of basic weapons but no manualfire ones (using the 0101 clone system that handles shields, jump etc).
What would be nice is true weapondef replacement engine side. Something like Spring.ReplaceUnitWeapon(unitID, weaponNum, weaponDefID) would allow infinite weapons.