Archived

This topic is now archived and is closed to further replies.

Dauntless

Personality in RTS?

Recommended Posts

I had a nostalgic moment and was going through some of my old Battletech and Dirtside rules for inspiration and guidance on my game design. While reading the battletech stuff, I was reminded of what I liked about it...the pagaentry and history of the various sides in the conflict. A unit wasn''t just a nameless faceless cannon fodder that you sent out to obey your whims. Each unit (for the most part) had a long and illustrious (or dubious) history that made the unit feel more real. Also units weren''t created, they were already there for you to command. How many people would be interested in strategy games in which army construction was not really a factor? Instead the armies would be pre-existing AND have a certain history and esprit de corps about them? While some games have done the former (Myth, Ground Control) I don''t know of any that do the latter. I personally hope to inject some character and personality into the units that I create...almost as if they were characters in a RPG, each with their own particular idiosyncracies, quirks, habits and styles.

Share this post


Link to post
Share on other sites
I had a touching moment while playing Close Combat. The game's base units where groups of around five men. So this one group was caught in a really bad crossfire, and four out of the five where killed in seconds. The remaining guy was freaked out (morale - cowardly), and crawled to some cover. But then, after a few minutes, he got really mad and wreckless over his friends death (morale suddenly went heroic), took his rifle, and ran against the enemy (ok, so I gave the attack order - but it felt like he wanted to do so).

[edited by - Diodor on October 16, 2002 10:25:13 PM]

Share this post


Link to post
Share on other sites
It seems like that idea would lead to controlling fewer units. Reminds me a bit of Commandos, where each character really had specific duties.

Share this post


Link to post
Share on other sites
You can make every unit affected by effents and the way they are feeling... just add aload of varables for different aspect of the mind... like;

happyness, hunger, desire, pain, fear level, comfort... etc... etc.. just sit down and think about how u think your self... u must be unbiased though..

