Factory Management

Discussion in 'Planetary Annihilation General Discussion' started by ledarsi, February 27, 2014.

  1. ledarsi

    ledarsi Post Master General

    Messages:
    1,381
    Likes Received:
    935
    PA's current gameplay design of factories is quite good. Factories are inexpensive and numerous, they have relatively high build power, and they are more efficient to use to mass-produce units than to mass-assist. This is great. However these facts also make managing a large number of factories quite burdensome on the player, and I would like to see some UI sauce to reduce the number of clicks needed to manage your industry, in addition to your economy.


    Rally Points

    Without going full-blown Orders as First Class Entities, I do think that a very useful UI entity would be a rally point that can be placed independently of any particular factory. Giving players the ability to place and move points on the map which serve as independent rally points for factories on the planet would greatly simplify rallying units, splitting production to multiple areas, and controlling unit production and deployment.

    I imagine a panel on the left side of the screen which contains any high-level UI functions, including a button (with hotkey) to create rally points on the map. By clicking the button or pressing the hotkey, the player can click on the map to designate a rally point. Each point can be selected, moved, modified, and deleted.


    Production Using Rally Points

    When selected, the rally point has a build menu as if it were a factory, but can potentially requisition any type of unit. By adding units to the rally point's "production" no units are produced directly. However, the rally point will send orders to factories to build the units it needs. When those units are produced out of a factory, they will go to the rally point.

    If there are multiple rally points, they will be evenly distributed between requests so rally points with a large number of requests backed up will get more units. Suppose there are two rally points, one asking for 90 Dox, and another asking for 10 Dox. The rally point with a backlog of 90 will have a 90% chance of getting the next Dox off the factory, shrinking its backlog by one.

    Once a rally point is "full" because it has acquired its desired number of units, it will stop requesting more units, and newly produced units will go to other rally points. If the player moves the units on the rally point away, it will start requesting units again. Or, a rally point can be set on infinite repeat and it will request units from factories in the desired ratio forever.


    Advantages of Rally Points

    The huge time and APM saver of the rally point concept is the separation of a player's production management from their control over their deployment.

    If a player only wants to send units to one location, then an arbitrarily large number of factories can all automatically rally to a single rally point. This rally point can be moved when the player wants to move the rally point for all factories, and the production for all factories can be managed together from the rally point. Any number of factories can be ordered to construct any desired mix of units (e.g. 5 Dox, 3 Stingers) without issuing orders to each factory individually, and without manually issuing orders to each newly completed factory.

    Conversely, if a player wants to split their units across lots of different locations, they can make a large number of rally points, regardless of how many factories the player has constructed. These points can be moved or removed as the war develops and control of territory shifts. Again, adding more factories is a single command to construct the infrastructure. Once completed, the factory will seamlessly and immediately start accepting requests from any rally points the player has placed, and begin building.


    Conclusion

    Managing a large and growing number of factories in PA is a considerable burden on the player. Every factory has its own production queue and rally point which must be assigned individually once the factory is completed. But in practice you generally have a fairly cohesive desired army and deployment plan, and most players would prefer if their factories could be managed together.

    Rally points which are placed independently of any particular factory are one possible approach to a factory management system that would automatically manage the player's industry as the player directs. A rally point instructed to obtain a certain mix of units can coordinate any number of factories to put the player's single order into effect across a large number of factories.
    Pendaelose, drz1, calmesepai and 5 others like this.
  2. emraldis

    emraldis Post Master General

    Messages:
    2,641
    Likes Received:
    1,843
    This is a very cool idea! If I get what you're saying, you suggest that rally points should be something we place, from which we requisition units? If that's the case, then the main issue I can see with this is having access to all the units at the same time would likely clutter the UI a bit. Otherwise it's pretty cool.

    Perhaps you could make a structure that does this, but also keep the current method? Not sure how exactly that would work though, order priority-wise.
  3. ledarsi

    ledarsi Post Master General

    Messages:
    1,381
    Likes Received:
    935
    I agree that UI clutter could be an issue. However, compact UI for a list of units is doable, such as by having one category for each factory at the top level, and then that factory's build list at the level beneath. Representing a long list of buildable units in a way that is easy to grasp and to utilize can definitely be done.
    Pendaelose likes this.
  4. cptconundrum

    cptconundrum Post Master General

    Messages:
    4,186
    Likes Received:
    4,900
    I have seen the idea posted before to allow factories to be given orders before construction starts on them by selecting the wireframe. This seems really cool too, because it would keep us from needing to come back and give new orders.
  5. emraldis

    emraldis Post Master General

    Messages:
    2,641
    Likes Received:
    1,843
    That's one way to do it, but it would add extra clicks, which some people don't want. Oh well, can't please everyone!
  6. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    He's alive!

    I have objections.

    Probability based acquisition - that means that the group of 10 will get filled after the group of 90. If both groups are on infinite, the group of 10 will get filled very slowly every time. But you would think because it's a smaller group, it gets filled more quickly. I find that annoying personally.

    It would be nicer to set the priority yourself, and if no priority set, they get a 50% split.

    I'm thinking stingers for air defence, and stingers as part of your army. You may only want 10 stingers to protect fabbers. But they need more priority than the stingers you're amassing as part of your army.

    I really like this idea though! It basically sounds like my battlegroups idea. In fact it is the battlegroups idea. It's beautiful.
  7. emraldis

    emraldis Post Master General

    Messages:
    2,641
    Likes Received:
    1,843
    I think it would be interesting to do it via a "beacon" structure that anything could construct. The beacon could then have rally points of it's own, so that all of the units that rally to it then go and have their own orders. That might be useful for having things like base patrol fighters separate themselves from attack fighters, combat fabbers separating themselves amongst your mine-layers and your combat healers, etc. etc.
  8. cptconundrum

    cptconundrum Post Master General

    Messages:
    4,186
    Likes Received:
    4,900
    I'm not a fan of artificially crippling the ui unless you build a certain structure. That feels kind of like "you must construct additional pylons."
    Quitch, godde and stormingkiwi like this.
  9. emraldis

    emraldis Post Master General

    Messages:
    2,641
    Likes Received:
    1,843
    I don't mean it as a replacement, I think of it more as a "global rally structure" which would take some of your total unit production to do something.
  10. cptconundrum

    cptconundrum Post Master General

    Messages:
    4,186
    Likes Received:
    4,900
    Right, but you should just be able to do this without building a rally structure. If we agree that rally points like that are useful, why limit their use?
    stormingkiwi likes this.
  11. emraldis

    emraldis Post Master General

    Messages:
    2,641
    Likes Received:
    1,843
    Well how would you get a tithe from ever available factory without some sort of thing that you have to place down anyway? Easiest method would be through a cheap structure as far as I can see. That doesn't limit or defeat the current rally system, it just helps add depth to it.
  12. nixtempestas

    nixtempestas Post Master General

    Messages:
    1,216
    Likes Received:
    746
    I really like the idea of rally points requisitioning units.

    The problem I see is it could be awkward with lots of proxy bases.

    A potential solution I see is have a rally point area command. Every factory in the area will be set to that rally, and build orders in the rally will distribute to those factories.

    so for example, if I have 3 bot factories and 3 vehicle factories on a proxy base, click rally button, click location, (cursor changes slightly to indicate rally point set) click and drag circle around the factories. Voila, now the rally can requisition bots and vehicles from those 6 factories.
    Pendaelose and emraldis like this.
  13. cptconundrum

    cptconundrum Post Master General

    Messages:
    4,186
    Likes Received:
    4,900
    Ledarsi's post is one way, but I think the SupCom way was simpler. Allow factories and units to use existing waypoints and then allow players to click and drag waypoints around.
    Quitch likes this.
  14. emraldis

    emraldis Post Master General

    Messages:
    2,641
    Likes Received:
    1,843
    that works too, but I do like the tithing functionality that he proposed.
    stormingkiwi likes this.
  15. cptconundrum

    cptconundrum Post Master General

    Messages:
    4,186
    Likes Received:
    4,900
    It's a really interesting idea, for sure. I just worry that it isn't quite intuitive enough and might take too many clicks to use effectively.
  16. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    Me too.

  17. tylerseacrest

    tylerseacrest Member

    Messages:
    56
    Likes Received:
    19
    I really like this idea but, as others pointed out, there are a few problems with production. To fix this I would like to propose adding a radius and attraction settings to the rally point.

    The radius would of course be adjustable by click and drag, like area commands, and would limit the rally to only effecting units in the radius. Thus individual rally points for expansion bases can easily be set.

    The attraction settings would determine what type of units the rally point would effect. This could differentiate between new units, idle units, and all units. Thus if one wanted a few bot fabbers but did not want to pull any off their current projects one could set the rally point for idle and new units so that it would first find idle fabbers and then queue up new fabbers if there are not enough idle.

    I also think that the priority setting should be manual

    The GUI for all these settings would be a bit difficult but I believe it could be done. I think that all of the settings need to be able to be set before or during the rally point creation so if you want several groups of mixed units one could set up the rally and the click and drag once for each group.

    One last thought here, it would be amazing if this could be used for buildings as well. Set a rally point with a radius and then tell it to build a few anti-air towers and it automatically requests a fabber and queues up the anti-air towers in an even distribution over the area. Request more fabbers and they are assigned to assist the first one.
    Last edited: February 27, 2014
  18. ledarsi

    ledarsi Post Master General

    Messages:
    1,381
    Likes Received:
    935
    You are correct that distance should also matter when determining which factories should go to which rally points, but weighting in favor of closer factories is very simple by comparing the times needed to move from factories to the rally point. Rally points should prefer units from closer factories, just as a matter of optimization to prevent units from wasting time.

    Let's not forget that the primitive move commands for factories would still be available. If you want a certain factory to do something different, or special, give it specific orders and it should override your general policies for everywhere. For example, you could order a specific factory to always send its units to a specific rally point, or arbitrary position on the map.


    This is starting to add more functionality, but you could have other types of map objects that might control units' and structures behavior in other ways. As tylerseacrest suggested, another potentially useful feature might be routing unit movement using map points. One possible feature would be a point that reorganizes units within a certain radius. The same point might be used to automatically rally factories within the radius to itself. Again, feature creep until we eventually get to full-blown OFCE's, but points might be able to issue orders to units, such as move commands to a different location. A point that grabs units within its radius and reorganizes them could then send them somewhere else could be used to give specific orders to a single base which persist.

    Manually overriding priority settings is certainly possible, but I suspect that a well-designed system using either flat distribution or proportional by number of requests would work very well under most circumstances.
    Pendaelose likes this.
  19. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    Oh: Also I don't think attraction settings are needed.




    Say you have 3 factories, and one rally point. The rally point is 500 seconds for a dox away from factories A and B, but only 10 seconds for a dox away from C.

    Do the maths. It takes 10 seconds for a dox to build, and 3 seconds for it to walk off the factory.

    For the two Doxen that walk into the zone from A and B, there will be 39 Doxen from C. If you want 90 Dox, that means that there will be 17 from A, 17 from B, and 56 from C.


    However, if you restrict that so A and B aren't providing units to the rally point, it takes 1170 seconds for C to provide all Doxen to the rally point.

    Compared to 728 seconds for A, B and C to provide units to the rally point acting together.
    vyolin likes this.
  20. ledarsi

    ledarsi Post Master General

    Messages:
    1,381
    Likes Received:
    935
    Yes, but suppose you have multiple rally points and multiple bases. You want the bases on the right side mainly sending units to the rally points on the right side, and the bases on the left side mainly sending units to rally points on the left side. As the difference in distances increases, the preference for the closer rally point should increase.

    There should be some preference for closer rally points to prevent bases from evenly distributing their units between closer rally points and all other rally points, while every other base does the same. A preference for closer points makes each base focus on closer points, which is more efficient.

    But I agree that attraction settings are probably more customization than is practical or even useful.
    Last edited: February 27, 2014
    Pendaelose likes this.

Share This Page