Advertisement

Controlling units (RTS)

Started by May 15, 2001 07:31 PM
7 comments, last by Sandman 23 years, 3 months ago
One of the things I have been thinking about lately is how to give the player a suitable amount of control over his units. (ie enough to plan and execute a decent, non-tankrush strategy, yet not so much that the player gets bogged down with oodles of complicated menus and option buttons etc, and so decides to give up trying to figure it all out and just goes on ahead and tankrushes anyway) My idea of how to do this is as follows.... You have a number of general orders (maybe three or four) which can be assigned to any unit. e.g - Assault (close with enemy and attack at close range), support (stay put, attack enemy at long range) etc... The end result depends on the unit being ordered (some are better at carrying out some orders than others - for example, a howitzer isnt terribly effective at close range, but is very potent at long range. Giving the howitzer assault orders will be relatively ineffective, whereas giving it support orders will be good. Other units are more flexible, such as infantry - these will have rifles for long range attack, knives/explosives for close range attack, the ability to be stealthy etc..) The result also depends on the target, you might have some sort of results matrix that looks something like this..
            
Marine Orders Matrix   (sample)

Order..............|..Target...............|..Resulting action 
Assault/Escort.....|..Hostile Infantry.....|..Unit closes and attacks the target in close combat 
...................|..Hostile Armour (Tank)|..Unit closes and attempts to destroy target with 
                                              explosive charges
...................|..Hostile Building.....|..Unit closes and attempts to destroy target with 
                                              explosive charges
...................|..Friendly Unit........|..Escorts the target unit, protecting it from enemy assaults 
...................|..Friendly Building....|..Occupies and defends the building  
Support............|..Hostile Unit.........|..Unit moves just within range and attacks
...................|..Hostile Building.........|..Unit moves just within range and attacks (units inside)
...................|..Friendly Unit........|..Keeps in range, provides long range cover for the unit
...................|..Friendly Building....|..Occupies the building and defends it
Capture/Commandeer.|..Hostile Infantry.....|..Closes with the unit and attempts to 
                                              disable it/capture it.
...................|..Hostile Armour.......|..Closes with the unit and attempts to 
                                              overwhelm the crew. If successful 
                                              (usually unlikely), they can 
                                              take control of the unit.
...................|..Hostile Building.....|..Closes and attempts to take the
                                              building by force.
...................|..Friendly Unit........|..Takes charge of the target unit, which 
                                              will mimick any orders given to the 
                                              commandeering unit, until it is assigned
                                              specific orders of its own.
...................|..Friendly Building....|..Occupies and defends the building.
No Orders..........|..N/A..................|..Signals completion of previous order, 
                                              awaits response. If no response is 
                                              recieved in a certain amount of time,
                                              unit retreats to nearest friendly location 
          
So with just three different types of order you can get a whole load of different interactions to explore. There is also a priority level which determines how singlemindedly the unit carries out its goal. So if the priority is set to maximum, the unit carries out the orders regardless of its own safety, and ignoring all else. If the priority is lower, the unit will be more careful, avoiding/retaliating against units that directly threaten it on its way, and perhaps running away and abandoning the mission completely if they are getting hammered. Although this may seem rather more complicated than point and click, the idea is that a fairly detailed order can be given with a couple of mouse clicks, and the unit can be left to its own devices for a while, only needing more orders when it has completed its current objective. Another thing I would like to add, is the ability to trigger orders with a signal. So you could assign a whole load of units with orders which will only take effect when you hit a certain key, which should make it possible to coordinate fairly large groups of units, provided you have the time and forethough to plan your attack. If you also add the ability to queue orders, you can set up detailed missions for a unit without having to babysit it too much while it carries it out, perhaps leaving you free to launch a heavy assault elsewhere.... Furthermore, point and click gaming would still be possible... by having default orders (depending on the unit) which will take effect if nothing else is specified, the game will still be accessible to conventional RTS players, but they will (hopefully) realise the advantages of thinking their attacks out more carefully and using the orders to their potential. Any criticisms/ideas/other comments? Edited by - Sandman on May 15, 2001 8:52:29 PM Edited by - Sandman on May 17, 2001 6:37:13 AM
Hey, Sandman. I like that idea. Your system keeps the user interface simple, yet flexible. The player can accomplish a good deal, without struggling to learn the controls.

I''ve always wondered why fighting games don''t do this more. Why is the command for one character''s leg sweep different from another''s? That creates confusion when switching characters. Your system eliminates the problem of figuring out how to control different units.

I also think it''s important to consider that the main interface could remain fairly constant, while allowing diversion. (Gee, that''s not very clear, is it? Have I forgotten how to communicate? ) I mean that while each unit might share many basic commands, some units may need unique commands anyway. A unit which is capable of many methods of attack or maneuver may warrant more options.

An aircraft might be well suited to a single attack command. Depending on the situation, the aircraft will use the appropriate weaponry. But an aircraft carrier, on the other hand, has many more options at its disposal. The player may want to be able to choose whether his carrier launches missiles or an air strike. This expands the strategic options. In this case, limiting the carrier to a single attack command which would be interpreted by the computer would limit the player''s freedom unnecessarily. So in a case like this, a separate "air strike" command might be warranted.

But keeping the command interface as similar as possible from one unit to the next is definitely a good idea. It eases the learning curve. And it is also more intuitive. That means the player can spend less time selecting controls, and more time enjoying your game. Good job!


Jonathon
quote: "Mathematics are one of the fundamentaries of educationalizing our youths." -George W. Bush
Jonathon[quote]"Mathematics are one of the fundamentaries of educationalizing our youths." -George W. Bush"When a nation is filled with strife, then do patriots flourish." - Lao Tzu America: Love it or leave it ... in the mess it's in. [/quote]
Advertisement
Oh, I forgot to mention something. This thread seems to extend past
the borders of the screen (on this computer, at least.) I think
it''s because the table you presented was so wide. It might be
better to make it narrower next time.

I''m typing this post using line breaks, but I''m not sure whether
that will make this easier to read or not.


Jonathon
quote: "Mathematics are one of the fundamentaries of educationalizing our youths." -George W. Bush
Jonathon[quote]"Mathematics are one of the fundamentaries of educationalizing our youths." -George W. Bush"When a nation is filled with strife, then do patriots flourish." - Lao Tzu America: Love it or leave it ... in the mess it's in. [/quote]
My own personal idea of how units should be controlled in RTS is that the player should be allowed to create his own custom set of commands.

What I mean by that, is that there should be a complete freedom for the player to create shortcuts and combinations for each and every command that the designers created.

Example:

Three different units.
Short range
Medium range
Long range

The player wants to have one control key give each unit a somewhat different command.

First he defines which command he wants for each unit. For the short range unit he picks ''advance as fast as possible and attack once in range and stay close to enemy''. For the medium range he picks ''advance steadily until in range, then fire at enemy. Move towards enemy when he moves away, but keep position when enemy advances.'' For the long range unit he picks ''advance slowly and attack once in range. When enemy retreats keep position, when enemy advances, move back accordingly.''

He now assigns a key or key-combination for this custom command. Let''s say the A (advance) key.

I think when this is used as an option, it could allow the player to prepare himself better for an attack. Plus, it allows the designers to come up with as many commands as they want, forcing the player to pick the ones that HE uses the most to be assigned to simple key commands and assigning the ones he uses least to more difficult key combinations.

Might sound a little confusing, but I think this system would work a lot like a real battle would, in that the general (player) has to design a system of commands to be used (flags, command words etc).

The control interface could be as simple as needed and as complicated as desired. Plus, the designed control system would affect the way the player plays the game and vice versa.


You either believe that within your society more individuals are good than evil, and that by protecting the freedom of individuals within that society you will end up with a society that is as fair as possible, or you believe that within your society more individuals are evil than good, and that by limiting the freedom of individuals within that society you will end up with a society that is as fair as possible.
I like Silvermyst''s idea a lot - it is sort of like a Set Play routine (which I''m sure army squads would train to do). Instead of saying: "Guys, let''s move in really fast, keep shooting the enemy, and maintain our position at all times", the sergent would say "Hammerhead position" or something equally appropriate for a macho commander type guy to say.

Also, sandman: most (all?) RTS''s at the moment automatically make the choice of action depending on what the target is (ie. the unit wouldn''t try to attach C-4 to an attack dog), so the real crux of your system is the three button possibility ( assault, support, capture ) How were you planning to implement this (control wise). You *could* use the three mouse buttons, but not everyone has a wheel capable of clicking (or a wheel at all), or maybe the user holds down a key while clicking? You could have a button somewhere on your display that says "Assault mode / Escort" for extreme newbies, but obviously that''s no good in the long run.
Jonathon: Thanks for the feedback. You''ve pretty much hit the nail on the head in terms of what I am trying to do - namely generalise the control system so that one interface fits all. I hope that by carefully thinking of all the different types of orders, any units special abilities can be used automatically through a common interface, in a situation where it makes sense.

PS I fixed the table a bit, see if that helps.

SilverMyst: I like the idea, but my only concern is the complexity of it may limit your audience to hardcore programmer types who are prepared to sit down for ages and work out a series of command scripts for all of his units. In any case, you will need a basic set of default scripts which will be good enough for average/learner players so they can learn the game.

Freshya: well, yes and no. In most RTS''s it goes something like this...

Hostile unit/building.... Move within range and attack
Friendly unit/building... Follow/do sod all
No orders................ Sit there like a lemon and let yourself be killed

As for the details of the interface, I agree that you should *never* rely on users having fancy mice/input devices. The commands would be available as icons on the screen, and as keyboard shortcuts, with options to set up fancy control devices such as 5 button wheel mice to make things easier.
Advertisement
SANDMAN:

Yes, of course there would have to be a preset set of commands that a rookie player can use. The ''design your own'' is more of a feature for veterans who want to expand their game to the next level.

I see a player finetuning his set of commands to fit his own army. The commands actually become part of the game, part of the strategy.
You either believe that within your society more individuals are good than evil, and that by protecting the freedom of individuals within that society you will end up with a society that is as fair as possible, or you believe that within your society more individuals are evil than good, and that by limiting the freedom of individuals within that society you will end up with a society that is as fair as possible.
Actually, you could do even better than that !

The tutorial levels would become more of a Bootcamp for officer than a "Pokemon encyclopedia" thing.
The player would be presented with increasingly complex units, that would accept different types of orders, could behave in different ways, etc.
During the level, the player would be taught all the possibilities, would be shown how to customize the interface for each type of unit, and would basically do the custom setup, all the while learning how to use the unit, what tactic it is better at, etc.
Granted this would take more time, but you could do this in a separate campaign. Rather than have the "3 missions tutorial then lets play for real" cliche, the player would have the opportunity to go into some training mode, where he could consult info on his units, tactics that they can be used for, custom setup for the units, and related tutorial/training levels to play.

What do you think of that ?

Also I''d like to point out the game Epic40k by Games Workshop. I know I always refer to that one when someone talk about RTSs, but that''s because it''s a damn well designed game. It''s a tabletop wargame (you play with miniatures on your carpet ).
Units can receive 4 orders : "Charge", "Normal", "First Fire", "Fallback". With those 4 orders, and with the manoeuvering, and a limited skill system for units, you get much more than any RTS on computers I know of. I am sure it would be a great idea to play it (or at least check out the rules) for anyone deciding to design a RTS.

youpla :-P
-----------------------------Sancte Isidore ora pro nobis !
Gee, I almost don't have to post! Most of what I was going to say has already been mentioned.

Silvermyst's idea of the customizable commands is excellent. I was going to say that it might be difficult for casual gamers to pick up, but that's already been addressed. Having that system as a special option for hardcore gamers is a perfect solution.

And allowing the commands to be executed by mouse, keyboard, and hot buttons is ideal. I was going to mention to Freshya that the commands would most likely be implemented using small pop-up menus attached to individual units. But allowing for these other options is a better system. More work, of course, but definitely better. So I've learned something there.

And Ahw already mentioned providing a good tutorial, which I think is essential. I like his approach to the tutorial. It's always best to criticize the methods currently in use, and improve upon them. Tutorials are no exception.

So I guess in the end, all I have to say is that yes - changing the table definitely made this thread easier to participate in.


Edited by - Jonathon on May 18, 2001 11:56:49 AM
Jonathon[quote]"Mathematics are one of the fundamentaries of educationalizing our youths." -George W. Bush"When a nation is filled with strife, then do patriots flourish." - Lao Tzu America: Love it or leave it ... in the mess it's in. [/quote]

This topic is closed to new replies.

Advertisement