The RTS unit creation paradigm

Started by
44 comments, last by Dauntless 21 years, 7 months ago
quote:Original post by Fuzztrek
You have a fixed tech tree, not very many units, not very many resources, and you play the exact same game over and over and over again. Another example of a horrid rts. Falling somewhere in the middle i think is one of the hardest things to do as a game designer.


Chess has no tech tree, only six different unit types - in fixed numbers - and hey, you can''t even play different races! Yet it is still an incredibly deep and involving game.

Just because some games which use the conventional paradigm are fun, it does not mean that a game that abandons them will not be.

quote:
I''m almost positive i''m not addressing the real thing all u guys are talking about since i just skimmed the posts. Another thing: Programmers should not design games. And: I am a programmer. So what do I know ? =)


Why shouldn''t programmers design games?
Advertisement
Sandman-
I think you make a good point too. I think when a game doesn''t follow the same paradigm that players are used to, either they scratch their heads or don''t even give it a chance. As you said, just because a game doesn''t follow certain conventions doesn''t mean it won''t be enjoyable. Look at Battlezone for a good example. If something doesn''t fit a certain mold, then I think a large percentage of players will go,

"gee, that doesn''t look like an RTS....let me see if I can find the latest clone to Command and Conquer instead".

It''s a shame really but it''s human nature too. Since it''s not familiar to us, we are leery of it and cautious....especially when you have to pay 50$ for a game style that no one has seen before.
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley
well, for one thing programmer''s suck at spelling. as you can see from all of my posts. not saying that you need perfect spelling to create a game, but it definatly helps. Programmers will always think of what can be done, instead of what should be done. designers have their drawbacks too, believe me. but programmers are generally also to pre-occupied with their code, so they can''t really be saying, half way through, "lets rewrite the engine so we can encorporate.. blah blha blah". Thats what the designers are suppost to do. This makes the programmers very mad at the designers. But if you think of it this way, it''s better to have all your programmers against the designers rather than having your programmers mad at your other programmers.

I wasn''t talking about chess, and while you do have a point somewhere in your speech, it''s hard to find and isn''t really that good. Chess is a totally different type of game in a totally different genre. Say chess is like.. Warcraft. and checkers is like Age of Empires or command and conquers. Some would dissagree, but Warcraft is the champion. In the other games, you get cheap plastic items, whereas warcraft you get stone figures on a nicly finished wooden board. If you have a cheap version of chess, its like playing a custom game that someone made in warcraft''s world editor.



¬_¬
quote:But the thing is, Silvermyst, it would be pretty stupid to encorporate both those options into a game. You''re splitting up your target audience, basically creating two games.

Well, I didn''t mean create two entirely different ways games, but give players two different approaches.

The quick way would be to pick a default setting for all your units (for example: aggressive) and then start a battle.
The slow way would be to individually set each and every unit in your army manually (for example: unit X agressive, unit Y defensive) and only then start a battle.

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.
fuzztrek-
I think programmers can make good designers if they remember they are designers first and programmers second. I think someone has to have overall creative control.

What I think happens though is that many designers see themselves as screenwriters rather than directors. What good is it to direct a movie if you have no concept of how to stage a scene, how to best utilize camerawork and even what kind of music to put in for certain scenes. Does the director have to be a technical whiz at cameras, or be a composer or have been an actor himself? Of course not, but a good director has to understand how to integrate all of these things together. But I think most designers see themselves as the screenwriters....a very static and relatively simple thing to do. As someone once said, the story isn''t as important as how you tell it. And how a story is told is the directors job....and the game designer''s job as well. The designer creates a framework around which the programmers fulfill (and in turn influence the game designers plans) and also guides the vision behind the art team''s creations.

So I think designers need to at least be familiar enough with technical constraints and art assets before he truly goes about designing a game. Granted take my word with a huge grain of salt...as I have no published games under my belt, and I don''t even consider myself a programmer. But I consider myself a half-way decent artist, a fairly avid military history buff, conversant enough in programming to understand the difference between a pointer and a reference, and hopefully gifted from my Irish heritage...a gift for the gab

As for chess not being a good example, why not? What Sandman was trying to point out was that what you consider a game and what I consider a game are two different beasts. Warcraft follows one game style''s conventions, while chess fills another. They are both games and they are both popular. And while they both represent strategy, they do so in totally different means. Since more of the world knows of and plays chess, wouldn''t that mean that your argument says that Warcraft shouldn''t be a popular game?
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley
Well, as for programmers being bad designers, it''s the whole left-brain right-brain thing. let me see if i can remember.. left-brained people are very structured and linear. they are very science and math orientated, where as right brained people are artistic and creative. Now, no-one is completely left brained or right brained, but people have their strengths.

