Thursday, April 12, 2012

Odd experience

[:1]Yesterday I found an elite, eth armor and would try to ebug it. Unfortunately it came out with one socket, and I was about to go vendor it, when the game froze. It was ofc the all too familiar loss of connection during which the char is 'locked' for some minutes and will be rolled back to some earlier state. When I eventually was able to log in again, the armor had no sockets, so I tried cubing it again - and lo and behold: one socket again. I didn't think much of it at the time, but later I started vondering.

I know that item affixes are generated with the item, and thus id'ing an item will yield the same result regardless of who/when it's done, and a rollback will make no difference. If the same is the case with cube-socketing (which my little example could indicate is the case), that would mean, that the socalled random number of sockets generated isn't random at all, but rather depends on some fixed attribute of the item. And thus can be predicted by some hack or cheat, provided the formula is known.

Hopefully this is not the case, and my '1-socket' x 2 was just a 1/36 freak incident. It would be interesting to hear about other experiences, that either supports or debunks this.

Meanwhile I will trust the cube to generate random number of sockets

Regards Tom|||a few seasons ago when duping was rampant i knew a guy who duped several pairs of un-upped perfect ed% gores in an attempt to get a perfect pair. the idea was that he'd dupe enough and up them, then vendor the non perfect ones. what happened was that every pair wound up with the same exact defense after upping. he did it at least five or so times so it wasnt just a one time coincidence. sounds very similar to what happened to you.

i have no idea what mechanics are involved in these decisions, they're supposed to be random. i theorized that whatever algorithm makes the random decision was based on something static between the duped items like the serial number or some such. i'm no code diver so i have no real idea, just a theory.|||Thanks for your reply. Though it was exactly the one I dreaded to get. This means that supposedly random cubing-operations aren't random at all but rather determined by one of more keys of the elements involved in the process.

I so seriously hope that noone breaks down the process and writes some addon, that makes the cube completely predictable for cheaters. If upping, crafting etc. suddenly can be predicted, the impact on the economy would be severe, I think.|||This may be similar to "map seed" issues with single player. Hard-setting the map seed in SP can result in the same items dropping again, at least for the first few monsters, which is why playing after setting the map seed is forbidden in the SPF. It may be that if the very first steps are exactly the same- immediately cubing an item, for example, then the rollback that happens also ends up resetting the map seed, or something equivalent. So then the next time, if you also immediately cube, you get the same result if the random number seed for that instance of the game based upon the same map seed as the previous game.

This is of course all speculation!|||Most items other than gems/runes have fingerprints which you can view in the single player muling apps (which is how dupes are found/tracked). I cube-socketed the same eth shield a couple of times by re-rolling my save (in a safe testing environment of course ) and it didn't always get the same amount of sockets.|||This may be similar to "map seed" issues with single player. Hard-setting the map seed in SP can result in the same items dropping again, at least for the first few monsters, which is why playing after setting the map seed is forbidden in the SPF. It may be that if the very first steps are exactly the same- immediately cubing an item, for example, then the rollback that happens also ends up resetting the map seed, or something equivalent. So then the next time, if you also immediately cube, you get the same result if the random number seed for that instance of the game based upon the same map seed as the previous game.

This is of course all speculation!

@hubb: Thanks for the experiment, perhaps trying your experiment again with hard-setting the map seed may give some insight.|||Quote:








Most items other than gems/runes have fingerprints which you can view in the single player muling apps (which is how dupes are found/tracked). I cube-socketed the same eth shield a couple of times by re-rolling my save (in a safe testing environment of course ) and it didn't always get the same amount of sockets.




This is what I wanted to hear. So the similar results are likely tied to a map-seed or similar, which is great news IMO. Still - it seems odd to me, why the original programmers would'nt just use a pseudo-random number generated on the basis of some cycle timer. This was a pretty common practise back then to make pseudo-randomness more truly random. Why go through the trouble of using one or more fixed seeds?|||Just a hypothesis, as I'm no expert:

Perhaps the map seed is used just as a start, and then each later call to the random number generator for whatever purpose proceeds down a pseudorandom chain. The player's activities, if slightly different, will result in different number of calls to the RNG, resulting in different outcomes. I think the only times you see the exact same behavior are when starting with the same seed and having just a few activities- immediately cubing something, for example. This hypothesis comes from remembering some years ago in the SPF about getting identical Pindle drops after hard-setting the map seed. There, the player's activities were pretty short, as Pindle is so close, that there was a decent chance of getting the same drop. It didn't happen every time, but there were identical item drops some of the time, so that was one possible explanation.|||Quote:








Just a hypothesis, as I'm no expert:

Perhaps the map seed is used just as a start, and then each later call to the random number generator for whatever purpose proceeds down a pseudorandom chain. The player's activities, if slightly different, will result in different number of calls to the RNG, resulting in different outcomes. I think the only times you see the exact same behavior are when starting with the same seed and having just a few activities- immediately cubing something, for example. This hypothesis comes from remembering some years ago in the SPF about getting identical Pindle drops after hard-setting the map seed. There, the player's activities were pretty short, as Pindle is so close, that there was a decent chance of getting the same drop. It didn't happen every time, but there were identical item drops some of the time, so that was one possible explanation.




However it is implemented (your explanation sounds viable), I am content, as long as it isn't possible to determine the outcome of 'random' events such as cubing, drops, imbuing etc. The second some shop/bot owner finds out how to generate perfect imbues/upgrades etc., the game will die IMO. Hopefully they have/will implement a more true randomness in Diii.

Being a programmer myself, I can imagine why they would tie events and keys to random generation. At the time Dii was programmed, most pseudo-random numbers were generated by a fixed formula - this formula generated seemingly random numbers, but they would come in sequences. For Dii this could mean that certain affixes would have a tendency to spawn together for instance - a situation that wouldn't be feasible. They probably chose various seeds from the fixed set (map-seed, time-seed, player-seed etc.) in order to generate a more viable set of random numbers.|||My understanding is that in any case, the resulting items would have the same fingerprint, so it would be apparent that they were bogus. I think your fears have to do more with the ability to predict the stats or outcome of a reroll, but I don't think that could come from these methods. It's been a long time since I played on b.net, but my understanding is that you can't even see the fingerprints (or ilvls) of items on b.net, unlike in SP.

No comments:

Post a Comment