How about a "simple" in-game Rating System

Brainstorm ideas of possible additions to the game. Read this before posting!

Moderator: Forum Moderators

Forum rules
Before posting a new idea, you must read the following:
eddieballgame
Posts: 7
Joined: August 28th, 2005, 7:04 am

How about a "simple" in-game Rating System

Post by eddieballgame »

Just a thought on a simple way to "rate" a players performance. This could be used to determine a winner of a game with a set number of turns & there is still more than 1 player left. Using the ELO (chess) format, one could generate a "similar # as follows.

Under Statistics --- Damage Inflicted / (devided by) Damage Taken X 1500 (avg USCF rating for example) = Battle Rating (BR)

AND --- Villages owned / 50 = A
A + 1 = B
B X BR = Game Performance Rating (GPR)

I am very curious what anyone would think about this. ( I am no math wiz) :)
Last edited by eddieballgame on July 24th, 2006, 10:24 am, edited 1 time in total.
NeoPhile
Posts: 155
Joined: July 22nd, 2004, 4:33 am
Location: Halifax, NS, Canada
Contact:

Post by NeoPhile »

It might make more sense to use the expected values for damage, rather than the actual values, otherwise you're using dice rolls in your rating. Also open to debate is whether you would want to use damage inflicted or units killed (or maybe both).

I think a better formula for villages would be A = villages owned / villages on map. That guarantees a number between zero and one, so the scaling factor will not vary with the number of villages on the map. Using B seems unnecessary to me, since the scores will still sort the same way without it.

I'm not entirely sure that's a good idea though. For example, someone might try to rush for villages near the end, in order to bolster their score, when they could've swarmed the enemy keep, and won the game decisively.

I also wonder why you would want this in the first place. The way I see it, most of the fun is in the playing, not the winning (and especially not the losing), so it seems kind of irrelevant to me. What's wrong with a tie game?
Dave
Founding Developer
Posts: 7071
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Post by Dave »

What if someone is good at getting victories by rushing the enemy leader, sacrificing lots of units in order to be able to get the kill? Does this make them a poor player?

Also not all damage is equal. 1hp damage on a ghost is alot more than 1hp damage on a mage.
“At Gambling, the deadly sin is to mistake bad play for bad luck.” -- Ian Fleming
User avatar
Sapient
Inactive Developer
Posts: 4453
Joined: November 26th, 2005, 7:41 am
Contact:

Post by Sapient »

Well, "Play Performance" (however you define it) has nothing to do with who's winning at the end unless you assume all sides start on equal footing-- even then it may be irrelevant, depending on the definition.

You should leave that factor out, then add Gold and value of remaining Units to the equation. The unit value could either be represented by its price, or something more complex:

Code: Select all

if(not_max_level) {
    Unit Value = MAX(price*(%hp), Next Level Value*(%exp));
} else {
    Unit Value = price*(%hp);
}
And don't call it a Rating, call it an Ending Advantage.
Last edited by Sapient on July 23rd, 2006, 8:19 am, edited 1 time in total.
http://www.wesnoth.org/wiki/User:Sapient... "Looks like your skills saved us again. Uh, well at least, they saved Soarin's apple pie."
eddieballgame
Posts: 7
Joined: August 28th, 2005, 7:04 am

Post by eddieballgame »

Good ideas & questions, my idea was just a thought towards adding a way to interperate some of the "statistics". A rating, as such, would do this nicely without detracting from a win ( eliminate all ), or even a draw. One could create almost any kind of formula limited to the in game info. The question is, what statistics correlate to winning or just simply playing well.
Anyways, thanks for the responses & happy gaming. :)
User avatar
Sapient
Inactive Developer
Posts: 4453
Joined: November 26th, 2005, 7:41 am
Contact:

Post by Sapient »

Another thing, Income would be a more meaningful variable than Villages Held in determining Advantage.

So the equation is looking something like this:

Code: Select all

Advantage = Income Factor + Holdings + Other Advantage Factors
Income Factor = Net Income * INCOME_WEIGHT
Holdings = Gold + ALL( Unit Value )
Unit Value = MAX( price*(%hp), Next Level Value*(%exp) )
Other Advantage Factors = {undefined}
http://www.wesnoth.org/wiki/User:Sapient... "Looks like your skills saved us again. Uh, well at least, they saved Soarin's apple pie."
User avatar
Noyga
Inactive Developer
Posts: 1790
Joined: September 26th, 2005, 5:56 pm
Location: France

Post by Noyga »

Well both the damage inflicted / damage taken and kills / loss stat can be unfair if you play with different factions :

-damage inflicted / damage taken : Drakes vs Rebels
Here despite the fact that the average drake costs more, the drake army would typically have more HP, but with a poor defense (low % of defense, well exploited vulnerability (pierce)).
The drakes, even if they win, will probably take more damage than they inflicts.

-kills / losses : Drakes vs Northerners
The average northerner cost is significally lower so the northerner army would typically recruit more (inferior) units.
Here, the northerners, even if they win, will probably have more losses than the enemy.
Blue_Manta
Posts: 4
Joined: July 17th, 2006, 8:00 am

Post by Blue_Manta »

How about this:
Player A rating =
(actual damage inflicted / player B 'hit point quotient')*{C +(total income / theoretical max income)}

where 'hp quotient' = sum of every enemy units' (alive or dead) hp + all enemy hp healed + all successful enemy drain+ enemy hp gained thru leveling and enemy hp healed thru leveling. ( = the total number of hp that A can target)
e.g. player B is drakes: he finishes with a high 'hp quotient', obliging player A to score proportionally more damage for a better rating.
C would be a constant, in order to achieve the desired weighting between fighting and finance.
Theoretical max income is the total money you would have made if all income sources were yours from the beginning.

