+ Reply to Thread
Page 3 of 4 FirstFirst 1 2 3 4 LastLast
Results 21 to 30 of 33

Thread: A lesson in the negative binomial probability distribution

  1. #21
    Senior Member
    Join Date
    Jan 2016
    Posts
    448
    Here is your simulation, it was really quick.


    ===
    #special case when r = 1
    r<- 1

    #Number of players (or some large amount to calculate the proportion of players accurately)
    b <- 10000

    #Used to store the results
    S <- double(b)

    for(i in 1:b){

    #a will track the number of successes within an attempt
    a <- 0

    #n is the number of trials within an attempt
    n <-0
    p <- 0.001

    while(a < r){

    #For every iteration, increase the number of trials by 1
    n <- n + 1
    p <- min(c(0.001+0.001*n,0.2))

    #was a success or not
    y <- rbinom(1,1,p)

    if(y==1){a = a+1}

    }

    #record the number of attempts
    S[i] <- n

    #print every 100 iterations
    if(i%%1000 == 0){print(i)}

    }

    #histogram
    hist(S,freq=F,xlab="n",,main=paste("Proportion of people and their required number of trials for p = ",round(p,6), "and r = ", r))

    #plot mean
    abline(v = mean(S), col = "red",lwd = 2)

    #plot 2.5% and 97.5% quantiles for the 95% middle
    abline(v=quantile(S,c(0.025,0.975)),col="purple", lwd = 2)


    ===

    The probability formula is 0.001 + 0.001*n (where n is the number of attempts, 0.001 is the decimal representation of 0.1%). I used min(0.001 + 0.001*n,0.2) because when n gets large enough and surpasses 0.2, min(formula,0.2) = 0.2 (which gives the cap you desired). The cap is hit when 0.001 + 0.001*n = 0.2 or when n = 199



    The average number of trials is about 39, 95% of people will fall between 6 and 85. It's hard to work this out theoretically (unlike the previous cases) because the trials are no longer independent.

  2. #22
    Senior Member
    Join Date
    Jan 2016
    Posts
    448
    Quote Originally Posted by High5 View Post
    Awesome, the shape matters! I will be all eyes on this.
    Also, if you look for my post in the 'devs question' thread, I think that you would be one of players who would understand what those questions 'equate' to

    Matlab?
    Alright, posted above. I am writing R scripts (with base functions) but to convert to matlab is fairly easy because I'm not using any special functions other than simulation (no need for the statistics tool box where the last time I used Matlab I needed things like regression to do). To simulate a draw from a Bernoulli distribution would have to change and the plotting functions would have to change to. But the logic is all there.

    And I checked out the questions in the dev thread! These are all questions I wish I had answers too and will look to see if they answer some

  3. #23
    Senior Member Cicasajt's Avatar
    Join Date
    Aug 2015
    Location
    Higgs field
    Posts
    1,233
    the guy who suggested the 50 frags a week ago getting all the credits while i did it way earlier and i also said how rng gets crazy at low chances without any degree in statistics

    Quote Originally Posted by Cicasajt View Post
    why not make all new dragons take 50 fragments and increase drop rates to 10 times as much as now. at least players would see their progression that way. and we all know that the lower the chance of something happening the higher chance it has to never happen.
    Quote Originally Posted by Twixler View Post
    T.T cries quietly

  4. #24
    Senior Member
    Join Date
    Jan 2016
    Posts
    448
    Quote Originally Posted by Cicasajt View Post
    the guy who suggested the 50 frags a week ago getting all the credits while i did it way earlier and i also said how rng gets crazy at low chances without any degree in statistics
    You were the inspiration of this thread. Your intuition was correct and it's nice to quantify why it is the case. When the number of fragments required is > 25 (and honestly should be higher to get closer to perfect symmetry), the number of trials will be symmetrically distributed (like the second graph) and for every 10 you increase the probability, 95% of the people will be about 3 times closer to the mean as it can be seen with the quantification. Your post was good on two parts: symmetry and stability even though the average time to complete a task is still about the same.

    Symmetry is important in the distribution because when something is positively skewed (as seen here), when you are lucky, you aren't that much better off than the mean. But when you are unlucky, good ****ing luck.

  5. #25
    Junior Member
    Join Date
    Apr 2017
    Posts
    14
    The average number of trials is about 39, 95% of people will fall between 6 and 85
    That seems a bit high to for example for DDEs, how would you adjust the bonus yo make it more reasonable?

    I know reasonable is relative, but just want to know your opinion.

  6. #26
    Senior Member
    Join Date
    Jan 2016
    Posts
    448
    The Reply with Quote button seemed to have broke but this is at Jsm.

    Honestly the biggest issue with dragon eggs is the time gate or paywall. Doesn't matter how dedicated you are to the game, if you spend 80 hours a week playing trove or about 30 minutes a week, people with the same power rank have the same odds at progression with diamond dragon eggs. This is unlike most of the other RNG where people have gotten some of the new dragons not because of being lucky, but for the sheer dedication they have put into it (as well as some luck too).

    With respect to instability, there are two points,

    1) Symmetry
    2) Distance between unlucky and lucky (the quantiles I have shown in my graphs)

    Symmetry is important because as shown in the graphs, if you are lucky, you may have saved a couple days. If you are unlucky, well you are going to take a couple weeks longer than most other people.
    Distance between unlucky and lucky is important, but not as important.

    With your scheme to make a function min(a + b*n, y), the value of y isn't too important unless y = 0.05 (there was rarely any cases where people hit the max 0.2, I think out of 10,000 almost none hit it). Also with your scheme, by making b smaller (the increment for each failure) the distribution becomes less skewed but the distance between unlucky and lucky increases. When increasing a, the variance decreases because everyone has about the nominal length. Unfortunately for your scheme, increasing a so that the distance decreases and increasing b to get the distribution to be symmetrical results in too easy to get diamond dragon eggs. The best solution is to make egg pieces (not fragments). But this isn't surprising because this is a very similar problem the 5 egg fragments instead of 50 egg fragments have a problem with.

    It's clear that trove implements the DDE fragments so it's guaranteed to get one after about 100 days for high level players. The goal of empowered boxes would be to make it possible to get it shorter if you get lucky, maybe on average 10 weeks or maybe 125 empowered boxes

    Might I suggest that 25 diamond dragon pieces (not fragments) are required, with the formula 0.05 + 0.01*n per fragment, then the player distribution to make one diamond dragon egg would be,





    It has all the desired properties. On average, people will take 7 weeks per diamond dragon egg, lucky people will take about 5 weeks, extremely lucky people 3-4 weeks, and unlucky people will take about 9 weeks per egg, extremely unlucky people 10-11 weeks. Multiply by about 3 and it ranges between 15 and 27 weeks for the inner 95%.

    It seems trion really likes the large amount of variation. If that is the case, may I suggest a skewed distribution but more skewed negatively so that if you are unlucky, you spend an extra week or 2, if you are lucky, you get 4 weeks knocked off

  7. #27
    Senior Member
    Join Date
    Mar 2017
    Posts
    135
    All I want to know is when will I get my first DDE drop.

    Consol player 240 days logged in 600 emp gem boxes opened give or take..

    Can't be that hard for them to add a floating behind the senses karma bar that gets lucky and luckier as you open or loot items increasing your odds but leaving them still on a RNG slide.

    You odds just get better the more your in to a item chain..
    We would end up knowing the worse case amount on items sooner or later but still would be a RNG feel but increase the odds the more you grind.

  8. #28
    Senior Member Arctech's Avatar
    Join Date
    Sep 2015
    Posts
    147
    I know Warcraft 3, Dota 2, and Final Fantasy make use of something called a Pseduo Random Distribution. Simply put, the probability of success on the nth trial is given by P(n) = c*n where c is a constant and n resets to 1 after each success. The constant is lower than the average probability of success, which decreases the chances of getting too lucky compared to a normal distribution. Since c*n can reach 100%, this prevents you from getting too unlucky. P(n) can also be broken down into a system of equations with different constants for different ranges of n. You can find out more by searching up on it. Here is another idea I had: An Excellent Idea to Deal with RNG Frustrations

  9. #29
    Senior Member
    Join Date
    Jan 2016
    Posts
    448
    Quote Originally Posted by Theuglyone View Post
    All I want to know is when will I get my first DDE drop.

    Consol player 240 days logged in 600 emp gem boxes opened give or take..

    Can't be that hard for them to add a floating behind the senses karma bar that gets lucky and luckier as you open or loot items increasing your odds but leaving them still on a RNG slide.

    You odds just get better the more your in to a item chain..
    We would end up knowing the worse case amount on items sooner or later but still would be a RNG feel but increase the odds the more you grind.

    This is exactly what is wrong with the system. If the probability of getting a diamond dragon egg is 1/100 (which I am not sure if it is close or not) look how skewed the system is,



    Out of 10,000 players, the average person will get a diamond dragon egg within 100 boxes. 2.5% of the population will get one within 3 boxes (within 97 of the mean). The unlucky 2.5% of the players will have to take 367 boxes (267 away from the mean, look at that skew). The 1% unlucky players will take 464 boxes. The 0.5% unlucky players will take almost 600 boxes. And that's not even the worse. Out of 10,000 simulations (and there are at least 10,000) players. Sometimes it could take more than 1200 boxes.

    It blows my mind how something so important in the game could be this unstable AND it's timegated. Which means if you are unlucky, no matter how much effort you put in, you are just as lucky as someone who puts in minimal amount of effort. I am almost certain the way this was implemented is they only considered the average time it takes for a player to get DDE and was completely oblivious about it's stability (but goes with my pessimism with how many people are intuitive with statistics). It wasn't until 6 or so months pass by when they realize that some people are getting royally screwed out of RNG while some people have been riding the luck until they make a change. This makes us like little test rats.

    Quote Originally Posted by Arctech View Post
    I know Warcraft 3, Dota 2, and Final Fantasy make use of something called a Pseduo Random Distribution. Simply put, the probability of success on the nth trial is given by P(n) = c*n where c is a constant and n resets to 1 after each success. The constant is lower than the average probability of success, which decreases the chances of getting too lucky compared to a normal distribution. Since c*n can reach 100%, this prevents you from getting too unlucky. P(n) can also be broken down into a system of equations with different constants for different ranges of n. You can find out more by searching up on it. Here is another idea I had: An Excellent Idea to Deal with RNG Frustrations
    These types of systems are great and can potentially eliminate problems. But that probably requires some re-working on trove's part and I bet you is isn't their priority.

  10. #30
    Senior Member Arctech's Avatar
    Join Date
    Sep 2015
    Posts
    147
    Quote Originally Posted by Cytosine View Post
    These types of systems are great and can potentially eliminate problems. But that probably requires some re-working on trove's part and I bet you is isn't their priority.
    I won't make any assumptions about their priorities, but I really think they should consider these ideas, especially when other major video game companies already use the pseudo random distribution. It isn't difficult to program due to the simplicity of the equation, and it solves many problems associated with RNG without needing to introduce or alter currencies in the first place. More importantly, there is a limit to how unlucky you can be.

+ Reply to Thread

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts