Gradual Reduction in MF Effectiveness
#41
I haven't tested for 1.10, but I had made a test in 1.09

I made a mf sorc, set up a closed server on my computer and done about 15000 pindle runs.

the good drops were almost evenly scattered through the runs.
Reply
#42
It has to do with the time between games in my opinion.


That is why I said the game does not get initialized properly.


In 1.09 you could test for this by looking if Akara sold minor healing potions instead of the super healing potions she is suppose to sell on a Hell game.


Regards, Hunky
I am famous for my Memory - I have no Memory
Reply
#43
JustAGuy,Feb 21 2004, 09:49 AM Wrote:Is it so unbelieveable that Blizzard would add one more thing to the already long list of changes to make the game that much harder?
What is somewhat hard to believe is that Blizzard would make such a change without bothering to announce it. The reason being that the announcement by itself would have an enormous impact on mf running even if it were not backed up by changes in the code. This would not be a long-term solution to the problem obviously, as I think botters would quickly penetrate the deception. However it does illustrate the counter-productivity of keeping such a change secret.
Reply
#44
bigeyedbug,Feb 21 2004, 02:37 PM Wrote:What is somewhat hard to believe is that Blizzard would make such a change without bothering to announce it.  The reason being that the announcement by itself would have an enormous impact on mf running even if it were not backed up by changes in the code.  This would not be a long-term solution to the problem obviously, as I think botters would quickly penetrate the deception.  However it does illustrate the counter-productivity of keeping such a change secret.
Indeed. The goal behind such a change would likely be one (or both) of two things:

1) reduction in repeated game creation that might be taxing on server resources.
2) a move towards making bots less desirable.

If you don't tell people about the change, then people are just going to keep using their bots and repeatedly making short-lived games for runs.

It reminds me of a line from one of my favorite movies:

The whole point of the doomsday machine is lost . . . if you keep it a secret! Why didn't you tell the world, ay?!

Perhaps they were keeping it a secret for Roper's birthday.... then he left.
Reply
#45
Quote:Well, the effect *could* be psychological. But if so, then we would have seen the same psychological effect prior to 1.10. In fact it would be more pronounced, because MF was apparently lower then. Yet this is not the case. I and many others have only noticed an effect in 1.10.

Actually I have been hearing this same poorly supported argument through more that just the current patch. So it is not some 'new' thing and you could see the pscyhological effect then the same as now with some of you in this thread. Also with the lower chances of getting something good in the earlier patch, long stretches of not too good drops was not considered as unusal since not that many players used real high amount of magic find to boost the rate up to the higher levels. From what I saw it was actually only a minority of those that did high magic find runs that were really surprised at getting bad runs. Those that were doing for profit (ebay sellers and those that tried to work the trade games alot) usually only grumbled that they had a bad day as they understood that was one of the possible types of outcomes.

Quote:If I show a string of improbably low drops, then you can simply say that it was just bad luck. It would be exceedingly arduous to manually gather enough data to avoid this rebuttal.

The thing is that with just showing a string of low drops is that all you have done is show a run of bad luck. If you have not documented a pattern that can be consistently repeated to occur, then you really have not made a case for your argument in the first place. With out that kind of starting point for your case, why should we compelled lend it any credence in the first place? Especially when it goes againts what is known about the way the game works from looking at the internal game engine. The burden of making this case in the first place is really upon those that trying to make this claim in the first place. Back it up with something solid for the argument, not some loosely voiced poorly documented cases of "bad drop runs".

The way to test for some of this would be to look for a mechanism that could be exploited to cause a very unusual occurance in what happens (or drops) in the game. If these repeated magic find runs are being peanalized by getting a negative amount of magic find applied to the character (or game itself) then that would have some testable consequences outside of a just general reduction in the quality of the drops. Part of the code does a division by the quanity (100+MF) and if the the MF=-100 then the game will crash the first time there is a check of any random drop of an item that could be unique. If the net MF is less than -100 then the consequences for what gets drop change to a whole new level of what you would end up seeing. And this latter case has never been reported by anybody doing even massive number of runs (and it the botters that would have definately noticed this effect within one night of letting their bots do runs).
Reply
#46
HunkyDory,Feb 21 2004, 10:29 PM Wrote:That is why I said the game does not get initialized properly.
/lurk:off

