lot of people , always complain about unbalance games
all i can say is , if you press autojoin , its 50% you win / lose "CTF"
whe need a , globel stat server , that can make balance teams
it would be ground breaking , if it would work ..
Moderators: Nexuiz Moderators, Moderators
It's also impractical without some registration system which I would also be against.
Dokujisan wrote:IIRC, this is because you were paranoid about someone being able to track your activity or something?
Anyway, what if it were opt-in?
victim [v] wrote:What happens if one of the teams is full of Nex gods and the other has the same number of new players?
[-z-] wrote:You forgot to incorporate time. If pavlvs joins with 30 seconds left and gets 1 kill, he's going to get ranked as a bad player.
The essential ingredients for ranking CTF players would be:
kills, deaths, flag scores, flag drops, flag returns and time. Ideally, flag carrier kills and accuracy would be incorporated but that would need bigger code changes. But ignoring those factors we can do something like this:
(k-d)+2*(1*f*(r-d))/t
Where:
k = kills
d = deaths
f = flag scores
d = flag drops
r = flag returns
t = time
In english, You'll get a combination of your killing power (kills minus deaths) plus your value as a team player (returns minus drops multiplied by the number of flag scores times 2). Notice, if the player has more drops than returns, they will be punished by the same function that would reward them if they weren't such a selfish player. Option, 2 could be subbed in with a value set by the server admin, v. Then divide those two numbers by time.
to summarize:
(k+v(x))/t
where:
k = killing power
v = value as a team player
x = bonus/punishment multiplier
t = time
Examples:
((k-d)+2*(1*f*(r-d)))/t
25 kills, 5 deaths, 3 flag caps, 1flag drop, 3 flag returns, 6 minutes
(team player)
((25-5)+2*(1*3*(3-1)))/6
(20+2*(1*3*(2)))/6
(20+2*(3*(2)))/6
(20+2*6)/6
(20+12)/6
(32)/6 = 5.333
20 kills, 15 deaths, 0 flag caps, 3 flag drop, 1 flag returns, 6 minutes
(selfish / unaware)
((20-15)+2*(1*0*(1-3)))/6
(5+2(-2))/6
= 1/6 = .1667
Xeno The Blind wrote:Belittling replies aren't really necessary, are they? Simply because you don't see the utility of something doesn't make it meaningless or useless. The truth is you have no idea why I care about such things nor will you ever. Perhaps I have good reasons, perhaps I'm just batshit paranoid (which in turn might have a reasonable basis).
Btw, apart from the anonymity aspect, global stats just leads to more prick-waving as people get more focused on trying to be better than everyone else.
tZork wrote:deaths are not necessarily a bad thing wrt to team value. for example, a player prepared to sacrifice himself to take the brunt of the counter attack while hes team got the other ones flag are a valuable team member.
tZork wrote:flag return scores are not that important, anyone can (and should!) return the flag. carrier kills however needs to be factored in.
tZork wrote:kills are not always good. take a map like hydronex. killing off to much will mean the enemy base is crawling with 150 hp players armed with, at least, a rather nasty shotgun. making the attackers job near impossible. and then of course if you spend time killing instead of trying to cap or defend, or fulfill whatever job the middleman needs to be doing. your not helping your team.
tZork wrote:killing power has little to do with k/d ratio, this part is bogus imo. k/t are more like it.
tZork wrote:weapon / item hogging are a BIG - in team play. someone grabbing a gun they allready have _while teammates are close_ or gobbeling up more then 200/100 hp/ar need to have their team-worth-score cut drastically regardless of other factors. im sure theres other things like this that needs to be thought of, this was just of the top of my head when i read this.
tZork wrote:what really would bring some valuable info to this equation is if the player a) announces hes role and b) tried to fulfill it. hard to make happen tho.
tZork wrote:in all i think its good to try to develop a generic score formula. but in the end its hard to evaluate a players worth by statistics.
tZork wrote:perhaps a karma system could help. eg let players say i dis/like this player. to be effective that would need reliable between game tracking tho.
[-z-] wrote:tZork wrote:deaths are not necessarily a bad thing wrt to team value. for example, a player prepared to sacrifice himself to take the brunt of the counter attack while hes team got the other ones flag are a valuable team member.
lol wut? You're still dying, it doesn't matter if it's for the good of the team, that's a whole 'nother level of statistics that my equation is not concerned with. Regardless of the fact that Nexuiz can't predict whether you died to help your team or not. Dying is not a good thing, I don't believe you should get points even if you did die ~for your team~. You still died, and lost all your weapons and your location.
[-z-] wrote:tZork wrote:flag return scores are not that important, anyone can (and should!) return the flag. carrier kills however needs to be factored in.
Well now, your ideology and public server realities are two distinct pictures. You'd like to assume everyone knows to retrieve the flag but spec on galts for a while and you'll see just how oblivious some players can be.
[-z-] wrote:tZork wrote:kills are not always good. take a map like hydronex. killing off to much will mean the enemy base is crawling with 150 hp players armed with, at least, a rather nasty shotgun. making the attackers job near impossible. and then of course if you spend time killing instead of trying to cap or defend, or fulfill whatever job the middleman needs to be doing. your not helping your team.
In this example, the deaths are also high... so if we go back to my point about deaths being a bad thing, you'll see how this balances out.
[-z-] wrote:tZork wrote:killing power has little to do with k/d ratio, this part is bogus imo. k/t are more like it.
it's all over time... kills minus deaths times a multipler OVER TIME.
[-z-] wrote:tZork wrote:weapon / item hogging are a BIG - in team play. someone grabbing a gun they allready have _while teammates are close_ or gobbeling up more then 200/100 hp/ar need to have their team-worth-score cut drastically regardless of other factors. im sure theres other things like this that needs to be thought of, this was just of the top of my head when i read this.
Again some sort of ideology here. I'm speaking about public servers. Public servers.
[-z-] wrote:tZork wrote:what really would bring some valuable info to this equation is if the player a) announces hes role and b) tried to fulfill it. hard to make happen tho.
While I'd love a team fortress mode, that's hardly a solution to balancing.
[-z-] wrote:tZork wrote:perhaps a karma system could help. eg let players say i dis/like this player. to be effective that would need reliable between game tracking tho.
What could possibly go wrong?!?
I feel like you're trying to hold my formula up against unrealistic hopes and dreams. I'm tired of this "it won't work" attitude. Experiments are how we build knowledge about our science.
[-z-] wrote:I like psychcf' idea about the 'new player' sprite but unless we match a user's ip against a database, how would we know? Let the user control it? That'll lead to abuse. Global login? Don't hold your breath.
Dokujisan wrote:Xeno The Blind wrote:Belittling replies aren't really necessary, are they? Simply because you don't see the utility of something doesn't make it meaningless or useless. The truth is you have no idea why I care about such things nor will you ever. Perhaps I have good reasons, perhaps I'm just batshit paranoid (which in turn might have a reasonable basis).
I don't think it was belittling (especially not compared to some of the comments you make from time to time).
You seem concerned about a threat stemming from this.
I don't see any reason for concern, even in theory, from someone who participates in IRC and on forums. I don't see the difference. Thus, it appears like paranoia to me. You don't seem interested in explaining any further, so we're at an impasse.
My concern is that you could be holding back development of a much-wanted feature while giving very little explanation. I don't want to know your personal life, but it would be useful to know something more to support the concern. I don't see how it could be any more dangerous than using other internet services, like a web forum, IRC or email.Btw, apart from the anonymity aspect, global stats just leads to more prick-waving as people get more focused on trying to be better than everyone else.
Competitive gameplay doesn't spawn "prick-waving" any more than forums spawn heated arguments. It is really dependent upon the community. Many people value competition for adding excitement to a game. Some might use stats as a method for tracking improvement.
esteel wrote:Basicly i'm still thinking that there are too many unknows to get such a system working really well and that people themself should do the work, but during the last weeks i slowing was convinced that a lot of people are just mean and will abuse any system. You should be sure that its worth to put work into this before you continue..
[-z-] wrote:tZork wrote:deaths are not necessarily a bad thing wrt to team value. for example, a player prepared to sacrifice himself to take the brunt of the counter attack while hes team got the other ones flag are a valuable team member.
lol wut? You're still dying, it doesn't matter if it's for the good of the team, that's a whole 'nother level of statistics that my equation is not concerned with. Regardless of the fact that Nexuiz can't predict whether you died to help your team or not. Dying is not a good thing, I don't believe you should get points even if you did die ~for your team~. You still died, and lost all your weapons and your location.
[-z-] wrote:tZork wrote:flag return scores are not that important, anyone can (and should!) return the flag. carrier kills however needs to be factored in.
Well now, your ideology and public server realities are two distinct pictures. You'd like to assume everyone knows to retrieve the flag but spec on galts for a while and you'll see just how oblivious some players can be.
[-z-] wrote:tZork wrote:kills are not always good. take a map like hydronex. killing off to much will mean the enemy base is crawling with 150 hp players armed with, at least, a rather nasty shotgun. making the attackers job near impossible. and then of course if you spend time killing instead of trying to cap or defend, or fulfill whatever job the middleman needs to be doing. your not helping your team.
In this example, the deaths are also high... so if we go back to my point about deaths being a bad thing, you'll see how this balances out.tZork wrote:killing power has little to do with k/d ratio, this part is bogus imo. k/t are more like it.
it's all over time... kills minus deaths times a multipler OVER TIME.
[-z-] wrote:tZork wrote:weapon / item hogging are a BIG - in team play. someone grabbing a gun they allready have _while teammates are close_ or gobbeling up more then 200/100 hp/ar need to have their team-worth-score cut drastically regardless of other factors. im sure theres other things like this that needs to be thought of, this was just of the top of my head when i read this.
Again some sort of ideology here. I'm speaking about public servers. Public servers.
[-z-] wrote:tZork wrote:what really would bring some valuable info to this equation is if the player a) announces hes role and b) tried to fulfill it. hard to make happen tho.
While I'd love a team fortress mode, that's hardly a solution to balancing.
[-z-] wrote:tZork wrote:perhaps a karma system could help. eg let players say i dis/like this player. to be effective that would need reliable between game tracking tho.
What could possibly go wrong?!?
[-z-] wrote:I feel like you're trying to hold my formula up against unrealistic hopes and dreams. I'm tired of this "it won't work" attitude. Experiments are how we build knowledge about our science.
[-z-] wrote:esteel wrote:Basicly i'm still thinking that there are too many unknows to get such a system working really well and that people themself should do the work, but during the last weeks i slowing was convinced that a lot of people are just mean and will abuse any system. You should be sure that its worth to put work into this before you continue..
This is why I chose to divide by time im my equation. It gives us an average. I'm not saying it's a perfect solution but it's better than what we currently have. In theory my code is a much simpler solution than a global user system. A little math, get a number to assert a compound 'value' on a player, group based on individual values.
victim wrote:On some servers the only team balancing is simply a message informing the bigger team. The method the server uses seems to be very basic - a simple head count.
On other servers, some form of enforced auto balancing takes place. The server actually makes somebody change teams, again the method seems to be a basic head count. The server tries to balance the teams by moving a player from the oversized team.
Do we want our team based games to end with all the teams having similar scores or do we want the players to decide for themselves (free market vs state control)?
I personally want the server to tell both teams when they appear to be seriously out of balance. When I'm in the weaker team I want to see a message telling me that we are currently below par.
As esteel has said (and have others) to balance the teams at the start of the game the server needs to be able to positively identify the players. The server could identify the players from the previous game that stay connected with their IP. However, the server cannot identify a player who connects after the game has started.
If a players disconnects and subsequently reconnects, even with both the same IP and player name there is no guarantee that it is the same person.
Although if some kind of secret token based authentication was used (a line in the players config or even a cookie), then it would be possible for each server to identify a player. Each server would have its own stats for all the participating players. The server would then know the players token and the server admins could easily use it.
Maybe we need a third way. Reduce the bigger teams potential points, award them less points per flag capture, keys collected. Or give them less health, reduce their speed. Simply penalise the stronger team.
tZork wrote:Heres a simplified version of what im currently working on for a team balancer:
defensive score = (fc kills + flag returns + kills close to flag) / (time played / time limit)
middleman score = (kills + (kills close to own fc * 5)) / (time played / time limit)
offensive score = ((captures / capture limit) - ((failed captures / cap limit) * 0.5)) / (time played / time limit)
[-z-] wrote:tZork wrote:Heres a simplified version of what im currently working on for a team balancer:
defensive score = (fc kills + flag returns + kills close to flag) / (time played / time limit)
middleman score = (kills + (kills close to own fc * 5)) / (time played / time limit)
offensive score = ((captures / capture limit) - ((failed captures / cap limit) * 0.5)) / (time played / time limit)
This is like an over simplified version of what I did.
[-z-] wrote:You just made it require new information about events and dividing it up amongst these unknown (to the game) areas of play. Mine only requires math.
The only thing I agree with is your denominator.
I like where you're going with it but I think it's unrealistic unless you're coding all that extra information. Though if that's the case, I'd argue you use your efforts towards a stronger base.
Return to Nexuiz - Development