delete

delete

in PvP

Posted by: ketchup.2783

ketchup.2783

Q:

Looking at the algorithm and wanting to understand it, I have some questions that a dummy like me would be very appreciative if answered.

I. What do these terms mean:

1. falloff
2. RosterSize Distance
3. Rank Distance
4. Rating Distance
5. roster
6. team
7. roster.countProfessions(profession)
8. team.countProfessions

II. I don’t understand the following code. Explain, plox:

def pickRoster(team, maxLadder, maxRosterSize, potentials, config): #idk what this is
best = None
playersNeeded = config.teamSize – team.players
for roster in potentials:
if roster.players > playersNeeded: #please explain this
continue
roster.score = scoreRoster(roster, team, maxLadder, maxRosterSize, config.scoring)
if best is None or best.score < roster.score:
best = roster
return best

III. How is team and roster rating and rank calculated?

ty in advanced, to anyone who tries to tackle this for me.

(edited by ketchup.2783)

delete

in PvP

Posted by: Evan Lesh

Evan Lesh

PvP Gameplay Programmer

Next

A:

Still, what does ‘team.ratinglow’ mean in the following sense:

#adjust score by lower-bound rating distance
distance = abs(team.ratingLow – roster.ratingLow)
score += distance * config.rating.distance

When we are gathering up rosters to make a team, we don’t compare mmr directly, we compare the worst-case scenario of their mmr: ratingLow. This is glicko rating minus glicko rating deviation.

http://www.glicko.net/glicko/glicko2.pdf

Bluxgore (80 Warr), Xilz (80 Necro), Ivo (80 Eng)
Bra (80 Guard), Fixie Bow (80 Ranger), Wcharr (80 Ele)
Xdragonshadowninjax (80 Thief)

delete

in PvP

Posted by: BakiSaN.9281

BakiSaN.9281

Where did you dig dis up?

Sta ce biti s’ kucom!?

delete

in PvP

Posted by: naphack.9346

naphack.9346

From what I can tell, just glancing over it without going into detail:

def pickRoster(variables) defines a function, which can be called. It simply says “this following section is a function, which can be used by calling it and supplying it with the variables in the brackets.”

for roster in potentials
is basically a for each loop. You take the list variable “potentials”, which contains multiple rosters and go through the list one by one. The currently selected roster is stored in the variable roster.
Explanation:
FOR – loop function
ROSTER – loop variable
in – how to get loop variable
POTENTIALS – list, where to get the individual roster variables from.

For each of those rosters, the function
if roster.players > playersNeeded: continue
is checked. It simply checks, whether the roster size of the currently checked roster is larger than the required players and if yes, it calls the continue function, which jumps right back to the loop head and starts over with the next roster.
If not, it skips the “continue” and goes right on to examining, whether the roster is a good fit.

I’d advise you read a bit about programming. Especially about loops and conditions, it’s all pretty basic.

The only crime, turrets committed, is being good against the celestial meta.
The mob has spoken and the turrets shall be burnt at the stake.

delete

in PvP

Posted by: Random Weird Guy.3528

Random Weird Guy.3528

Roster size is the number of people in a premade party. The distance would be the difference in the size of premades between the two teams.
Premades add something like 2% rating per person in the party.

Random Engineering // Trixxti // Random Noises (worst thief eu)
Svanir Appreciation Society [SAS]

delete

in PvP

Posted by: Khalisto.5780

Khalisto.5780

Dont bother trying to understand it, it doesnt work

Love roaming builds and non meta silly builds.
Don’t worry boys, Blade and Soul is coming.

delete

in PvP

Posted by: naphack.9346

naphack.9346

Disclaimer: I’m still trying to boil it down to as little terminology as possible, without using tens of different technical terms, so someone, who knows his stuff: When reading “variable” just insert the correct term in the current context, be it object, attribute or whatever.

the dot operator basically means either:
Access the following function from the variable.
roster.countProfessions(profession)
In this example, roster has a function, which counts, how many of a specified profession are in the roster.

or:
Access the following sub-variable from the variable.
roster.ratingLow
In this example, I’d assume, it’s just the lowest rating amongst all players of the roster. Might also be the lowest rating, the roster can ever be matched with. Read the context and find out.

Basically, the dot just tells the program to “go deeper” and access information stored within a variable.

That being said, you can now begin to look through the source again and connect the dots yourself. (stronk pun!)

The only crime, turrets committed, is being good against the celestial meta.
The mob has spoken and the turrets shall be burnt at the stake.

delete

in PvP

Posted by: naphack.9346

naphack.9346

For that, I’d need to read the whole algorithm, which, tbh, I cba doing.

I’ve seen way worse code. It’s readable and can be easily understood. At least, you aren’t dealing with an abc-programmer or a three-star-programmer here.

The only crime, turrets committed, is being good against the celestial meta.
The mob has spoken and the turrets shall be burnt at the stake.

delete

in PvP

Posted by: Evan Lesh

Previous

Evan Lesh

PvP Gameplay Programmer

Next

Looking at the algorithm and wanting to understand it, I have some questions that a dummy like me would be very appreciative if answered.

I. What do these terms mean:

