Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

I am programming a Mafia RPG where you can hire people with attributes. The attributes are the same for everyone, and are ranked from 1 to 10 (although this might change to 1 to 20)

I want to keep the attributes simple, no more than 6 skills.

The attributes could be anything, but lets say there are examples.

Driving: 1/10

Stealth: 1/10

Robbery: 1/10

Brains: 1/10

Toughness: 1/10

Greed: 1/10

Greed is meant to be a modifier, the higher the number the more greedier they are. I'd like to use this for wages

The problem I have is, I am not sure how I should calculate a goons wages.

I don't just want to randomly pick a number; its needs to be reflective of the person's attributes.

At first I thought if they all go up to 10 or 20, I could use an average, with greed being a multiplier. But this does not feel right.

The other idea I have is bands; so that if each attribute score is between X and Y the goon could get Z wages (which are then totalled up) with greed being a modifier; but this feels very dry.

Ideally, I would like the wages to be reflective of their attribute, and most importantly reflect how greedy they are but at the same time not make the wages unrealistic or spiral into very high figures.

I'm thinking the wages should be from $100 /wk up to $5,000 or $10,000 /wk but would welcome suggestions.

What would be the best way to calculate a RPG character's wages based off their attributes?

Many thanks

share|improve this question
add comment

4 Answers

up vote 8 down vote accepted

As Petr stated, it is difficult for us to provide you with a good wage structure when we know so little about how this needs to suit your game. However, I can provide an example formula that suits this statement:

I'm thinking the wages should be from $100 /wk up to $5,000 or $10,000 /wk but would welcome suggestions.

Potential Wage formula: Wages_per_week = (Driving# + Stealth# + Robbery# + Brains# + Toughness#) * Greed# * 20

With this formula, a goon with stats of all 1's would cost $100 a week. However, if he had the max greed of 10 he would cost $1000 a week. This would make Greed act as a sort of multiplier to the total of the other stats. A goon with all 10's would cost $10,000 a week, though would cost only $1,000 a week with a greed of 1.

I don't know for sure if this is the kind of formula you're looking for. This formula can be exploited for some beneficial game mechanics. For example, you could have the player visit different locations in the city to buy randomly generated goons. Then, you could have some areas that usually spawn unskilled goons with low greed, with a rare skilled goon popping up there for a cheap price. Conversely, you could have areas that spawn expensive greedy goons that are usually quite skilled. Perhaps you could even have the player spend money to gain access to areas with better goons.

If this formula isn't quite what you wanted, I suggest you use a formula that can be best utilized to improve your gameplay mechanics. I hope that helps.

share|improve this answer
1  
This formula seems fine to me. –  zardon Feb 15 '13 at 10:41
    
I think I will accept your answer. I think the comments on weighting are spot on; but I wouldn't know where to begin on how to calculate weightings (0.8 of X?) and how it would affect wages –  zardon Feb 15 '13 at 10:48
    
You may want to consider using the square of each attribute. With that calculation a goon with 10 toughness and 1 everything else would be 280 while a goon with level 3 on everything would be 900. It depends on how you game is balanced. –  OriginalDaemon Feb 15 '13 at 13:56
    
Have you tried to use Excel or Google Docs to create a spreadsheet and "live" test some weightings? It is a lot easier to play with a spreadsheet and I think you are going to find what works better for your game. Another plus is that it is easier to plot some nice graphs. –  grprado Feb 15 '13 at 14:45
add comment

This is a question of game balance. The price of a resource should always be relative to its worth for the player.

Does your game system make generalists more important who are good at everything, or does it favor specialists who excel at just one stat?

When your game is designed towards generalism, that means all stats are important for a character, the wage should be calculated from the average of all stats.

When your game is designed towards specialization and most characters will only be used in specific roles where only one stat matters, then only the highest stat is important to determine their worth for the player. So the highest stat should be most important for estimating their monetary value. Other high stats could also make the character more expensive because they open up the strategical option for alternative uses for the character, but not as much as the highest one.

When one extremely low stat is a weakness regardless of the role the character is used for, then very weak stats could give a discount. Example: The opponent can send a bomb to anyone of your characters, which will injure him unless he has enough Brains to defuse it. That would mean low Brains are a disadvantage for every character, regardless of its role, and should give a discount.

About the role of Greed in your system: How about making it not just affect the wage, but also makes the character more susceptible to bribery from opponents? On the other hand, a high greed could also be an advantage in certain situations. It could, for example, make the character more effective at extorting money or increase its motivation when you pay him a bonus.

share|improve this answer
    
I never thought of that, I just wanted a very simple system which had to make you make decisions - do I hire somebody who is very greedy or someone who is good with his brains/smarts. Weighting a skill seems to make sense, stealth is not really all that important except in combat. Greed only affects salaries, but I never thought about things like bribery –  zardon Feb 15 '13 at 10:46
add comment

I guess that's the question which is really up to you to decide. There is no really "best way" to calculate something, unless we are talking about some common sense, but that is that you should have naturally as a game designer.

How wages will vary is depends on other game design aspects or goals which we don't know.

So as a conclusion: it's really up to you. Try to implement some strategy, and if you feel that it's not working as you want, you can ask again with more specific limitations and goals. As a start point you can use approach like this (pseudocode):

// sum of attributes points, devided by number of attributes
var level = SUM(stat) / stat_count; 

var wage = pow(level, 2) * 100;

And you have:

level 1: 1 * 100 = $100

level 2: 2^2 * 100 = $400

level 10: 10^2 * 100 = $10 000

share|improve this answer
    
The wages do not vary on other game design aspects. I do not give weighting to an attribute over another as they do different things. Ideally, a formula to calculate a good wage structure would be cool. I don't know how to structure wages like that though –  zardon Feb 15 '13 at 8:06
    
I mean wage number have little meaning separated from other aspects of a game, in which wages are to be paid, or received. –  Petr Abdulin Feb 15 '13 at 8:32
add comment

How about take a weighted average of each stat based on how much that stat affects the value of the goon, as well as how much the stat affects the goon's ability to negotiate wages.

For example, let's say that more brains affects a goon's negotiating skill more than most stats, so we give it a 1.5 weight. Greed affects desire to ask for more, so 1.4 weight.

Stealth is handy, sure, but if you're stealthy you probably haven't spent as much time developing social skills and haggling, so we weigh it 0.8.

High robbery means you don't need the money as much, but on the other hand you're still looking for work so you obviously need someone to tell you what to do so we'll tell you to take less 0.9 modifier.

You get the idea. Anyway, take the multipliers and make a weighted average. If you want to get fancy, make them expect more after they've done a few jobs. Why not make their stats improve as they perform those roles too.

share|improve this answer
    
I think I get your idea, if you've a goon with brains, he might be better at doing X, Y or Z and so they need to be weighted. Its not something I've thought about. –  zardon Feb 15 '13 at 10:43
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.