As many people have mentioned, there are likely quite a number of coincident things going on here. Some of them, in no particular order...

There is the psychological effect (humans generally make poor measuring devices).

There is the human ability to discern "patterns" where none exist

There is the self-selected report effect (humans report "patterns" but don't report all the data, so the apparent reported reality is skewed from the actual norm)

...

These could explain the phenomena reported. Certainly the reported from code-readers and armchair Occam's razor second-guessing of the implementors by other programmers seems to suggest it is unlikely that there is a new special code mechanism. OTOH I personally have put Easter Eggs into products and know other programmers that have, so sneakiness can not be ruled out.

I do not wish to go into each point in detail, but, for example, since a properly working system will indeed display streaks, if you merely do a bunch of MF runs until you hit a bad streak, and then quit, you could create a "certainty" that all MF runs eventually end in junk.

Clearly getting five people to do two different time-separated runs of 100 consecutive normal Baal's with a single -act5 char would provide a much better basis on which to guess whether the effect is real, whatever the cause.

That takes a great deal of effort however. It is easier to assume that the effect is at least partly "real" (aside from the "illusion" reasons given above) and then ask the armchair question: what could this be the natural consequence of?

The game probably does not get initialized "properly", afaik, in at least one respect: the prng seeding. If we use -seed to easily hold the seed to a single value across games we quickly discover that there is at least one other source of randomness (initialization/seed-line) because many things about the games will be different. I happen, for other reasons, to have done enough of this kind of testing to believe that the passage of time plays a role in this difference.

I also happen to be inclined to believe, from personal experience, that the streakiness of rune drops for Hellforge, as reported on AB, is likely a real effect, and not explained solely by the above mentioned "illusion" factors.

Given what Jarulf said about the seeding of areas I strongly believe that an audit trail of all the random number usage for a series of games would provide a quick confirmation or denial of this theory. It was quite easy to put such an audit into D1, btw, because their debugging of morph problems had already caused them to instrument the routine for their own audits. What you need to track is the source and transformation of the seeds into particular random numbers used for drops.

Hopefully it is generally clear, if only from -seed and the ancient bone-wall farming episode, that any degeneracy in the utilization of the prng (such as by poor seeding) has a major effect on drops when considered over the long haul.

While I understand the economics that typically dictate proprietary closed systems, I rather prefer open (as in open source and its philosophical brethren) systems, where broad peer review and corrections can readily occur.

But D2 is only a game. It is fun despite its many imperfections. It has been played and enjoyed for far longer than most "successful" computer games, but it is still destined for relative obscurity (e.g. like D1 and Warcraft 1 now).

If you are running into a frustrating effect, like apparent MF effectiveness reduction on a repeated run, then vary something in your procedure! It is probably totally overkill to make a new character. There are many many potential "control variables" to try, assuming the effect isn't illusory (in which case just about anything you try will eventually "work").

My two cents worth. YMMV.

/lurk:on
"He's got demons? Cool!" -- Gonzo, Muppet Treasure Island

"Proto-matter... an unstable substance which every ethical scientist in the galaxy has denounced as dangerously unpredictable." -- Saavik, Star Trek III

"Mom! Dad! It's evil! Don't touch it!" -- Kevin, Time Bandits
Reply
#47
Well, I don't think any of us are claiming this is a proven fact, it is merely being put forward as a hypothesis (which is where all scientific knowledge starts). The difficulty (for those of us not able to write the obvious programs) is to devise a suitable experiment that isn't excessively time-consuming.
Reply
#48
>Wow, somebody's gettin' all riled up. Ok, now some words regarding the "stupid" issue at hand.

I am not riled up nor did I imply that anyone is stupid and it might not be the best word (hence the "" use which was the best I could think up), but the idea that Blizzard make a game were drops are quite hard and rare (for good stuff) if you look at single player and even open multi player were many would probably play mostly with some friends. So rare that for practical purposes most playing it will never see most items and collecting most sets is a joke even thiniking on. And then have the same for realm were trading is easier and more common and hence rarity is needed to make a slight change so that it get a tiny bit harder to get some items if you play in a specific way (runs) which in itself is not that hard to check in a way that is not extremely easy to fool (kill 10 other monsters on the way, just an example) and have an end effect that over all is of no actual effect. Make it so small people hardly notice it and not making other general changes. That to me make absolutely no sense. As I said, it is actually not that easy to make some sort of run check. How would you implement it? I really can't think of anythin geasy that would not at the same time be even easier to trick. Alternatively make it so complex that it is again not worth it.

But hey, if people are happy thinking Blizzard has some small run checks and counters and only on realms and then switch it on and of and have hired a guy sitting tweaking drops all day on a more realm wide note but let him have vacation when the moon is full and it is an odd day, hey, be my guest. :)