A one game rating is perfectly incapable of distinguishing between 'luck' and 'skill'. To do that would require i) a statistically meaningful number of games played and ii) all players' skill levels to remain constant throughout the playtesting phase. This suggests one may as well use actual damage- a 'lucky' player wins more often and should have a higher rating.

The rush strategy is more 'all or nothing' thus he should seldom find himself in a tiebreak situation. If he does, then it is because his rush failed, or his opponent is good at countering the strat. Hence the rush player must still use a range of strats/tactics, and they can be rated.

As ever, feel free to point out any logical flaws...
ventoza veary vestabit
User avatar
appleide
Posts: 1003
Joined: November 8th, 2003, 10:03 pm
Location: Sydney,OZ

Post by appleide »

...All this thinking defeats the purpose of this thread.... I think just "w/d/l/q". Win= number of wins. Draw= games ended by turn limit. Lost= number of losses Quit= number of games disconnected before finish. If in a two player game one player disconnects, the player gets a +1 to its "q" count, the other player gets +1 to its "d" count.
Why did the fish laugh? Because the sea weed.
Dragon Master
Posts: 1012
Joined: February 11th, 2006, 1:04 am
Location: Somewhere

Post by Dragon Master »

Before Noy gets here, I'm going to say this won't be approved upon because it has the potential to be abused
NeoPhile
Posts: 155
Joined: July 22nd, 2004, 4:33 am
Location: Halifax, NS, Canada
Contact:

Post by NeoPhile »

We seem to have gone off on a tangent. We started out talking about a score to pick a winner for a particular game when turns run out (i.e. a tiebreaker), and now we're talking about a rating that follows a player from one game to the next.
Blue_Manta wrote:How about this:
Player A rating =
(actual damage inflicted / player B 'hit point quotient')*{C +(total income / theoretical max income)}

where 'hp quotient' = sum of every enemy units' (alive or dead) hp + all enemy hp healed + all successful enemy drain+ enemy hp gained thru leveling and enemy hp healed thru leveling. ( = the total number of hp that A can target)
e.g. player B is drakes: he finishes with a high 'hp quotient', obliging player A to score proportionally more damage for a better rating.
C would be a constant, in order to achieve the desired weighting between fighting and finance.
Theoretical max income is the total money you would have made if all income sources were yours from the beginning.
Seems pretty reasonable for a two player game, but I think the HP quotient breaks down for 3+ players. It assumes that player A has been fighting all the enemy factions in roughly equal amounts, which I think is unlikely.
Kiba
Posts: 55
Joined: April 30th, 2006, 12:15 am
Location: On the internet
Contact:

Post by Kiba »

Or...we could do anonomyous battles... Where everyone goes in some random matches with their name hidden....

By the end of the battle, you rate. After that, you reveal the name.
project founder of Libregamewiki

http://libregamewiki.org
PingPangQui
Posts: 267
Joined: July 18th, 2006, 11:52 am

Post by PingPangQui »

Why rating system?

What about a turnament. Something like Wesnoth World Cup.

I already hear the voices in my ear

- problem to find appropraite time
- problem of qualification
- problem of identifing yourself
- what map
- ...

OK - maybe like this (although that doesn't solve the problem 100%)

- qualification matches could be at weakends like from hh to hh GMT
- set up a semi-open time table for the World Cup Matches (a time interval in witch the player can negotiate an appropriate time - beforehand)
- who plays against who would be choosen by a small program
- each player has to choose a faction at the beginning and has to play with it through the whole turnament
- might be created randomly by a third person it has to be agreed to a single map beforehand
- there should be an own server for the turnament
- there should be somekind of turnament guides (at least 3, better 5)
- when looking into the turnament forum one should identify himself via icq or similar to the guides (not necessary when registration is implemented - actually I wouldn't like to have a registration for the normal server but for the turnament server it would be appropriate)
- ...

Ok that's for now - short brain-storming

bye Ping Pang Qui
User avatar
irrevenant
Moderator Emeritus
Posts: 3692
Joined: August 15th, 2005, 7:57 am
Location: I'm all around you.

Post by irrevenant »

Given the concerns raised, I think it's probably better to calculate who's likely to win rather than who's done well to date. So rather than basing it on number of kills etc., give an amalgam score based on:
* value (in gold) of units remaining (perhaps multiplied by remaining hp as a percentage?)
* available gold
* income
* strength of your forces in proximity to the enemy keep

ie. attempt to answer algorithmically "if this battle continued, who would likely win it?". It should be a good measure of actual ability to win and, as such, much more difficult to 'game' than a simplistic measure like number of villages held.
FleshPeeler
Posts: 162
Joined: June 19th, 2006, 8:37 pm
Location: A mystery wrapped in an enigma smothered with a three cheese blend.
Contact:

Post by FleshPeeler »

My concern: Aren't there already enough problems with players leaving before the end of a game? Wouldn't something like this give a player more incentive to leave ahead of time?

Also, this little issue . . .

Turn 1 for player 1 ends:
-Player 1 has 7 units.
-Player 2 has 1 unit.
-Player 1 therefore has 100% chance of winning.

<Player 2> o lolo ur gunna win bai
<server>Player 2 has left the game.
What if nobody ever asked "What if?"

FleshPeeler . . . Editting 5 times per every 1 post.
Post Reply