then you tailor the AI to your specific game... if your making your game now then you should include a small/medium memory system for you AI... (because in about 2 years most people will have quite fast CPU''s and Memory systems....

then like start coding (or better still do it via scripting - becuase if your up to it.. you can make dynamic AI interpretations... based on past events...) and make conditions for certain situations... like.. "my friend, has been killed... " > leads to the character being upset.. (varable - how good can the character pull him self back) > revenge level (varable - does the character like to avenge his friends) - > effect > character will probably want to take revenge and will go bezerk... or > (varable > is the character well trained [millitary]) > effect > character will take his/her revenge but will think hard about how to do it...

Anyway

Share this post


Link to post
Share on other sites
Hey Dauntless,

What kind of history are you talking about?? Only military history, or also personal information as well?? For this post, I am assuming you mean military...if not, tell me what exactly you were thinking of...

How about instead of a predefined history, you make the history yourself. So whenever you create/recruit a new unit, they have a random name generated and they are a raw recruit. As you go through the missions "Tony Rush" builds up his history. That way instead of having to read about what he has done, YOU actually take part in it.

Obviously at the start your guys will simply seem like Cannon Fodder, but that way it is the gamers choice whether he wants to get to know his units and build them up over time/missions.

This could then tie in with the units strength/experience. As their history expands, so does there knowledge and therefore ablility on the battlefield. So if "Tony Rush" dies you not only loose a "friend", but a strong soldier.

You would of course have to generate the soldiers history dynamically based on what happens in a mission (if he drives a tank, or flies a plane etc). This would make for quite a fun little object you could create, pass in his kills, what weapon he used for each and it returns a nice little description of that mission to go in his history.

Doolwind

Share this post


Link to post
Share on other sites
Doolwind-
I was thinking of both military history as well as personal information. For the military history, visually this could be represented by having a military banner or standard, replete with various former campaigns and battles that it has fought in. Since my organized units, which I have since been naming "clusters" to avoid confusion between unit used in the singular and unit used in the plural, will have a quality rating and morale rating, I thought this could be well reflected by its history.

Personal information will be a little harder to nail down, and in many ways will be reflected by behavioral traits of its commanding officers. However, many units have a sort of "rite of passage", which molds the personality of the individuals within the cluster. These could be things like prejudices against other units, questionable loyalty to its leaders, or how gung-ho it is to fight. Notice that morale and willingness to fight are two seperate entities. A unit could have good morale but not be aggressive.

In order to do something like this though, I''d need to include behavioral traits within both the cluster class, and the officer class. The more I look at how I will organize units, the more I realize how complex the cluster will have to be. Not only will it hold behavioral information, but it also has to be able to access the individual units capabilities to provide a central "bank" of methods that the officer object can access. The officer''s personality will then influence the orders that are given by the player.

To answer your question about the the start of the game, I''d like the player to be able to create the cluster''s history before gameplay begins. This way, he will have a handle of which units are his elite ones that probably won''t crack under pressure, and which ones are his green units that he may want to keep in reserve (or put into partial action to gain experience). As a visual interface, when he clicks on the appropriate cluster, a military standard can pop up displaying not just action potential, but behavior characteristics as well.

I think the disadvantage of my system is the sheer amount of pre-game planning and setup that needs to be done. While I''ll include pre-generated units/cluster organizations/officer types the player still has the option to design his forces in very detailed ways including unit history. I''m thinking I''ll do this very much like a role-playing game, where the player can buy little advantages or quirks, or offset the cost with disadvantages.

I think the key advantage to my system is that units are no longer cannon fodder, but living breathing entities that are unique even if they have exactly the same equipment. I think this will help eliminate a cannon fodder mentality common amongst RTS games. Indeed, I want my game to be able to beat any cannon fodder style of play with the judicious use of units allowing them to gain experience. As they say, "discretion is the better part of valor..."

I think someone said it will lead to control fewer units....yes and no. I was thinking on the scale of about 100-300 controllable units per player. However, due to my hierarchical system of control, theoretically, you could order all 300 units to do a complex order with 3 clicks of your mouse. The level at which individuality and military history come into play will be at the battalion level though...which is approximately about 4-600 men in real life, and in game terms about 12-20 units. I might think about extending it down to company level. If I ever get the game finished (read 2+ years at my rate ) I''ll have to playtest it out.

Share this post


Link to post
Share on other sites
Very interesting idea.

How would the history creation turn into gameplay? I mean, ideally, every player wants armies that are completely loyal, follows orders, high morale, and gung-ho. Seems like you''d want some other factors which have tradeoffs and disadvantages so that these decisions can mean something.

Share this post


Link to post
Share on other sites
beantas-
well, for starters, I think I should probably explain the fundamentals of my game system. There are 3 primary objects in my game. The first is a Unit class. This class makes specific instances such as tank, rifle platoon, helicopter, artillery, etc and the associated methods and data of that individual unit. The next class is a Cluster class. This class is a container class (defined by the player) that holds the instances of the Unit. The Cluster class extracts what methods are available from its Units, and also has built-in methods itself (such as formation(), regroup(), etc.). The Cluster class in turn holds a pointer to the last primary class....the Officer class. The Officer object in my game is where you do the actual controlling. You the player issue orders to the Officer object who in turn calls the methods available in the Cluster to do the work.

So you have a couple chances to inject "personality" into the playable "units" of the game. Note that there is a difference in the types of "personality" you can inject in each game object.

at the Unit level you can have factors like:
1. Discipline- how well unit follows orders under duress
2. Quality- level of training provided to unit
3. Willpower- measure of fatigue and/or morale

at the Cluster level you can have things like:
4. "Esprit de corps"- similar to morale and confidence
5. Attitudes- varying quirks such as prejudices
6. Proclivities/talents- actions that a unit feels more comfortable with
7. Disadvantages/habits- opposite of advantages...makes unit cheaper

at the Officer level you can have:
8. Confidence- how quickly does officer issue orders to unit?
9. Leadership- how effective is leader at making units respond or rally?
10. Quality- level of training provided (i.e., Academy grad, or OCS?)


Note this is just off the top of my head and I''m sure there can be many more factors.

Share this post


Link to post
Share on other sites
What about being able to train recruits and then train them for specific jobs. That would allow for large armies.

Here''s an idea:

Have a base and then every now and then you can radio for reinforcements. When those (aerial) vehicles arrive you can take those recruits and either train them to pilot a machine or wield a weapon or use them to manufacture vehicles or construct buildings.

You would only get like 8 recruits per shipment and they would still have personalities. Maximum military forces could be limited to 14 with a total population of 18, allowing for more intamacy with your troops.

Share this post


Link to post
Share on other sites
In Xcom: enemy unknown (or UFO as it was also known), i got quite attatched to my squad of men. Each of them had different names, and generally you had under twenty, although I believe some people had loads, but I usually kept it into just one squad of guys. Throughout the game, not only did they get better, but I got to know theyre abilities based on who they were, it sort of gave them a character. Every time my main leader guy, who was usually a leiutenant, Yuri something, got into a fight he alwasy kicked ass. Adversly, there was some guy called Guy something, and he always had a habit of shooting teammates, intentionly or otherwise i was unsure, and I never trustede him to do anything right. So although they didnt actually have real histories as such, they had an identity to which I personified them. Quite a cool game actually, anyone who hasnt played it should, or get UFO:Aftermath when it comes out, seems like a really cool update of the original.

Share this post


Link to post
Share on other sites
Doolwind-
I was thinking about your suggestion of an experience system, but I''m trying to figure out how to implement one. Factors like the odds the unit/cluster was against, whether they were successful, what kind of mission they were on, etc. etc. and it seems pretty daunting (not that that''ll stop me ). I''ll have to create some kind of "mission class" which keeps track of all the above considerations and some kind of "experience class" which awards or penalizes units for their actions. But in theory, it seems workable.

As for training raw recruits, my system will have raw recruits (at the Unit object level) created to replace casualties, and on some cases, create brand new Cluster objects, but that will be seldom that you see that (there are lots of disadvantages to doing that). What will happen more often is that the player''s armed forces already exist and the military/industrial complex will be used to reinforce and expand pre-existing Clusters. At times it will be necessary to create brand new Clusters from raw recruits, but this is done rarely in real life. Indeed, even when new groups are created, they are usually created from a pool of veterans of another group and raw recruits fill in their shoes in the other group.

What I want out of a "personality" system in my game is to make the player''s armed forces feel unique and special, much like a character in an RPG. Currently, units in strategy games, while they may gain more experience and therefore be more valuable....does not engender any sort of uniqueness about the unit. Sometimes you may enjoy playing a group for its disadvantages as much as its advantages.

what''s more exciting and sounds more fun to play?
1) a light cavalry unit
2) The Queen''s Own Royal Hussars

