Forums › English Language Forums › General › Suggestions

Search

Method for weighted random material distribution

4 replies [Last post]
Wed, 07/06/2011 - 09:01
Mohandar's picture
Mohandar

Although the material distribution algorithm is fair in the long run, it can be brutal in the short term. I have proposed methods for assigning materials after the run before, but I may have hit upon a better idea that works better with the "assign-as-you-go" model. The method is as follows:

1) Each player starts with a percentage value for each * level material. When a material is picked up, the RNG rolls to determine who gets that material. The person receiving the material has their percentage value decreased accordingly, and everyone else gets theirs increased- but only for that * level.
2) When a person joins a run, they are assigned a percentage value of P = 1/N, where N is the number of people. Everyone else has their percentage value subtracted by P/(N-1). This is done for each * level.
3) When a person leaves a run, their current percentage value is divided by the number of remaining players, and each player gets that number added to their percentage value. This is also done for each * level.

To illustrate, here is an example. I will use the format (playername)[0*, 5*] to denote each player's percentage values. (I will omit the values for 1*-4* from now on to make reading easier, since my example will only involve two material pickups, a 0* and a 5*)
1) Players A and B start a run. A[.5, .5]; B[.5, .5].
2) A blue shard is picked up (0*). The RNG rolls, and determines that player A gets it. Player A now has their 0* value decremented, say be 10%, and the amount is distributed to all other players (in this case, just B). Thus, A[.45, .5]; B[.55, .5]
3) Player C joins the run. They are assigned a percentage value of 1/3: C[.33, .33] Since percentages must add up to 1, Players A and B have (.33/2) subtracted: A[.28, .33]; B[.39, .33]. Notice how it maintains fairness- the next time a shard (0*) is picked up, player A, who has already picked one up, is less likely to receive it, and player B is more likely to receive it.
4) Now, a flame soul is picked up. The RNG determines it goes to player C. The percentage values for 5* are modified accordingly- perhaps a greater penalty of 50% is assessed because 5* mats are rarer. Thus, C's 5* percentage value becomes (.33*.5), and the 0.165 percentage points are distributed to A and B: A[.28, .41]; B[.39, .41]; C[.33, .17]
5) Lastly, Player B leaves. His percentage values (.39, .41) are divided by the remaining number of players, and distributed evenly. The percentage values now look like this: A[.48, .62]; C[.52, .38].

Notice that a 'memory' that A picked up a blue shard, and C picked up a flame soul, are maintained by the percentage values. Because the system still relies on the RNG to make the distribution decision, and maintains a separate percentage value for each material, one cannot game the system as in a round-robin distribution scheme. I believe this weighted distribution method could reduce the amount of perceived unfairness in the material distribution system.

Wed, 07/06/2011 - 09:48
#1
Orangeo's picture
Orangeo
If seems like a good idea,

If seems like a good idea, but i got a bit confused. I'll get to that later. I just don't really agree with you on how the current system is flawed. Not that your isn't right, but why work on this as opposed to new boss dungeons, items, or just general expansion? It wouldn't be the most thrilling change.

Now, back to your method, lemmie try to dumb it down for myself, since you seemed to lose me after the example.

Say there are 2 people on a level, just started.
They each have a 50% chance of getting a 1 star item, and a 50% chance of getting a 2 star item, and a 50% chance of getting a 3 star item. For simplicity, their on a level with only 1 to 3 star.
The first guy picks up a 1 star item, so his precentage of getting the next 1 star decreases, and the second guy's precentage increases.
Then the second guy randomly get's a 2 star item, so his precentage of getting that decreases, increasing the other players precent.
Nobody found a 3 star, so that's still 50/50% chance of either of them getting it.

What I missed was how much the precent decreases, and how much it will change if someone else joins. Other than that, I think I got it.

Wed, 07/06/2011 - 10:11
#2
ninjajpbob
Legacy Username
On another note: If someone

On another note: If someone is dead, they don't deserve the material, unless they were able to get at least one strike in to the monster, I've noticed a lot that the person who gets the mat, is the person who hits the monster first, your friend can take care of the monster later, but it is more likely for you to get the mat...

Sat, 12/31/2011 - 09:51
#3
Sertim
This needs more publicity

This should seriously be implemented. I hate it how when I needed beast scales so much, and 3 of them dropped one by one, my partner got ALL of them >.<

Sat, 12/31/2011 - 12:07
#4
Softs's picture
Softs
Hehee, I solo a lot so I

Hehee, I solo a lot so I almost always have the mats I need. But this does sound like a good enough idea, why not make loot options select-able? Lots'a games allow parties to set their loot distribution, often done by higher up characters to help their newer friends~

Powered by Drupal, an open source content management system