|
Post by baelwulf on May 3, 2006 15:37:28 GMT -5
Hi everyone, what I'm wondering is if it would be possible to create an LUA script that would read your random rolls and use the Law of Averages to determine an approximate probability of your next roll being high?
|
|
sdphantom
Full Member
Savior and Destroyer
Posts: 230
|
Post by sdphantom on May 3, 2006 16:46:53 GMT -5
Sure, it's possible. This would do no better than just guessing anyway. It is random after all.
The Law of Averages wouldn't really help anyway. It's basically taking the trend of rolls and based off that, trying to determine what the next roll would be. This method already contradicts itself because there are 2 completely opposite theories of it.
Trend shows a favor toward one side: 1) It must keep choosing from that side. 2) It must switch sides to balance out the average.
The only way to reliably predict the random numbers is to get 3 things, the mathmatical formula for the random number generator, the seed it uses, and the the internal varible data of the number generator at the given time.
|
|
|
Post by deathravin on May 3, 2006 20:56:29 GMT -5
This is like in Roulette people think they can predict the next color by the last colors that had come up before (E.G. if 5 reds come up in a row, there is more of a chance that black is going to come up). Or flipping a coin etc.
While in reality every time you flip a coin, you have a 50/50 chance it lands on head or tales. Every time, weather it has come up heads 900 times or 1 time. It's still 50/50. Just like you have in FFXI every time you /random you have a 1:1000 (althought I've never seen a 1000 roll or a 0 roll, i'm assuming) chance of getting any number.
|
|
|
Post by baelwulf on May 3, 2006 20:59:44 GMT -5
Interesting, you've brought much to my attention. I had always assumed that it was based of a simple random number generator such as you might find in a handheld calculator. In that it generates a completely random number on the interval [0, 0.999] or in the case of the game [0,999](scaled by a factor of 1000). Given this information to be true(which I'm not altogether sure of), it would mean that every possibility is equally likely. And the law of averages states that after an infinite number of rolls, the average would have to be 500. Therefore in the case of relative extremum, there needs to be a balancing figure(or several balancing figures). For example if one rolls a 999 then there should, theoretically, be either an extremely low number rolled sometime soon(next roll, or roll after may be in the single or double digits), or else several somewhat low rolls(2-400 for 3 or 4 times). With this knowledge, could you not design a script that, using an average for your last 10-12 rolls, could give you a general idea of when a good time to roll/lot would be? I'm quite sure the capability is there, I can write the program in Java rather easily but I don't know how to access the information in the game, which means tedious inputting of each roll in order to figure it out. Doing it that way is boring if not difficult, and I find myself just going on my intuition on deciding which roll to lot on. It works rather well but sometimes I lose my head and roll when I shouldn't. I'm trying to learn the API for Lunar scripting, but I'm a tad slow . I'm sure I will figure this out eventually but I imagine this would be the matter of a few minutes for you more advanced scripters and I would be obliged if someone could write this.
|
|
sdphantom
Full Member
Savior and Destroyer
Posts: 230
|
Post by sdphantom on May 4, 2006 3:57:36 GMT -5
This is like in Roulette people think they can predict the next color by the last colors that had come up before (E.G. if 5 reds come up in a row, there is more of a chance that black is going to come up). Or flipping a coin etc. While in reality every time you flip a coin, you have a 50/50 chance it lands on head or tales. Every time, weather it has come up heads 900 times or 1 time. It's still 50/50. Just like you have in FFXI every time you /random you have a 1:1000 (althought I've never seen a 1000 roll or a 0 roll, i'm assuming) chance of getting any number. As a matter of fact, the random number generator isn't exactly random. There's a very complex formula involved that probably even SE doesn't know. This is given the incabibility for computers to ever make a "guess". This formula is often given a "seed", which is any number, usually based off of the current time in most programs. In most programming languages, the random number generator always returns a float value between 0 and 1 (always excluding 1 itself). This result is multiplied by whatever number and rounded to return with the outcome you see. Interesting, you've brought much to my attention. I had always assumed that it was based of a simple random number generator such as you might find in a handheld calculator. In that it generates a completely random number on the interval [0, 0.999] or in the case of the game [0,999](scaled by a factor of 1000). Given this information to be true(which I'm not altogether sure of), it would mean that every possibility is equally likely. And the law of averages states that after an infinite number of rolls, the average would have to be 500. Therefore in the case of relative extremum, there needs to be a balancing figure(or several balancing figures). For example if one rolls a 999 then there should, theoretically, be either an extremely low number rolled sometime soon(next roll, or roll after may be in the single or double digits), or else several somewhat low rolls(2-400 for 3 or 4 times). With this knowledge, could you not design a script that, using an average for your last 10-12 rolls, could give you a general idea of when a good time to roll/lot would be? I'm quite sure the capability is there, I can write the program in Java rather easily but I don't know how to access the information in the game, which means tedious inputting of each roll in order to figure it out. Doing it that way is boring if not difficult, and I find myself just going on my intuition on deciding which roll to lot on. It works rather well but sometimes I lose my head and roll when I shouldn't. I'm trying to learn the API for Lunar scripting, but I'm a tad slow . I'm sure I will figure this out eventually but I imagine this would be the matter of a few minutes for you more advanced scripters and I would be obliged if someone could write this. It would be easy to build a random statistics script. Apply whatever theory you want to it, but I'm not guarenteeing any of those theories to work.
|
|
|
Post by deathravin on May 4, 2006 10:58:37 GMT -5
While it is true that a RNG runs off an algorithm that can be predicted, you would have to be able to reverse the algorithm and be able to know the precise CPU clock tick the RNG is working off of, which you would never be able to guess.
True RNGs wont appear until Quantum processors which are still 20 or so years away.
At any rate, for all intents and purposes the RNG on any computer is as random as you're going to get, and is still going to produce any number between 1 and 1000 any time you /random, there is no way to predict the next number, there is no way to even attempt to guess at it, and you can apply the law of probability as much as you want, but even if /random has given you 320 10 times in a row there is still 1:1000 chance it will come up as 320 next time you /random.
|
|
sdphantom
Full Member
Savior and Destroyer
Posts: 230
|
Post by sdphantom on May 4, 2006 12:58:21 GMT -5
While it is true that a RNG runs off an algorithm that can be predicted, you would have to be able to reverse the algorithm and be able to know the precise CPU clock tick the RNG is working off of, which you would never be able to guess. True RNGs wont appear until Quantum processors which are still 20 or so years away. At any rate, for all intents and purposes the RNG on any computer is as random as you're going to get, and is still going to produce any number between 1 and 1000 any time you /random, there is no way to predict the next number, there is no way to even attempt to guess at it, and you can apply the law of probability as much as you want, but even if /random has given you 320 10 times in a row there is still 1:1000 chance it will come up as 320 next time you /random. This one guy was on CrimeTV after he cracked the RNG for Keno and used it to cheat. He was a software engineer for the casino companies and wrote software for the slot and video poker machines. I would have enough expertise in both math and computers to see what's really going on, but to me, looking at even encryption algorythms give me a headache. I know it can be done, but I highly doubt anyone here has the time, resources, or even the knowledge to pull off such a stunt. That and we'll need the source code for the RNG (As if that'll ever happen).
|
|