AS for chess, I can see his point in one way, but the other way just makes way more sense. I mean.. they''re are bad games and good games. And they''re are games that are bad but are really popular. Maybe my point is a difference between functionality and frills.. You can create a game full of great graphics and neat features, but have no gameplay quality at all. You can also have a game that has everything you would ever need to or want to do, but with no graphics interface or any easy way to do any of the amazing things it can do.

So, you create this game with 50 attributes per unit, and everyone decides which unit they want, positions them, etc etc etc. What are you doing? You''re basically creating a whole game out of that one game.


Sorry if i''m not clear.. i tend to blindly shoot in one direction when i ramble.

¬_¬
quote:Original post by Dauntless
Kylotan-
I don''t think it''s to far of a stretch to say that''s exactly how the world works right now. Basically, every country throughout history has had their own doctrine of warfare that suits their mentality, their budget, their geography and their strategies.

I know, but the point I was making is - is this fun? For a game?

quote:The fun will be in designing not just the composition of your military, but also the integration of it. What do I mean by that? Does your country integrate it''s ground, air and naval power? At what level do you group your artillery....en masse like the Russians, or piecemeal like the Americans? Is med evac a priority for your nation, or do you treat you troops like cannon fodder (i.e. China or Iran). What is the smallest level of command....a 30man platoon, or a 120man company (American 2nd Lieutenants have a great deal of freedom while in Russia a platoon is commanded by a senior NCO who can not order fire support).

In fact, it is these very organizational details that are lacking in RTS games.

I agree, with 2 caveats. Firstly, most people wouldn''t have a clue which decisions to make here, so your audience is pretty small without some serious tutoring. Secondly, I don''t think that the presence of the above considerations makes the traditional RTS unit-supply system irrelevant. They can be separate considerations.

quote:In RTS games today, you just have a mob of units that you order willy nilly. I believe it not only offers a lack of depth for gameplay, but THAT is more frustrating than having to chose how your armed forces are organized.

Not for most people, where selecting a load of units and telling them what to kill is going to be far more intuitive than knowing how many men to put in a platoon. There''s a risk of people feeling that their choices make little difference. I''m sure that many such numerical choices made by modern armed forces are as much down to availability of bases and higher-ranked officers as they are down to combat efficiency.

Whether the organisation of the army is going to be interesting or not hinges on two crucial factors, for me. The first is a decent knowledge of the context of your battle. You''re right when you say that certain nations would adopt certain paradigms and so on, but few people are gonna play the same thing for ever, and will want to change at will. There needs to be decent briefing of what kind of battle you''re going to be fighting. Secondly, it needs to be understandable. I can see a risk of the game only being interesting to those who follow military history and appreciate all the nuances. These are already a rare enough breed as it is, but I expect you will lose a lot of them in the transition to real-time games too.

[ MSVC Fixes | STL | SDL | Game AI | Sockets | C++ Faq Lite | Boost | Asking Questions | Organising code files | My stuff ]
I don''t really understand what this would add to the gameplay of a RTS...it seems to me to only add a layer of micro-management (for me this is a bad thing...but others may enjoy it )

on the other hand...I think that what you are preposeing is ALREADY done on RTS games....let me explain:

Each factory produces a set pre-defined variety of different "units"
Each unit represents a single entity that has specific functionality
Each unit can be "repaired" by a special "medic" unit

That is what many RTS games do today..correct?

But I think this model can work as it has been AND still support your platoon structure...simply by keeping in mind that in typical wargames...each "unit" already represents a collection of forces...gunners...infantry men...tanks...etc..

Therefore a "unit" in a current RTS game may represent more then a single entity...and haveing a medic "repair" the "unit" may actually meen they are replaceing the missing people from that platoon (the medic could represent the delivery system needed to get replacements into the front lines...with unit health representing how "complete" the platoon is)...and by ordering a factory to build more units of the given type...you are in effect ordering the army to increase in size (add more platoons)...each "unit" can represent a more specialised ''platoon'' structure...and each factory could represent a seperate branch of the army...so factories that produce infantry ...can symbolicly be seen to be army bases that train army platoons...

to cement this home you could make the medic type units draw points from the establish economy inorder to fix a given unit...this would more closely mirror the structures you have in mind...without adding the extra layer of management...

just my two cents


Kylotan-
I was thinking about having default "countries" so to speak that players can use as templates for their own armed forces.

Gameplay in a nutshell will be like this:

1. Establish your armed forces
a) Establish the smallest organized unit
b) Use these base units as building blocks for your hierarchy
2. Establish your chain of command
a) What level of commander controls what level of organized unit?
b) Assign command functions to various rank levels
3. From points pool, establish your Military industrial complex
a) Assign points to areas like manufacturing, resources, research
b) From this, you will ascertain your "supply pool" to reinforce other units or create new units


