Random Number

Discussion in 'World Editor Help' started by Lyle., Apr 24, 2009.

  1. Lyle.

    Lyle. New Member

    Ratings:
    +32 / 0 / -0
    Is there anyway to generate a more random number than:
    Trigger:
    • Set RandomNumber = (Random integer number between 1 and 100)
     
  2. Azlier

    Azlier Old World Ghost

    Ratings:
    +461 / 0 / -0
    ...What? How do you get 'more random'?
     
  3. Komaqtion

    Komaqtion You can change this now in User CP.

    Ratings:
    +469 / 0 / -0
    You mean that 1 and 100 is not as accurate as you'd like, then just use 1 and 1000 ;)
     
  4. Lyle.

    Lyle. New Member

    Ratings:
    +32 / 0 / -0
    No No sorry I should be more clear,

    I have a skill that has a % chance on hit so I use a random number for the %. The problem is the Random number they have is not very good and my % chances come in bursts.

    I need a different algorithm this one won't work.
     
  5. Azlier

    Azlier Old World Ghost

    Ratings:
    +461 / 0 / -0
    Well you could, ya know, do it 1 - 10000. And divide the result by 100. Might not change anything, because I don't know anything about randomization in computers, but still...
     
  6. Lyle.

    Lyle. New Member

    Ratings:
    +32 / 0 / -0
    Thanks but your right that won't do anything :p
     
  7. Komaqtion

    Komaqtion You can change this now in User CP.

    Ratings:
    +469 / 0 / -0
    Why isn't it good ??? If it's because it uses the same value every time still, then go go to File -> Preferences -> Uncheck "Use Fixed Random Seed"
    And also, random might not always work if you use the button "Test Map", try to test in online ;)
     
  8. Lyle.

    Lyle. New Member

    Ratings:
    +32 / 0 / -0
    The skill works, the only problem is all my "Procs", if you will, are in bursts. I assume it's because their algorithm is based on something that doesn't vary enough quick enough.

    I assume the Fixed Random Speed is only for "Test Map" button. I get the same results in BNet play.
     
  9. Carl-Fredrik

    Carl-Fredrik New Member

    Ratings:
    +50 / 0 / -0
    Here comes the random question again...
    It is random. Couldn't be more random. That's what I've learned from this forum every time somebody picks this topic up again without searching first... If you searched "Random" you wouldn't have to pick the topic up again.

    I love that quote ^^
     
  10. Moon_Raven

    Moon_Raven New Member

    Ratings:
    +8 / 0 / -0
    Well it's not really just here, whatever I do on computer that is random seems to me like it is in bursts. But I don't know is it just an illusion or is it just a way a computer works...
     
  11. Danis[h]

    Danis[h] New Member

    Ratings:
    +19 / 0 / -0
    It's probably just how it feels when watching it. which to my opinion is rather mundane xD
     
  12. Lyle.

    Lyle. New Member

    Ratings:
    +32 / 0 / -0
    Randoms can be more random :p

    There are a billion and one ways to create "Random Numbers", a computer can't actually generate a true random number.

    What I need is a better way to generate a Random Number than what WC3 has. I don't see how it couldn't be possible.

    The algorithm behind there Random is obviously gives off bursts and it is producing adverse effects for me :(
     
  13. Danis[h]

    Danis[h] New Member

    Ratings:
    +19 / 0 / -0
    Use several randoms then? Like 5 that go from 1-20? Dont know if this will have any effect.
     
  14. simonake

    simonake New Member

    Ratings:
    +72 / 0 / -0
    Use reals?
     
  15. Komaqtion

    Komaqtion You can change this now in User CP.

    Ratings:
    +469 / 0 / -0
    I still can't seem to figure out what you want XD sorry :S
    But if you for example, don't want random to use the same number as the last time, just store it each time, and then check if Random Number Between 1 and 100 Not Equal To (Last_Random) For example ;)
     
  16. Naga'sShadow

    Naga'sShadow Ultra Cool Member

    Ratings:
    +49 / 0 / -0
    The game only has one random generator, I suppose you could program your own but you'd still be bound by whatever you use for your seed. The game probably uses something cyclical for a seed which would explain the dry spans in randomness before a burst of procs.
     
  17. Moon_Raven

    Moon_Raven New Member

    Ratings:
    +8 / 0 / -0
    Ok, so I think we have a problem here that cannot be solved, since a computer is a computer, it cannot generate a random number. I always wondered how do computer do that, but it is obvious that is is NOT random since computer gets strict instructions to do things. So no matter what algorithm you make, no matter what game or program we are talking about, you won't get random numbers. However, if you want MORE random numbers, I suggest tryng something like this:
    Code:
    A = Random(1,100)
    B = Random(1,100)
    C = Random(1,100)
    D = Random(1,100)
    E = Random(1,100)
    X = (a+b+c+d+e)/5
    
    that should help a bit maybe :)
     
  18. Zaraf

    Zaraf New Member

    Ratings:
    +21 / 0 / -0
    Yeah, like Raven said, just use random numbers to form some kind of a formula. The more times you have a random number within the formula independently determined, the more "random" your final value will become.
     
  19. Lyle.

    Lyle. New Member

    Ratings:
    +32 / 0 / -0
    Does that actually help? Can anyone explain this logically to me if it does in fact work o_O


    Otherwise I will try to make my own, I'm sure there is a usable algorithm out there some where :)
     
  20. Strilanc

    Strilanc Veteran Scripter

    Ratings:
    +42 / 0 / -0
    No, that's wrong. It will almost certainly make the outcome less random (formally: it will have less entropy).

    For example, the sum of two rolls of a dice is more likely to be 7 than 12. It is less random than a uniform random number from 2 to 12.

    If you want to *avoid* bursts of critical hits (or whatever), you need to make the probability of getting a critical hit lower if the last hit (or last couple hits) were criticals. In the extreme case you could give a critical hit exactly every 5 swings. A viable solution might that each swing deducts 1 from a count, when the count hits 0 you get a critical, and then the count resets to a random number from 2 to 10 (or whatever).
     

Share This Page