the former is just a description of what the unit is, the latter is a specific instance of that type (much like a class/object relationship really). The latter by its very description can give you a feel of what the unit does or the history behind it.

Share this post


Link to post
Share on other sites
Maybe you can create a more complicated model of the player''s personality and then have the units react to that model.

But of course, if this should work, both the units and the player must be able to express their personality somehow. The player should be able to reward/punish his units for certain actions, make promises ("resist for two more days and you''ll be relieved"), encourage some units, etc. The units should be able to respond to these player actions, with morale boosts, by obeying or not obeying orders, by fleeing or not from a hard to defend position, surrendering or not etc.

Share this post


Link to post
Share on other sites
Dauntless-
In my last post I was talking mainly about only the "history" of the unit, what they would have if you read a little story about them. I see you are talking about personality in more of a real-time sense, what different units actions will be based on different personalities.

Do you mean if two soldiers are attacked they may do two completely different things?? A coward would run off, but a rambo-style guy would stand his ground until he was killed.

This poses some new questions then. Do you want all of your soliders to come with a pre-defined personality or should the player be able to shape them. And if so, how would this be done. I was thinking as you do the training for the game, you have a handful of troops that you use. Not only will this let you get to know some of your troops as you go, but perhaps how you command the troops inidividually could affect their personalities.

For example, if you are given a training mission to take a hill and you send a couple of guys in rambo style, their personalities within the game will be affected by this. If they are higher ranked officers this rambo mentality will be passed on to the rest of your troops in the game.

However if you make them run away at the first site of an ememy and call in for artillery support, then they will also reflect this in the game.

I think the real question is how much choice do you want to give the user. What would be more emersive...having a platoon of guys each with their own pre-defined personalities....or a group of raw recruit type characters who you can mould to whatever you please.

Which way would you prefer your game to be?? (Or something completely different).

Doolwind

Share this post


Link to post
Share on other sites
Doolwind-
Actually I meant both a real-time system to keep track of a unit/cluster''s experiences, and a "history", that reveals what the unit/cluster has done previously.

So in answer to whether one unit might run away, and another unit might go charging in rambo-style, that''s exactly what I want. It''s something the player will have to take into consideration when assigning what units to do for what task. Alexander the Great''s father, Phillip of Macedonia used to put his worst troops forward, and then stagger his proceedingly better units a little off to the left and a little back. What this would do is at least weaken the enemy some before his poor units broke and then the better and better units were left behind. He used this tactic quite successfully many times. Another historical use was at the battle of Cowpens in the American Revolution where Greene (of the Colonial forces) knew that a lot of his militia wouldn''t stand to the British line. So basically, he put them forward, ordered them to fire twice, then had them run-away (in order). Then he had his more experienced troops (Either the Maryland or Virginia regulars, I forget which) which were much more experienced and disciplined go toe-to-toe with the English line.

I want that same sort of feeling, where some units are known to be quite good and well trained, and others are known as perhaps a bit rebellious but still very brave (the Lousiana Tigers of the Civil War were notorius for this...once they routed an infantry regiment off the field, but then abandoned their orders to loot a train depot). Or you can have units that always stand their ground no matter the cost ("Stonewall" Jackson got that nick because of how he held his brigade together at First Bull Run during some withering artillery fire), and the "Iron Brigade" got it''s nickname for the Ironwill of the northern brigade for it''s discipline under fire as well.