>You know, the Blizzard developers are quite talented. Diablo II is a very complicated game. They could have come up with something
>very ingenious to achieve this "midly annoying" feature. It's not necessarily someplace you've looked before. After all, you haven't really
>taken a long hard look at the game code this time around, so it's quite possible you could have missed it.

It really isn't THAT complicated and the code is not THAT badly like spagetti. It is relatively easy to find something one look for and stuff aren't hiden away in hard to imagine places. If you want to have some special effect taking place when you create items and apply MF, there is really only one place to do it. One could affect MF directly of course in tons of places but it would be dead easy to see the MF value at that one spot it is applied at anyway and so on.
There are three types of people in the world. Those who can count and those who can't.
Reply
#49
I was taking part at a discussion over at diabloi.net in the single player forum regarding the -seed command. SO I checked up a bit on how the game initializes itself in that aspect. Basically, the game starts up and will normally, through two seperate calls right after each other initialize two different seeds (I can't tell if two such calls right after each other will always, never or sometimes generate different seeds, I can't recall if it was a tickcount based seed or a "performance" counter level (or whatever it is called). One would be in millisecond and the other in much more higher frequencey. Anyway, one is placed as the starting map seed, used to generate the map and the other would be the seed used by the game for most purpuses other than the map. When you use the -seed command, the specified seed is set to BOTH those two. The game will then when initializing itself, use the game seed to "roll" new seeds for various things and store away some of them as "initial" seeds for objects and a few other things. I never bothered to track if they were ever used however. When the game create "units" (which is anything in the game by the way), it will always take the current game seed and initialize the units seed with it (anything the unit then do uses that own seed of the unit). Thus casting a few spells will create a different current seed for the game and would affect an items to drop magical properties. The initial selection of base item and quality would on the other hand use the droping monsters current seed, so any differences in its random behaviour (like the player moving differently) would affect that. That is why things differ in games, even if you use the same starting seed through the -seed command.

Just a small off topic talk :)
There are three types of people in the world. Those who can count and those who can't.
Reply
#50
eheh... people have always had huge problems understanding probability theory. Top-level scientists say it is the most difficult branch of mathematics and they're bloody right. I think the only sensible thing one can say about the "reducing mf" stuff is

IT'S ALL LUCK!!
Reply
#51
So, the seeding at the start of the game affects the entire game, including potential drops and monster generation...

So, as you have championed in this thread, there is no gradual reduction in MF effectiveness. The actual Magic Find property never changes, but rather, what it's being applied against does. This is normal program operation.

All of the conjecture in this thread has me convinced that there is no extra mechanism that challenges your MF. Notice that everything in this thread is conjecture (save for a few things) leaning toward one side or the other, but I'm safely to the point where I don't have any reasonable doubt about whether there's a mechanism or not. There appears to be none and I will leave it at that.

The seeding is where the problem lies. In my experience, some games drop better than others on the whole, and this is most likely due to a "better" seed. But, it's all random, so getting that "good" seed is the lucky part. I have no idea how these seeds get generated, nor if there may be some "problem" with it; a problem for us runners, but not noticeable to others.

As mentioned in this thread, Hunky had a suggestion about waiting a little longer before creating a game. This would directly affect the seed(s). This seems to be a way to influence the drops, even if it is indirectly. The problem is, we don't know how it actually affects drops. How are we supposed to know how long to wait and what kind of seed the extra time will give us? For example, if I was to wait 10 seconds from the last game that I exited, what would be the difference if I were to wait 30 seconds? I bet the net result of waiting acts like a random number generator, some being better than the previous seed, some being worse. On top of that, when you kill a monster your MF is applied and you have a range of things that can drop. Here's where the probability stuff starts to stack up; you just simply have to be lucky, assuming things are working properly.

If someone figures out how to get the "best" possible seed all the time, then the "best" items would drop all the time. I highly doubt that this is possible, and that appears to be the goal in this thread. Not to prove or disprove a conspiracy, but rather to find a way to explain the bad drops, finding a solution and thereby increasing magic finders' effectiveness.

I suspect that the realm and single player Diablo II's both use the same internal seeding mechanisms, but they are just supplied to the game differently. Unfortunately, this is one of those things where we might never know how the seed(s) is pased to the realm game.
"Yay! We did it!"
"Who are you?"
"Um, uh... just ... a guy." *flee*
Reply
#52
JustAGuy, the people that have said that you THINK there is a reduction in mf, but there really isn't have a point. It is amazingly easy to fool yourself. You should not have been so quick to dismiss their claims, though they should not have dismissed yours either. There is no proof either way.

If you want to get people's attention, do a quick test. Try something like doing 30 Andarial runs with a set amount of mf. Record the number of rares, sets, and uniques that drop for each. If there is a reduction, it will not PROVE anything, but it will at least get people attention and eliminate any claim that the reduction is just percieved.

When I get my elemental druid up to hell, I'll do a quick test if one hasn't been done by then.
Reply
#53
Just two short stories about how one can have problems with what one experience. back in D1, people was debating how good effect (if any) the affixes that reduced hit recover time had. Some claimed they really saw no difference, some swore and argued and told of play experiuence how much better and easier it was with fastest hit recovery, especially (for example), when a bunch of skeleton archers fired at you and so on. Turned out there was NO effect in the game of having faster hit recovery items. It was not even implemented so not even a bug. This was not "known" until the hellfire programmers told so. Later when people started to look at the game code, it was easy to verify as well of course. It was fixed in a later patch by the way.

Another story was the enchanted shrine (I think) that people said tended to lower Chain Lighting much mroe often than other spells. Blizzard said there wasn't any bug with it and it worked OK. People looked at the code to see if it had some bugs, quirks or other problems, nothingm, worked "perfectly" with all spells at same probability. Same situation existed with the hidden shrine and durability. Turned out (many years later) that it was a non initialized seed problem with shrines that was at fault. No one had been looking at it in that palce until I did one day and found the bug (which still exists as far as I know despite Blizzard claiming to have fixed all bugs that are possible to fix).

So yes, people can experience things that doesn't exist and people can not find the problem by looking at the wrong place. So now we can start discussing it again :)

And no, there is no problem with initialization in D2, that has been looked at by many ;)
There are three types of people in the world. Those who can count and those who can't.
Reply
#54
Then why does Akara sell those minor healing potions on Hell?


Regards, Hunky
I am famous for my Memory - I have no Memory
Reply
#55
HunkyDory,Feb 23 2004, 04:42 AM Wrote:Then why does Akara sell those minor healing potions on Hell?


Regards, Hunky
Certainly not becuase the game doesn't initializes the seeds unproperly. In any case, I have not heared about that problem though.
There are three types of people in the world. Those who can count and those who can't.
Reply
#56
I've given more thought to what Jarulf and others have stated and I do believe there is no MF Reduction when hitting the same (already killed) boss over and over and I'll happily attest to that. My findings from my perception, and those whom I know that have used bots, lead me to believe that the drops average out accordingly to your MF (to what they should be relative to how much MF you have and how many people in the game).

However, when I made my two posts in this thread, I was reffering to my experiences using that "trick" in which I do notice a difference. As a matter of fact, I 'tested' it again tonight and challenge anyone else too also. I did it in under 1 hour and you can too:

~~WARNING~~ULTIMATE CHEESE~~WARNING~~

1.) Have a friend with a high level Enchantress enchant your soon to be MF'er and quickly tear through act 1 in 15 minutes and gain 15 levels in the proccess (time may vary according to players in the game, # of monsters, type of monster, etc.). Kill everything that moves; if you doubt your ability to kill it, kill it anyways. Your "uber" cheese enchant will be a lite unto your feet.

2.) Once you hit level 20 (hopefully in 20 minutes), have same friend make a public COW GAME, and watch it fill up the SECOND he makes the game. He must have the ability to make the "secret" cow portal. Once you have reached level 24 (in about 2.5 cow runs my average), its time for the next step.

3.) Time for Ancients. Said friend will tear them apart for you, then procede to give you the world portal for World Stone.

4.) Time to level up in Baal Run games until around level 40. With all those friendly public games where people "magically" find the Throne room in under 20 seconds, you'll be level 40 in about 15-20 minutes.

5.) Now your ready to MF and not a second too soon (our hour is almost up). With ZERO MAGIC FIND, have said friend make a Normal game (he must of already killed Baal) and kill all the minons to save you some time. Now you jump in to kill Baal and reap the rewards of uniques and sets with your ZERO MAGIC FIND.

6.) Repeat the proccess over and over. Watch as your drops start slowly getting worse and worse.

7.) Go ahead and make a new character and repeat the proccess to prove it's not an anomoly. I'll be waiting for you.
"The true value of a human being is determined primarily by the measure and the sense in which he has attained liberation from the self." -Albert Einsetin
Reply
#57
HunkyDory,Feb 20 2004, 06:57 AM Wrote:The code to do this would be too cumbersome and more important would require loads of memory and hard drive storage.
Not really. Maybe a single byte counter for each boss on each difficulty. Thats 15 bytes per char.

It is *possible*, but whether it is *likely* is another matter.

Since it is *possible*, I am open to the *possibility*, but will not give the speculation any weight until I see some hard figures :) (Not that it matters to me since I don't have time to MF anymore ;) )
Reply
#58
Sorry for being inactive in this thread...I haven't had the time to extensively test out our theories. I've made 23 hell Meph runs so far with my FO Sorc. She has about 450-500 MF. So far, a pattern has not emerged.

One note of interest: For three runs in a row I did not find any uniques. On the fourth run, I ran into some trouble finding the stairs down to level three (took me a few minutes instead of the regular 30 or so seconds). I found two uniques that run. I ran into some trouble the next run too and I found two uniques there.

Are all seeds and all initialization stuff set when a game is created? Are there things that are initialized when a monster is actually spawned? Is it possible that delays between the actual spawning of Meph contributes to the fabled MF reduction?

Of course, that was only 2 runs. It was quite possibly just a coincidence...but something worth looking into I guess.
Lahve and peace!
Lahve and peace!
Lahve and peace!
Reply
#59
HunkyDory,Feb 23 2004, 04:42 AM Wrote:Then why does Akara sell those minor healing potions on Hell?


Regards, Hunky


Probably because a low level character checked, and therefore spawned, her inventory, before you did. Shopkeeper ilvl is equal to the clvl of the checking character + 5. The inventory then doesnt change until some period of time goes by without checking it, or all players that are in that act go out into hostile areas.

So, some guy had a mule or a character they were trying to rush in your game, and talked to the vendor before you did.
Reply
#60
Jarulf,Feb 22 2004, 08:39 AM Wrote:That is why things differ in games, even if you use the same starting seed through the -seed command.
(omitted the interesting info--thanks--for clarity of response...)

I wrote a thinking-out-loud reply, which I still include below, after the ellipsis, if you want to waste time following them. For brievity though, here are the questions I have, if it happens to be convenient for you to answer:

1. in a SP game the map seed is carried forward from game to game, but what about the "other" seed?

2. for a bnet game I'd expect the "map" seed to always vary, but the "other" or some seed line to derive from the creating character?

3. 'tickcount based seed or a "performance" counter'... could you specify the OS call name at least? (I know them)

(meandering thoughts follow and they evolve, so caveat emptor!)...

My experience, when using -seed SP, is that even if you do *nothing* except travel out of the act you're initially placed into, you will see "shrines" at the same location (as the prior -seed game) being a different shrine.

If the master seeds are indeed all set from -seed (and the special code that was added to hork the game when you use -seed is not relevant--which is too technical a subject to go into here, being off-topic a bit already, but I now realize this offers an important clue via a variance in my "testing procecure"... remember I'm actually *not* testing for this stuff, but merely seeing the effects on the side of other things I do fairly commonly) then I find your explanation both illuminating and perplexing, given the fact I just cited.

Essentially you're implying the likelihood, for my case here, that the terrain selection of putting down a shrine on the map is separate in seed-random-pull line/sequence/tilt ("tilt" being used in the sense of bias, ala pinball) from the random selection of the type of shrine... aka they're either done at different times or from a different seed line ("line" in the sense of lineage).

The other concrete oddity you can reproduce while holding -seed constant, for example, is related to which Tomb is the true tomb of Tal Rasha. Apparently the passage of time or some other factor can skew it. I've believed it to be time, based on some evidence of continuity post-change, iirc, but would consider greater testing or investigation to be necessary for that to be more than a guess.

And, of course, there is the whole issue of induced HF rune drop streakiness that is unresolved.

So, given what you've said, there are more jilts/tilts to the random lines than I thought likely, which would potentially disguise weaknesses in the use of the prng.

I'm not surprised you confirm there is a "map" seed and an "other" seed. I strongly suspect that in a SP game the map seed is carried forward from game to game, but not the "other" seed... did you happen to see any evidence of that? OTOH for a bnet game I'd expect the "map" seed to always vary, but the "other" or some seed line to derive from the creating character. Even high level issues like this are in doubt, which is why I suggested audits tracing the lineage back of any random number used would be enlightening.

I think I see from your description and Occam's Razor what is probably happening to explain my occasional -seed non-replications...
Quote:(I can't tell if two such calls right after each other will always, never or sometimes generate different seeds, I can't recall if it was a tickcount based seed or a "performance" counter level (or whatever it is called).
Could you check please? I'm familiar with the routine names for timer functions in the OS so you don't actually need to look up the distinction, just mention which is called. If the code is given continuous processing between the calls and the interval the calls measure is sufficiently large relative to the span of execution, then the values received will be identical or very similar in bit pattern.

Many of my -seed "tests" are tainted because of the easy workaround, in SP, for the -seed hork, being to use -seed to start a game to replicate terrain, then exit and start a game without -seed (i.e. -seed has a residue to the character in SP setting the future map seed with the -seed value without the -seed hork of having tons of monsters in some areas).

Contrary to what it probably seems like to most of the readers whose eyes are glazing over at this post, I'm actually omitting vast amounts of detail (as it is just a game, and not important to feret out mechanics and errors in this area, ultimately). Indeed I'm about to go back up and just ask for three clarifying bits of information, so I can then be tempted to probe my new theories (as to consequent streakiness).

edit: fixed three of the obvious typos
"He's got demons? Cool!" -- Gonzo, Muppet Treasure Island

"Proto-matter... an unstable substance which every ethical scientist in the galaxy has denounced as dangerously unpredictable." -- Saavik, Star Trek III

"Mom! Dad! It's evil! Don't touch it!" -- Kevin, Time Bandits
Reply


Forum Jump:


Users browsing this thread: 17 Guest(s)