tag:blogger.com,1999:blog-2067582268125708908.post4453532986616597501..comments2023-05-20T09:17:37.065-04:00Comments on The Tactical Amulet Extraction Bot: Predicting and controlling NetHack's randomnessShawn M Moorehttp://www.blogger.com/profile/01037423036129960255noreply@blogger.comBlogger12125tag:blogger.com,1999:blog-2067582268125708908.post-51627917121851258092010-06-17T11:09:58.445-04:002010-06-17T11:09:58.445-04:00Maybe that's why it is called nethack...Maybe that's why it is called nethack...Jeffhttps://www.blogger.com/profile/01537837005465043442noreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-59375274874349916902009-08-16T20:01:19.453-04:002009-08-16T20:01:19.453-04:00Some crypto key generating programs require you to...Some crypto key generating programs require you to type a number of keystrokes to produce a random number. Nethack being played by fifty people on a public server ought to be able to provide a vast number of random numbers by reseeding using the varying times between keystrokes for the players. You'd have to take a few precautions to prevent exploits, like someone sending carefully spaced keystrokes to set up a desired seed, but network lag would make that difficult. You would also not want to use multiple keystrokes from the same player (or players at the same IP address).Keith Hearnhttps://www.blogger.com/profile/11982008199965358761noreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-74683105618329593852009-05-12T16:37:00.000-04:002009-05-12T16:37:00.000-04:00Stevko, crypto RNGs are uniform, whether they are ...Stevko, crypto RNGs are uniform, whether they are PRNG or otherwise.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-55481537020823492492009-03-17T13:48:00.000-04:002009-03-17T13:48:00.000-04:00Good writeup, thanks.Good writeup, thanks.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-67805505051300529762009-03-17T06:02:00.000-04:002009-03-17T06:02:00.000-04:00If you use cryptographically strong PRNG, how woul...If you use cryptographically strong PRNG, how would you ensure equal probability for outcomes? For example if something "is 1d6", then all six possible numbers on dice should have same probability. And can you somehow get it with CS PRNG?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-6798170440869241292009-03-10T15:13:00.000-04:002009-03-10T15:13:00.000-04:00There are online services that provide large amoun...There are online services that provide large amounts of data that is about as random as modern science can achieve -- google "hotbits" for a server that provides the public with a reasonable amount of random data determined by "timing successive pairs of radioactive decays detected by a Geiger-Müller tube." I'm not a physicist so I can't tell you why that physical phenomenon is particularly unpredictable, but it's sufficient to prevent Nethack players from exploiting Nethack's randomness mechanics :)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-46390383486503626722009-03-03T10:06:00.000-05:002009-03-03T10:06:00.000-05:00I had heard you did this, but it's nice to read a ...I had heard you did this, but it's nice to read a full writeup of it :)Unknownhttps://www.blogger.com/profile/00429003796374701639noreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-31236258948941894132009-03-03T08:42:00.000-05:002009-03-03T08:42:00.000-05:00@praptak: combine that with an good source of rand...@praptak: combine that with an good source of random bits for the seeds of the cryptographically strong prng and this 'exploit' goes the way of the doodoo.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-68701130907748045142009-03-03T07:42:00.000-05:002009-03-03T07:42:00.000-05:00Cryptographically strong PRNGs make it unfeasible ...Cryptographically strong PRNGs make it unfeasible to deduct their seed from observing produced values. Use that, combined with a secret seed and the exploits are fixed without a huge number of truly random numbers.dowgirdhttps://www.blogger.com/profile/12666623805000945486noreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-33350358622485800262009-03-03T05:06:00.000-05:002009-03-03T05:06:00.000-05:00Nethack servers ought to share random state betwee...Nethack servers ought to share random state between concurrent games. And never reseed.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-29322711936775661572009-03-03T01:48:00.000-05:002009-03-03T01:48:00.000-05:00NetHack just uses whatever your platform gives it....NetHack just uses whatever your platform gives it. I hadn't seen ISAAC before, it looks like that would be a good fix as well.Shawn M Moorehttps://www.blogger.com/profile/01037423036129960255noreply@blogger.comtag:blogger.com,1999:blog-2067582268125708908.post-54234492773100837842009-03-03T01:16:00.000-05:002009-03-03T01:16:00.000-05:00Truly random seeds and a decent prng - ISAAC would...Truly random seeds and a decent prng - ISAAC would work and would most likely be faster than whatever lcprng nethack uses now.Anonymousnoreply@blogger.com