As for how much choice I want to give to the player, I want the player to be able to define a unit/cluster/officer''s personality to his heart''s content BEFORE the game starts, but once the game begins, then direct manipulation of "personality" should be diffucult though not impossible. For example, if a company or battalion has lost several battles in a row and has therefore lost a lot of confidence, the player can try to give it easy battles to win to increase it, OR to assign a new leader to the unit with a better leadership rating. In other words, the player should only be able to manipulate the personality indirectly. This contrasts with RPG style games in which the player gets to assign experience points to certain traits. How a game object develops after it is created is basically up to how it performs and how the player manipulates it indirectly.

Hopefully if people have been following up on my posts, they''ll get the picture that my game is more about leadership than anything else. Clicking on a unit does not guarantee that you have access to it, or that it''ll do exactly what you want it to do (or in the way that you wanted it to). While for some players this will be frustrasting and as "stupid AI", in my game, this is a purposeful feature that can be dealt with by correctly using your troops. Sometimes you can''t do away with your troops not doing exactly what you wanted, but you can mitigate the situation to a greater or lesser degree. Having "personality" within units is another facet to making sure that units are not nameless faceless entities that obey your whims like robots. The good player will therefore know not just what unit to use in a certain situation, but HOW to use it. Most strategy games do not require you to know how to use a unit....basically all units function in the same way given the same context. By having a unit in the same exact context it''s possible to have a different outcome...this leads to far greater tactical and strategic depth (IMHO).

Share this post


Link to post
Share on other sites
Diodor-
I''ve been trying to think of a way to model personality types...especially for my officer objects...but so far I''ve been turning up blank. I would like something like a "aggression" trait, or a "brave" trait, but I''m having trouble how to define this in game terms. The personality of an officer would greatly determine how he uses his troops, or how effectively he will follow the player''s orders.

Any suggestions would be very welcome

Share this post


Link to post
Share on other sites
Dauntless-
Sounds good. How does this sound...Select a unit, all the different personality traits come up for that unit and you can use a slider to decide what they are like. You could perhaps choose between doing this for individual units, whole clusters or whatever.

I know you want to implement an Order class which has the order wrapped up in it and sent to the unit. And you said that the unit could obey or dissobey an order....this is where your "Personality" class needs to come in. If you "filter" the order objects through the personality object for that unit then it can decide whether to follow your order, tell you to shove it, or anything in between.

The only thing here is that the personality class also needs to be aware of the situation it is in. If you have a single unit just standing there and 4000 men come over the hill then he is obviously going to run off (without an order object being sent to him). So I am wondering how you are going to set up your "situation awareness" for units, so when they encounter a new situation will it go through some object (perhaps personality object) to determine what their reaction will be?

But anyways, that is getting a bit into implementation, I think you have a good idea with setting up the units before hand, and having some indirect access to their personality.

Doolwind

Share this post


Link to post
Share on other sites
Dauntless - Excellent ideas, I''m very intrigued.

Responding to your last question: How about having various traits that have "two sides to the coin" so to speak? This would make things simpler game wise and is fairly realistic. In other words, you could have Brave soldiers and Cowardly soldiers, with the average being a rating somewhere in between. Also, each attribute should be dynamic to a certain degree -- soldiers that start off "Cowardly" may become more brave over time, although "Brave" units may lose their courage if enough battles are lost or they see enough carnage. Even the most "Devoted" sailors who love their captains may eventually turn "Mutinous" on him if he refuses to put in to a nearby port when men are dying of scurvy.

Personal background info should have a lot of influence on how a soldier behaves. In fact, it might be interesting to give the player clues as to a soldiers disposition rather than just saying "This soldier has a 75% bravery rating." This would be expressed through the soldier''s "record" -- for instance, if a soldier is really rebellious it might show up on his sheet as incidents of "behavior unbecoming of a soldier" during boot camp, while a brave soldier might have "Awarded medal of honor for saving the life of a fellow soldier" written on his sheet. Notes about the soldier''s home life could even be included, perhaps supposedly left by a military psychologist: "Subject demonstrates a strong need for order and discipline, perhaps relating to paternal experiences in the home. Subject may excel where specific orders are given while failing to live up to leadership expectations."

Obviously I know little-to-nothing about real military records, or military psychologists these are just examples of how information about units could give the player indirect clues about a soldier''s performance on the battlefield.


Brian Lacy
Smoking Monkey Studios

Comments? Questions? Curious?
brian@smoking-monkey.org

"I create. Therefore I am."

Share this post


Link to post
Share on other sites
i''ve allways liked the idea of giving the player information in a creative writing sort of way. instead of saying "this stat is at 363" you could say "subject has excelled far in the field of *?*". it makes the game seem much less technical and much more immersive in my opinion. just commenting on that.

"The human mind is limited only by the bounds which we impose upon ourselves." -iNfuSeD

Share this post


Link to post
Share on other sites