|
Bolty's Note: throughout 1997, multiple theories existed on how the game creates the dungeons and the items that are dropped by the monsters in them. As far as I know, this is the first post which proves the theory of clock-based seeding. Well, after a few hours of testing and some very simple programming, I have laid the seeding theory to rest. Here's the scoop. I wrote a program in Pascal that read like this: Program tkill; uses dos; begin while 1 = 1 settime (5, 5, 5, 0); End. I then ran five instances of this program under Win '95 and wrote another that reads like this: Program ttest; uses dos, crt; var hr, mn, sc, ms : word; tcount : array [0..60] of longint; count : integer; begin for count := 0 to 60 do tcount[count] := 0; while 1 = 1 do begin gettime (hr, mn, sc, ms); tcount[ms] := tcount[ms] + 1; gotoxy(1, 1); for count := 0 to 60 do write (ms:2, tcount[ms]:7, ' '); end; end. For those of you who don't know Pascal, the first program does nothing but reset the computer system clock to 5:05 5 sec 0 milsec over and over and the second keeps a count of what ms times are displayed by the system clock. After letting all six programs run for about 5 minutes, I found that it was 5:04 59sec 56ms am 98.2% of the time. I accepted this 1.8% margin of error and decided to run all tests at least 3 times under each set of circumstance. Circumstances were: All level 1 characters (including the "Rogue" this time, thanks Landru), each level 1 character was given names "Dimitri", "SeedTest" and "Dog", each level 1 character started a game "ladeda" password "i cant sing" and "seedtesting" password "i need a life", each level 1 character started with all their standard eq, and once again dropping all eq before starting game (including gold and potions), each level 1 character used computer name "ttest" and computer name "stillwater". As an added twist, Guido Lev 31 Warrior (Ac 250, Max Dex/Vit/Mag, blah, blah, blah) was also subjected to test with varying computer name and varying game name/password. Guess what happened. Bolty's Note: here we see Dimitri ruling out many of the other common seeding theories of the time: that the seed is based somehow on character class, character level, character name, game name, game password, current equipment, and computer name. A popular suggestion was that people with certain computer names were thus luckier than others, as it would create better seeds. All proven untrue. Same dungeon. Every time. Same stuff, same magic item, same creatures, same gold, and the gold fell from the chests in the same tile. Every time. Interestingly enough, however, Griz had different things, every time. I started the same character under all the same circumstances, could get the same dungeon, but still Griz had different things. I have a theory to this that I will go into testing as soon as possible. Bolty's Note: yes, town seeding works differently. Character level is one of the factors for shop item generation. But the point is: the *only* way to seed your dungeon is via system clock. Nothing else matters. Drops are all identical regaurdless of Computer name, charater eq, charater class, character level, stats, etc etc etc. If there are any variables I left out of this test, please let me know. Otherwise, if anyone wants the .EXE's to the above files to run the test yourself, (or just key it into Turbo Pas) also let me know. I will make them available to whomever wishes to try the test. (Incidentally, when you go down the first chest will have 13 gold that falls to the upper left corner and the only magic item in the first couple rooms is a sharp (+3 hit +26 dmg) staff of charged bolt.) Time to lay the seeds to rest. Unless you're willing to experiment with the time of day, (down to millisecond) you don't have a prayer. Dump the cursed items and go on. Dimitri |