Now that the preparation phase is done the actual game starts:

1. There will be a battlemap with a representation of your forces, on a sidebar there will be your chain of command (all of your officers) listed in tree structure.
2. Select the officer that you wish to give an order to
a) From here, you get a submenu from which you chose which unit or another officer s under his command.
b) If another officer then again, you get a selection of which unit to chose, or which subofficer under his command

**Note, normally you select a high ranking officer only for two reasons, to order ALL units under his command to do something, or you want to enable a command available only at his rank level. Otherwise you select the lowest ranking officer that commands that unit.

***For example, Captain Carlson has under his command 4 lieutenants, and also has at least one AT team and one FO team which he can detach from the platoon. If you as the player want all 4 platoons to do something like retreat, then simply click on Captain Carlson''s icon in the sidebar, and all units under his command will fall back in the formation you chose. However, if you want Lieutenant Geiger''s platoon to act as rearguard, then you select his officer icon and chose from the order menu, fallback/guard.

4. Once all your officers and the units they control have been designated their orders, you click on the "End plan phase" button, and real time begins.

5. If you want to alter an officer''s actions during real time, then you simply access the Officer bar again.
a) Depending on your level of communication, this will take a varying level of time and is not guaranteed.
b) Time delay is caused by a combination of C3 factors (Command, Control, Communication). It represents the time to propage orders from the CO to his NCO''s as well as setting up encryption protocols for tight link or broadcast information

Once the orders have been carried out, you go to the Post Action phase. Here you can set up options for things like Medical evacuation, reinforcement requests, fire support (Air, Orbital or Artillery) or special actions like Combat Engineers and the like. Note that the actions set here will not happen until the beginning of the next Action Phase.
**Note reinforcement requests are just that, your country will replace battle losses first and create new units secondly. Since this is a campaign system, you can select reserve units for a reduced cost, but they will not be immediately available to you.

So really, what I''m proposing is not much different than clicking on units...you just have to think a little more carefully because the ordering system allows for some pretty detailed effects. And by making it a hybrid turn/RT system, it allows you the time to think about your moves, develop a battle plan, AND still interact with your troops.

In many ways, I''m trying to simulate what a real battlefield commander would have to do...including the feeling that the player is actually on the battlefield rather than being some godlike being control his troops from far away. This is why communication will be very important in my game, and having your avatar close to your troops will give them a morale boost.
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley
MSW-
I see what you are saying...a "unit" in an RTS game may be an abstraction of a combination of things...say an infantry icon may represent 28 rifle men, 2 squad gunners, a LMG team, and a medic. All of these individuals are then abstracted into a base value representing it''s overall capabilties.

I want to go one step further than...making it a little less abstract and a little more concrete.

This is what I want to do in a nutshell...and please excuse my pseudo programming syntax code....I''m still learning

class Unit
{
int * pUnit= new UnitStats[10,10] //pointer to a array to hold unit stats
int * pOfficer = OfficerAssignment(void) //pointer that tells what Officer leads unit
bool Detachable; //is unit detachable?
bool setDetachable(bool) {Detachable = true} //accessor function
//fill in all your other code here that ALl units have, like DisplayObject(), a handle to AI, etc.
};

Okay, so we have a VERY simple Unit class skeleton here. So now what you can do is something like this:

class AntiAirTeam: Unit //AA team that extends Unit class
{
protected;
int AntiAirAttack(int) //provides an anti-air function
AntiAirAttack(int)* pOfficerFunction//not sure how to code this, but a pointer to a function that only certain officers can use
};

class RifleTeam: Unit
{
protected;
int RangedAttack(int);
// put code here that adds 8 to the array that holds the stats for how many men in unit, i.e UnitStat[3] = UnitStat[3] + RifleTeamMembers
}

Okay, lots of useless pseudo code here...so what you say. Well, because you have all these subclasses but now you add these constituent subclasses into a bigger class like

class StandardPlatoon = 3x RifleTeam + AntiAirTeam + LightMachineGunTeam. Since you will be able to create your own units and chains of command, everything will have to be drag and drop and object oriented is an absolute necessity. Unit objects will have plugins...the plugins being other class objects (other unit types), and interface methods (so that officers can give them orders).

What''s the difference between this and just abstracting everything? Two important things. One, certain constituent components are detachable, and thereby you can seperate them from the main unit. Secondly and perhaps more importantly, certain ranks of officers are the only ones with accessors to certain functions. So if you tell 2nd Lieutenant to order an Artillery support or to move a platoon not his own somewhere else...he won''t know what to do.

The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley

This topic is closed to new replies.

Advertisement