EOSERV Forum > Announcements > Changes to drop rate calculation in r504 / EOSERV 0.7.0
Page: << 1 >>
Changes to drop rate calculation in r504 / EOSERV 0.7.0
Author Message
Post #198939 Changes to drop rate calculation in r504 / EOSERV 0.7.0

Heads up about a change made to drop rate calculations in EOSERV r504 and 0.7.0.

Previous to r504 / 0.7.0 it worked by rolling every single drop and then picking one item randomly from every item hit. This led to unintentionally lowered drop rates in situations like this:

257 = 200,1,1,1, 1,100,1000,100 (1% chance of devil costume, 100% chance of 100-1000 gold)

In the situation above, since the gold drop would always be hit (100% drop rate), it will always be a possible drop along side a devil costume, effectively halving its drop rate from the intended 1%, down to 0.5%.

After r504 / 0.7.0 the drop rates are scaled evenly, exactly matching the rates written, and scaling down proportionally with a warning if the rates add up to greater than 100%.

Note that this change will have a significant impact on most multi-item drop tables. You can revert back to the old behaviour by changing the DropRateMode config option back to 1 (default is now 3, the closest to main's behavior is 2).
9 years, 1 week ago
Post #198940 Re: Changes to drop rate calculation in r503 / EOSERV 0.7.0

Good call. Just noted this issue a number of days ago.

Aren't you just going to have EOSERV automatically order the drops in terms of rarity? That seems like a nuance that will fuck people up.

---
Want to learn to pixel?
Pixelsource.org
9 years, 1 week ago
Post #198942 Re: Changes to drop rate calculation in r503 / EOSERV 0.7.0
Cirras posted: (20th Nov 2015, 10:46 am)

Good call. Just noted this issue a number of days ago.

Aren't you just going to have EOSERV automatically order the drops in terms of rarity? That seems like a nuance that will fuck people up.


I'd rather not. The idea of changing is that it lets people keep in mind exactly how the drops are calculated when writing their drop tables (and also since I believe it's the way EO main does it). Sorting by rarity as a general rule keeps the drops as close to the written rates as possible, but it just adds confusion in other situations where it doesn't work, like 5 different drops at 20% being progressively rarer.

Ideally I'd like to switch to a more complex drop table format with weighted drops instead, but maybe another day.

I am also considering changing the default to something of a hybrid between absolute and weighted rates, since it seems the less likely to surprise a noob:

  • Gold(20%) -> rates as written
  • Gold(50%), Crow Claw(10%) ->  rates as written
  • Gold (100%), Turtle (20%), Devil (5%) -> rates scaled from 125 to 100% -> Gold (80%), Turtle (16%), Devil (4%)

Edit: I've implemented the above and made it the new default mode.

9 years, 1 week ago
Post #198943 Re: Changes to drop rate calculation in r504 / EOSERV 0.7.0

You know, I read that about 100% too late at night and thought it had to do with the actual physical order of the drops. Evidently I was tired. I dig the third option, cool stuff! I'll be implementing this asap.

---
Want to learn to pixel?
Pixelsource.org
9 years, 1 week ago
Post #199561 Re: Changes to drop rate calculation in r504 / EOSERV 0.7.0

Das cool. o/

8 years, 38 weeks ago
Page: << 1 >>

EOSERV Forum > Announcements > Changes to drop rate calculation in r504 / EOSERV 0.7.0