Cumpără premium pentru a scăpa de reclame
Postări: 9   Vizitat de: 56 users
26.01.2011 - 08:12
When a game ends, graphs appear displaying the amount of units of each player over time, their money over time, etc. However, none of these graphs really can capture who was winning at any given point in the game. I believe I have devised a formula that will allow this to be done.

For those math geeks who are interesting in how I came up with this formula:
(those who don't care can skip this)
First I took all of the elements of the game that I believed to be the major components in who is winning the game.
I came up with:
-Total Unit Count
-Total City Count
-Total Country Count
-Player Weekly Income
-Player Money
-Player Monthly Reinforcements

After further contemplation, I realized that total unit count would not be sufficient in representing a players forces as units differentiate in their capabilities. Therefore I changed "Total Unit Count" to "Unit Cumulative Attack" and "Unit Cumulative Defense." This now made my list of factors:
-Unit Cumulative Attack
-Unit Cumulative Defense
-Total City Count
-Total Country Count
-Player Weekly Income
-Player Money
-Player Monthly Reinforcements

I'll take some quick time to explain what i mean by each of these if anyone is confused.
Unit Cumulative Attack - the attack of all of the player's units added up
Unit Cumulative Defense - the defense of all of the player's units added up
Total City Count - The amount of cities controlled by the player
Total Country Count- the amount of countries controlled by the player
Player Weekly Income - the amount of money the player gets each week from his territories(also accounting for the amount of money lost for troop upkeeping fees)
Player Money - the players current money reserves
Player Monthly Reinforcements - the amount of reinforcements the troops would get when the month ended(because this is a stat that should be calculated each turn, the formula will count the amount of reinforcements as if the reinforcements would come that turn)

After collecting all of these factors, I took my own personal statistics from past games and built average ratios between the factors(for instance, one's total unit defense is usually around 38 times more than their number of cities). I then worked to equalize all of these factors by dividing or multiplying them by a number.

-Unit Cumulative Attack/40
-Unit Cumulative Defense/38
-Total City Count x 1
-Total Country Count x 3
-Player Weekly Income /50
-Player Money /100
-Player Monthly Reinforcements /2

Now on average, all of these values would be equal. For example, ones total country count multiplied by three is usually equal to ones money divided by 100. Both of these are also usually equal to a players monthly reinforcements divided by two.
From here, I moved on to weighing the factors. I used both my own personal experience to do this and what the programmer/designer of the game devised. I took a look at the net-worth of each country and tried to figure out, based on that, what the designers of the game believed to be the most important factors in winning a game. Then, I came up with multipliers to put more weight on some factors than others. I combined these multipliers with the multipliers that I used to equalize the factors.

This led me to come up with:

-Unit Cumulative Attack /30
-Unit Cumulative Defense /29
-Total City Count x2
-Total Country Count x2
-Player Weekly Income /45
-Player Money /100
-Player Monthly Reinforcements /2

In my opinion the formula would need real game testing so it could be tweaked to perfection but this is what i was able to come up with based on the statistics I had.

Now all we had to do was add these factors:

(Unit Cumulative Attack /30) + (Unit Cumulative Defense/29) + (Total City Count x2) + (Total Country Count x2) + (Player Weekly Income /45) + (Player Money /100) + (Player Reinforcements /2) = Player Score

And we have our formula!

However, I realized something that could make this formula much better. For most of the stats already shown in the after-game screens, it is hard to tell what goes on at the beginning because the numbers get so large and the end and, thus, the scale is huge. For example, on the unit count graph, for the first few turns, it may be hard to distinguish visually between someone who had 150 units and someone who had 50 because someone ended up having 2000 at the end making the scale so large. However, this 100 troops difference at the beginning of the game was huge and it could have, in essence, controlled how the starting stages of the game played out.
I didn't want this to happen with my formula, I wanted all parts of the game to be equally represented. I found a great way to do this. All I do is I make the player score part of a whole. So basically, the players score is completely dependent on his opponents score. Therefore, all of the scores will always add up to the same number as the game progresses and the beginning of the game is just as observable as the end. With further thinking, I realized I could make it into a percent, with the number that all the player's scores add up to being 100. This changed my formula slightly. Bare with me here, this may be hard to read on a computer screen but just pay close attention to all of the parentheses.

((Unit Cumulative Attack /30) + (Unit Cumulative Defense/29) + (Total City Count x2) + (Total Country Count x2) + (Player Weekly Income /45) + (Player Money /100) + (Player Reinforcements /2)) / Player Score + Player Score for every other player in the game = Percent Chance of Winning

If you have trouble reading it, it is a fraction where (Unit Cumulative Attack /30) + (Unit Cumulative Defense/29) + (Total City Count x2) + (Total Country Count x2) + (Player Weekly Income /45) + (Player Money /100) + (Player Reinforcements /2) is the numerator and the denomonater is just the numerator(the player score) plus the player score of every other player in the game.

Therefore, everything will end up adding up to one. All we have to do to make this a percent is multiply by 100.

And the Final Formula is.......!......!.....!...!..!.!!

(((Unit Cumulative Attack /30) + (Unit Cumulative Defense/29) + (Total City Count x2) + (Total Country Count x2) + (Player Weekly Income /45) + (Player Money /100) + (Player Reinforcements /2)) x 100) / Player Score + Player Score for every other player in the game = Percent Chance of Winning

Now at any given point in the game we can calculate the percent chance that any given player has of winning. I hope this formula can be incorporated into the end game screen. I believe it would make for a very interesting line graph as it is the best representation of who is winning the game. This, in fact, is what makes the formula unique as there currently is no line graph that comes even close to representing who is winning the game at any given turn.

I know I'm bad at explaining things so I apologize if it got confusing.

Also, Im open to any constructive criticism especially as far as the multipliers on the factors go seeing as I'm not too sure I have perfectly accurate ratio.

Thanks for reading,

Otokonoko
Se încarcă...
Se încarcă...
26.01.2011 - 08:44
Looks good- though it still gets distorted when people join midgame....

Not sure win percentage is the right name though--you could have a huge income/army stack/etc and then you get capped and lose....

Maybe call it Percentage of Control; perhaps PowerLevel. Then you could scale it so that someone in.a strong position could have a PowerLevel of:


Se încarcă...
Se încarcă...
26.01.2011 - 08:46
 Amok (Admin)
I think that's a really neat idea. Once we're finished with the more important stuff, we'll definitely do this.
You can further refine the formula, in the meantime
Se încarcă...
Se încarcă...
26.01.2011 - 10:32
Hard to refine it without access to the data--can oto get some kinda data dump?
Se încarcă...
Se încarcă...
26.01.2011 - 10:43
On a side note maybe some points or a medal for giving moneyto an ally, even if its very tiny reward. Although I know this could be abused.
Se încarcă...
Se încarcă...
26.01.2011 - 10:43
 Amok (Admin)
Scris de n00less cluebie, 26.01.2011 at 10:32

Hard to refine it without access to the data--can oto get some kinda data dump?

What kind of data do you need?
Se încarcă...
Se încarcă...
26.01.2011 - 12:05
 Ivan (Admin)
Scris de King Cow, 26.01.2011 at 10:43

On a side note maybe some points or a medal for giving moneyto an ally, even if its very tiny reward. Although I know this could be abused.

We'll try to add more medals later (it's actually not that easy). At the moment, we have other priorities.
Se încarcă...
Se încarcă...
26.01.2011 - 13:11
Scris de Ivan, 26.01.2011 at 12:05

Scris de King Cow, 26.01.2011 at 10:43

On a side note maybe some points or a medal for giving moneyto an ally, even if its very tiny reward. Although I know this could be abused.

We'll try to add more medals later (it's actually not that easy). At the moment, we have other priorities.


Great news.
Se încarcă...
Se încarcă...
26.01.2011 - 16:57
 Hawk
Some of these stats currently aren't available. Other than that, this is an excellent idea.
Definitely harkens back to our Smogon days...
There is a fairly significant issue though. How will alliances affect the formula? Alliances can mean a lot or nothing at all. Peace treaties are in a similar boat.
Se încarcă...
Se încarcă...
atWar

About Us
Contact

Privat | Termeni și condiții | Bannere | Partners

Copyright © 2024 atWar. All rights reserved.

Alătura-te nouă pe

Extinde vorba