1. falloff – The reduction of how strict matchmaking is
2. RosterSize Distance – Difference between size of two rosters/parties
3. Rank Distance – Difference between average rank of two rosters/parties
4. Rating Distance – Difference between average rating of two rosters/parties
5. roster – A party of player’s queued for PvP
6. team – A collection of rosters adding up to 5 players
7. roster.countProfessions(profession) – counts the number of a given profession in a party
8. team.countProfessions – counts the number of a given profession in a group of 5 players

II. I don’t understand the following code. Explain, plox:

def pickRoster(team, maxLadder, maxRosterSize, potentials, config): #Picks another roster/party of players to put on a team
best = None
playersNeeded = config.teamSize – team.players
for roster in potentials:
if roster.players > playersNeeded: #only pick as many players as will fit on this team
continue
roster.score = scoreRoster(roster, team, maxLadder, maxRosterSize, config.scoring)
if best is None or best.score < roster.score:
best = roster
return best

III. How is team and roster rating and rank calculated?
Rank is the average PvP rank of the players in the party/roster.
Team rating is the average mmr of the members.

ty in advanced, to anyone who tries to tackle this for me.

Tried to answer inline ^

Bluxgore (80 Warr), Xilz (80 Necro), Ivo (80 Eng)
Bra (80 Guard), Fixie Bow (80 Ranger), Wcharr (80 Ele)
Xdragonshadowninjax (80 Thief)

delete

in PvP

Posted by: Evan Lesh

Previous

Evan Lesh

PvP Gameplay Programmer

Next

-Does the following code mean that the weakest link in your premade will only be -compared to the weakest link in your team and the abs difference will raise your -scoreRoster?

Nope, it’s done by averages of the numbers involved.

Bluxgore (80 Warr), Xilz (80 Necro), Ivo (80 Eng)
Bra (80 Guard), Fixie Bow (80 Ranger), Wcharr (80 Ele)
Xdragonshadowninjax (80 Thief)

delete

in PvP

Posted by: Jasher.6580

Jasher.6580

When we are gathering up rosters to make a team, we don’t compare mmr directly, we compare the worst-case scenario of their mmr: ratingLow. This is glicko rating minus glicko rating deviation.

http://www.glicko.net/glicko/glicko2.pdf

Why wouldn’t you include the rating deviation?

delete

in PvP

Posted by: Evan Lesh

Previous

Evan Lesh

PvP Gameplay Programmer

When we are gathering up rosters to make a team, we don’t compare mmr directly, we compare the worst-case scenario of their mmr: ratingLow. This is glicko rating minus glicko rating deviation.

http://www.glicko.net/glicko/glicko2.pdf

Why wouldn’t you include the rating deviation?

When I said ‘minus’ I literally meant a subtraction. We assume players with ‘unsure’ ratings are probably on the less-skill side. As mmr becomes more accurate, that difference becomes very small.

Bluxgore (80 Warr), Xilz (80 Necro), Ivo (80 Eng)
Bra (80 Guard), Fixie Bow (80 Ranger), Wcharr (80 Ele)
Xdragonshadowninjax (80 Thief)

delete

in PvP

Posted by: Jasher.6580

Jasher.6580

When we are gathering up rosters to make a team, we don’t compare mmr directly, we compare the worst-case scenario of their mmr: ratingLow. This is glicko rating minus glicko rating deviation.

http://www.glicko.net/glicko/glicko2.pdf

Why wouldn’t you include the rating deviation?

When I said ‘minus’ I literally meant a subtraction. We assume players with ‘unsure’ ratings are probably on the less-skill side. As mmr becomes more accurate, that difference becomes very small.

Okay understood. Good deal.

delete

in PvP

Posted by: Superform.1067

Superform.1067

so matchmaking is done using voodoo

splains a lot

delete

in PvP

Posted by: Merus.9475

Merus.9475

When I said ‘minus’ I literally meant a subtraction. We assume players with ‘unsure’ ratings are probably on the less-skill side. As mmr becomes more accurate, that difference becomes very small.

So, hang on. If you have a high rating and start winning over 50% of your games, your deviation will increase because you’re winning. So does that mean, if your deviation increases by more than your rating changed, your MMR effectively goes down?

delete

in PvP

Posted by: Random Weird Guy.3528

Random Weird Guy.3528

When I said ‘minus’ I literally meant a subtraction. We assume players with ‘unsure’ ratings are probably on the less-skill side. As mmr becomes more accurate, that difference becomes very small.

So, hang on. If you have a high rating and start winning over 50% of your games, your deviation will increase because you’re winning. So does that mean, if your deviation increases by more than your rating changed, your MMR effectively goes down?

I don’t think you understand what deviation is. Deviation is the amount of uncertainty, a player who is fairly new or constantly gets unpredicted match results will have a large deviation.
If your deviation has settled, both your MMR and deviation will move very slowly. Your deviation will move slower than your MMR since the system will assume you’re just having a lucky run (which is the whole point of the glicko system).

Random Engineering // Trixxti // Random Noises (worst thief eu)
Svanir Appreciation Society [SAS]

(edited by Random Weird Guy.3528)