Assisting Factories Inherit Control Groups

Right now when a factory is in a control group, any units built by said factory will inherit that group. You can then select the units in a group with one keybinding, and the factories in said group with another keybinding. This is neat, but I have some suggestions:

  1. When a factory is assisting the build queue of another, the units built by the assisting factory don't inherit the control group of the assistee. When a factory is assisting another, have the assist-constructed units inherit the control group of the assisted factory, but have any "side project" units in the assister build queue inherit the the assisters control group (if there is one).

  2. When a control group is set for units only (eg there are no factories selected when you press ctrl + num, in the default keybinding) don't strip the control group from the current factories. Likewise, if only factories are selected when the control group is set, don't strip group number from any units currently in the group.

  3. (minor) Currently when you set the control group of a factory (even if it's to the same one, like when adding additional factories to an extant group) and a unit is being construction, that unit is stripped of its control group and doesn't inherit the new one. It would be nice if any unit under construction got the number of the new control group when the group of the factory is modified.

tl;dr:

  • assisting factories inherit control group
  • changing control groups of units doesn't affect factories in the group and vice versa
  • when the control group of the factory is changed, any unit currently under construction gets the new group

Should also allow Factories to Assist engineers/units

Never Fear, A Geek is Here!

to add some context where this could be useful:

where possible I try to assign my tier 2/3 engies to control groups 2 and 3 - this gives them an icon and lets them be quickly selected.

being able to assign a control group to a support factory to spam out some higher tier build power that is automatically assigned would be of benefit, without said factory also assigning the same control group to units it builds when slaved to a master

could also be of use for air scouts/spy planes

@Jip not sure if this can be changed in the engine however...?

Re point 1 (inheriting control groups) I might have my factories go to different locations on the map so would want them to have different control groups.

Re point 2, if I select units and give them a control group I expect that to overwrite any existing groups. With your suggestion it sounds like that would be actively prevented.

3 I wouldnt have an issue with

If points 1 or 2 were to be implemented I’d want it to be as a ui mod or togglable preference

@maudlin27 said in Assisting Factories Inherit Control Groups:

Re point 1 (inheriting control groups) I might have my factories go to different locations on the map so would want them to have different control groups.

Yes, definitely. For a factory producing units from its own queue, that factory's control group would take priority.

Example: Factory B is assisting Factory A. Factory A is set to ctrl group 1, and Factory B is set to ctrl group 2. Factory A is producing interceptors on loop with orders to patrol your front line. Any interceptors produced in an assisting capacity by Factory B will be assigned to ctrl group 1 and inherit the patrol order, but if you insert a transport into the queue of Factory B that transport will be assigned to group 2 and inherit whatever B's local orders are.

Ctrl group inheritance would only occur when one factory is assisting another, and then only when the assisting factory is constructing units from the master factory's build queue.

No reason not to toggle (aside from option bloat) but I'd argue how it functions now is mildly unintuitive.

Re point 2, if I select units and give them a control group I expect that to overwrite any existing groups. With your suggestion it sounds like that would be actively prevented.

Totally fair, toggle would be necessary in this case to prevent hidden functionality.

@black_wriggler

...

This is the exact use case that inspired me to write this post (+ transports). Fingers crossed on feasability.