Mechanics to reduce micro

Discussion in 'Backers Lounge (Read-only)' started by mushroomars, July 29, 2013.

  1. mushroomars

    mushroomars Well-Known Member

    Messages:
    1,655
    Likes Received:
    319
    Currently, I wouldn't consider PA an exceptionally micro-heavy game. I consider DoWII and SC2 leagues away from PA in terms of micro density. However, I do notice some exceptionally micro-intensive scenarios cropping up, so I decided to come up with a few ideas to reduce micro without shoveling the workload over to an unpredictable AI. Note that I do not expect anythihg here to be implemented in Alpha, though I would like to see something similar in the Beta.

    Automated Transports - Transports have always been finicky and microey in TA and SupCom. It's about time this is remedied, assuming PA will have transports.
    • Automated Ferry - Upon being given a move order or a queue of move orders, a unit or group of units will check to see if there is a transport that is idle nearby. If the ETA of the transport to that unit's position + the ETA of the transport, carrying the units, to the destination is less than the unit's ETA without the transport, then the transport will be called in to transport the unit(s). The Transport will not drop units within aggro range of any enemy weapons, and upon encountering enemies, will retreat to a safe distance and drop the units. A Transport will always return to its original location after carrying out an automated ferry. Transports will, by default, not carry out automated ferries (toggle button).
    • Call for Transport - Any transportable unit can be ordered to call for a transport to pick them up, move them somewhere and drop them off. This is a sequential order; you click on Call for Transport, and then click on a destination (or hold shift to set multiple waypoints to reach a destination), and then you can continue giving orders. The idea is that you never have to actually select the transports. Idle transports will be routed the moment the button is pressed, and the Commander will be notified of how many trips the transport(s) will have to take to move all the transportables.
    • Transport Group - Working on the flipside, a transport can be ordered to pick up a group of units with a Transport Group button. Upon pressing the button, the player may use LMB and select modifiers to select a group of units, then right click to set transport waypoints and/or a destination.

    I'd also like to see regular old ferry points from SupCom, but with more synergy with factories. Instead of ordering the transport to assist the factory, you can just order the factory to send units to the ferry pickup.

    Idle Engineers - Always fun little things, these guys are. SupCom2 did this bit pretty good, though there is still room for improvement, IMHO.
    • Automated Use of Surplus - If your income is positive (both Energy and Metal), Idle Engineers will look for something to pour resources into. They will first look for units and structures in need of repair, if they can't find any nearby, they will assist any constructors nearby (fabbers or factories).
    • Automated Reclamation - So long as there is appropriate room in metal storage, and the target is outside of enemy aggro range, Fabbers will reclaim wrecks, rocks, trees, and other reclaimables. During a metal stall, focus will be on metal-bearing reclaimables; during an energy stall, energy-bearing reclaimables. If both metal and energy are stalling, focus will be on energy-bearing reclaimables, as energy stalls are more dangerous.
    • Automated Economic Expansion - Idle Fabbers will automatically construct Extractors on nearby metal points, so long as the metal is within visual range, out of enemy aggro range, and the economy isn't stalling. T2 Fabbers will automatically upgrade T1 Mexes as well as build new ones, with upgrading as a priority.

    Dynamic Army Control - For an RTS on the scale of PA, the ye olde controls from the early days of RTSes are a bit lacking.
    • Retreat Threshold - A slider that sets the health level at which a unit(s) will retreat. Retreating implies instantly reversing throttle and backpedaling until the the retreating unit ceases to be "threatened", meaning it is either out of enemy attack range, or there are friendly units between the retreating unit and the enemy. If a unit's Retreat Threshold is 100%, it will actively avoid directly engaging enemies; great for Fabbers and Artillery. If a unit's Retreat Threshold is 0%, it will press on through any damage until destroyed or reaching its destination/destroying its target. Shamelessly stolen from Warzone 2100.
    • Smart Guard - Right now, when given a guard order, a unit will do a little more than just move to an offset position and carry on happily. This should be a bit more user-friendly. "Guardians" will treat the "guardee" as a VIP, defending it and sacrificing themselves to keep the VIP alive. They will move in formation around the VIP, instead of just following it around. Air units will actively patrol around the VIP; any unit, if allowed to Roam, will intercept any threats heading towards the VIP (meaning, anything not running away or standing still, within an appropriate distance). If the VIP is destroyed, its VIPness will be handed down to the closest, most similar unit. For example, if the VIP was a tank, it would order all its Guardians to Guard another tank upon death. If the VIP has Fabbers in its guard, those Fabbers will prioritize the repair of the VIP and the Guardians. If the VIP has Transports in its guard, those Transports will be used to cross impassable terrain quickly. Any units ordered to Guard a Guardian will instead be set to Guard the VIP, in order to avoid Assist Chains and the delays that they cause.

    All of these options to reduce micro can be handily turned off in-game with an 'Army Control' panel on the left side of the screen, similar to the Orders panel... But instead for army control. It would contain global toggles for all of these options, as well as diplomacy options, text alerts and map overlays.

    Criticism and suggestions are welcome.
    Last edited: August 10, 2013
  2. Stormie

    Stormie Active Member

    Messages:
    122
    Likes Received:
    28
    Those are all very positive suggestions (i remember the utterly paintful process of loading up a hulk or a bear on TA, then having to unload at the other end.)

    The only thing id worry about every additional control thats added increases the learning curve for the game. keeping in mind its entirely likely that the game will not come with a tutorial as these are usually built into the first few missions of the campaign.

    things like the idle engineers etc are no brainers
  3. annihilationpunk

    annihilationpunk New Member

    Messages:
    7
    Likes Received:
    0
    Some good suggestions here, I particularly like the transport ideas. Given the game will eventually be on an interplanetary scale transport units will eventually be very important (assuming that most will units lack the ability to go IP on their own).

    Possibly you could set supply line style ships between planets with a pick up and set down point and either a round trip ETA and queue system or a leave whenever full, disposable style shuttle. Defending or interrupting these lines would likely occur in a blockade/runner style at the destination or departure world.

    The fabber stuff is good too but the auto-build econ stuff could feel a little over automated. You might end up only really deciding what type of unit to build through placing fab structures and queuing units and then smashing armies together. The auto reclaim for idle fabs sounds really good though.

    Perhaps given the scale of the game the auto-fab and auto-retreat stuff will be not only useful but necessary to keep people on top of it all.
  4. GoogleFrog

    GoogleFrog Active Member

    Messages:
    676
    Likes Received:
    235
    I have an issue with Automated Ferry, Automated Reclamation and Automated Economic Expansion. In the descriptions of these you say that the AI will take into account 'enemy aggro range' and I think idea is hard to capture in an algorithm.
  5. YourLocalMadSci

    YourLocalMadSci Well-Known Member

    Messages:
    766
    Likes Received:
    762
    Yes. Very Yes. I have been contemplating making a grand post which categorises every AI/Automation suggestion that has been made, and these kind of ideas would really help.

    Not necessarily. Remember, these aren't a foolproof AI where the player simply has to throw the switch, and then leave to make a cup of tea. They are tools. And like all tools, knowing how and when to use them is more important than the tool itself. TUrning these things on in an environment where the enemy is constantly raiding and probing defences would just be a time-lagged delete key for fabbers. You need to know when the right time to use it is.

    It doesn't need to be too complicated. Simply "if i see an enemy military unit, go back the way I came" would probably capture a lot of the desired behaviour. I'm sure more complex heuristics would do better, but a simple "anti throwing themselves away in enemy fire" mechanism would be something I would be quite happy with.
  6. smallcpu

    smallcpu Active Member

    Messages:
    744
    Likes Received:
    72
    While I also agree that we need better systems to deal with the larger scale I heavily disagree with any and all of those automation systems insofar as that automation means that the game makes decision for me. (For example: automatic starting to build stuff without explicit orders from me.)

    I think such automation can be easily avoided by giving us advanced UI tools that allow large scale and specific orders.


    I greatly dislike this idea as it takes control away from me and would be suicidal in any situation where enemy AA is available. (No transport can drop stuff fast enough when enemy fighters suddenly close in on them.)

    That on the other hand is an useful system and it still gives me controll how and when units get moved. (Ofc the transports itself would be prone to dying as they'd be called automatic. But its my responsibility to have transports nearby when I give the order or to only order it when its in a safe area.)

    No no no. I placed my idle engineers there for a reason and they never should move without an order from me.

    Again, no. I order my fabbers where they are and they can't move without my orders.

    So I can't put fabbers near metal points anymore or else they wander of to do stuff without my orders? Bad bad bad.
    Also, how should I gouge my income and when to build expensive stuff when my surplus always gets automatically used?

    While I don't object to those on general principle, I don't see them useful on the scale PA is.


    -----------------------------------------------------------------------

    Now for what I'd do. Give us area orders and allow area orders to be existent on their own and to allow all other order types.

    To explain: An area order is a circle drawn by the player (actually its a zylinder intersecting with the planets surface for computation but it would shown as a circle to the player).

    Draw a circle over multiple metal spots, choose metal extractor from the build menu and then send fabbers there with a right click (if there are multiple overlapping circles, selecting the correct circle first will force the right click to choose that circle) and they'll build metal extractors on all the spots in the circle and return to idle once they're finished. (Shortcut, select the fabbers, choose metal extractor, draw a circle with it, done. Same amount of clicks as the current system but for mutliple spots.)

    It still gives me all the control I had before but simplifies multiple individual tasks.

    You can expand such a system in multiple ways to deal with most issues that would also be available to automation. (Draw multiple circles over the base while holding shift to mark a greater area or select multiple individual circles and use some button ctrl+something to create a larger area. Then set the circle to patrol. Give an air factory a move order into that circle. All newly build planes instantly start to patrol in that area. You can always give more factories or even individual units the order to use that patrol circle by setting a move order into it (while having the circle selected ofc, else it would be annoying to give move orders inside your base...) or take units and factories out of it.

    -----------------------------------------------------------------

    Well, thats an example of an UI system that gives me great control and doesn't requires unit automation. Doesn't have to be something like this, but there's a lot of ways one can make a more powerful UI for RTS without having to resort to automating behaviour (where the automatic behaviour takes control away from me).
  7. igncom1

    igncom1 Post Master General

    Messages:
    7,961
    Likes Received:
    3,132
    I have never been too fond of a retreat mechanic where units auto retreat for 2 reasons:

    Firstly, attacking is a controlled mechanic, where the player decides to commit a force to an attack, so why should retreating be automated when it is the withdrawal of forces form an engagement? I feel like that should be in the hands of the player to decide, otherwise you end up with a mostly automated battle and where is the fun in that?

    Secondly, in a game like TA, PA, SC and even most other kinds of RTS games your forces are usually disposable enough that retreating has little to no value when you could cost the enemy more resources to simply keep fighting, even in SupCom the loss of a group of tanks was no big deal in any size of game.

    So its the kind of automation that I disagree with personally, I like my tactical smart sure, but in my hands.
  8. GoogleFrog

    GoogleFrog Active Member

    Messages:
    676
    Likes Received:
    235
    I agree quite closely with smallcpu except we have different definitions of automation. His suggestions are how I would go about implementing automation. It should never get in the way or remove player choice. I am the sort of person who sets all their units to hold position because I don't want them to move away by themselves.

    As for the definition of automation I think it is pointless to discuss. Call it whatever you want. Units chasing nearby enemies for a short distance could be called automation.
  9. YourLocalMadSci

    YourLocalMadSci Well-Known Member

    Messages:
    766
    Likes Received:
    762
    I understand the position here, but i would like to hear why this position should the same for everyone.

    If these features were implemented to some degree, then a player who doesn't like them, and feels they take away too much control always has the option of just not using them. If they are not implemented at all, then everyone must play in that style.
  10. bobucles

    bobucles Post Master General

    Messages:
    3,388
    Likes Received:
    558
    User input will always do what the player wants, 100% of the time.

    Automation is a recipe for "what the hell are you doing nono cut it out FFFFFFFFFFRFFF".
  11. YourLocalMadSci

    YourLocalMadSci Well-Known Member

    Messages:
    766
    Likes Received:
    762
    The attitude of "let's limit automation because one day it will do something irritating" is a foolish one. Good TA-style-game players become experienced in using the automation to the fullest, just as good starcraft player become proficient at doing everything manually. Automation is a tool at the players disposal. If you are regularly finding that it is having a detrimental effect on your strategy, then you aren't using that tool effectively. It's up to the player to recognise how to use it best, and turn it off in those situations where it is likely to fail.

    Automation, doesn't need to be perfect in the same way that manual control isn't perfect either. I would rather have an automatic system which fails one time in ten, than a manual system which does nothing ten times out of ten.
  12. bobucles

    bobucles Post Master General

    Messages:
    3,388
    Likes Received:
    558
    The point of an RTS is to pit player choices against player choices. If an option is so simple and straight forward that the computer can take care of it, then there never was a choice in the first place.
  13. mushroomars

    mushroomars Well-Known Member

    Messages:
    1,655
    Likes Received:
    319
    I tried to write all of the OP implying that all of the automated behavior could be toggled off in the options menu, as well as in the unit orders box. Guess I should have added that as a forenote. If you don't want automation, you don't have to have it, and if your micro is good enough you don't really need it. This is one of those "quality of life" kind of things that even the most Starcraftian player will need once they start fighting battles on multiple planets.

    And when I was writing up the part about Automated Economic Expansion, there was that little voice in the back of my head saying "Nope, nope nope nope. Too much, even YOU won't like this one."

    I also agree with smallcpu's suggestion, with a slight modification. Instead of creating a circle, you can "paint" metal extractors onto metal points. Just click on the metal extractor, and paint extractors onto metal points in the direction you want engineers to expand.

    As for enemy aggro range, that pretty much means 1.1x their attack range.

    Edit: Bobby, managing an interplanetary war machine is alone very hard to do. Not all of these suggestions are ideal, they're just there to keep as little distance between the player's intentions and their army's behavior. Aren't you glad I didn't include "Automated Leveler Kiting"? :p
  14. YourLocalMadSci

    YourLocalMadSci Well-Known Member

    Messages:
    766
    Likes Received:
    762
    Exactly.

    So let the computer handle those bits while we do more important stuff.
  15. mushroomars

    mushroomars Well-Known Member

    Messages:
    1,655
    Likes Received:
    319
  16. bobucles

    bobucles Post Master General

    Messages:
    3,388
    Likes Received:
    558
    It's even simpler to get rid of the pointless stuff.
  17. mushroomars

    mushroomars Well-Known Member

    Messages:
    1,655
    Likes Received:
    319
    Okay, getting rid of the pointless stuff.
    -All weapons now instantly damage their target, in order to prevent randomness in engagements
    -Resource income entirely depends on map control, no need to place metal extractors
    -Energy is entirely removed
    -Mexes spit out tanks, using up all of their metal income
    -Bots are removed because they require micro
    -Air is removed because it requires micro

    We sorta end up with this:
    [​IMG]

    But, you know, on multiple planets. Have fun.
  18. bobucles

    bobucles Post Master General

    Messages:
    3,388
    Likes Received:
    558
    Yes. Clearly that is what I meant. You certainly nailed it.
  19. mushroomars

    mushroomars Well-Known Member

    Messages:
    1,655
    Likes Received:
    319
    Then explain what you mean.
  20. GoogleFrog

    GoogleFrog Active Member

    Messages:
    676
    Likes Received:
    235
    I'm interested in automation which I would actually use. As in if it's annoying or too tedious to toggle I will leave it disabled. I've found that for automation to work it must be very easy for a player to define when it is used.



    I just thought of a good example of easy to use automation using Starcraft 2 (surprisingly).

    In Starcraft 2 units have to be stationary in order to fire. Organizing your units with combinations of Move and Stop orders would be micro hell, luckily there is a command called A-Move. An A-Move is identical to a Move command except that if a unit with an A-Move encounters something that it can shoot at it will stop and shoot at it.

    This is a type of automation which has a very good UI. Players merely have to give a different type of order to their units. This leads to many nice things such as the ability to switch between Move and A-Move in a split second as well as the ability to queue different types of Move and have some units A-Move while other units Move. With this command players can switch between two types of unit AI in a very natural way on a per-unit basis. It is quite powerful.

    Now imagine that the game was created without the A-Move command. This is not to say that the developers ignored the fact that manually stopping each unit to attack is an unwanted micro sink. They realised this fact and did something about it. Their solution is a nifty bit of automation which stops your units as when they are in range of a valid target and automatically engages it. They can see that some players wouldn't like this feature as they have enough micro to stop their units themselves. There are also situations in which the player will want their units to move past enemies, for example in the advanced strategy of "walking past your opponent's army and killing their workers". To accommodate these needs the Automatic Stop To Attack feature can be toggled through the menu.



    The ideas as outlined in the OP are akin to an Automatic Stop To Attack feature which can be toggled through the menu. Applying this type of automation globally is going to go poorly because it will not be relevant for every unit you own. A toggle through the menu is unwieldy. For something to be useful I think it has to be as easy as giving an A-Move command. Want to reclaim that wreckfield? Select some constructions, press 'R' and drag a circle.

Share This Page