Accuracy


Acetylene_Torch

 

Posted

In another redname post several months back, it was clearly explained that aim+buildup does NOT stack. IE. if aim gives 100% to accuracy and 25% to damage, and buildup gives 100% to damage and 25% to accuracy, the total would be the combined best of both abilities, IE. 100% accuracy and damage.

I am not sure if this has changed, but I would bet it hasn't... so when calculating accuracy you should seriously consider ONLY using aim OR buildup, not both. if you try to use both you will arrive at incorrect to-hit percentages.

as to the actual numbers, I could be wrong about those, it might be 100% and 33%, not sure.


 

Posted

[ QUOTE ]
I must report that in the past my energy defender would fire off an Aim or BU and then fire off a snipe --- and miss. Enough for it to be noticeable. He should've missed once in 20 against most things he was fighting. It certainly did not feel like that.

[/ QUOTE ]

I notice this most with my claw stalker.

Slash's Description: You perform a Slash with your claws, dealing a high amount of damage, but with a long recharge rate. This attack can reduce a target's defense, making him easier to hit.

From experience, I never ever lead with this attack anymore. The follow up will miss 3 out of 4.


 

Posted

[ QUOTE ]
WOW!!!!eleven!

I had no idea my brawl attack was LOWERING my effective hit rate [thus DPS], due to slotting & accuracy differences o_0

Brawl aside, this definetly explains how I can miss an entire buildup attack chain against blue minions (I think). I guess I need to be a bit more careful on my slotting & attack chain used.

[/ QUOTE ]

That does seem to be effectively what is happening. O.o

So you don't ever want to use a low accuracy attack at all, if you can help it. Which is probably why the developers have always stated that you should slot accuracy first as the most important slotting.


Still here, even after all this time!


 

Posted

From three separate posts:

_Castle_ said:
[ QUOTE ]
Streak Breaker (I just talked to Poz about it
If you miss three times in a row, then your next attack will always hit.

[/ QUOTE ]

To which da5id replied:
[ QUOTE ]
Calm down guys. Castle has it wrong.
Here is what I got from Pohsyb a few weeks ago:
[ QUOTE ]

The streakbreaker will force a hit if there has been a long series of misses (only for heroes)

ACC / Length of miss streak before we force a hit
>90 / 1
80-90 / 2
60-80 / 3
30-50 / 4
20-30 / 6
10-20 / 8
1-10 / 100

The random number is calculated simply by the C stdlib rand().

[/ QUOTE ]

Now there are a few things that are unclear, such as is streakbreaker stored for each attack, when is a streak considered broken (any attacks hits, or just when that attack hits etc.)

[/ QUOTE ]

All of which was preceded by Bland saying:
[ QUOTE ]
How about we assume _CASTLE_ knows his job, please?

[/ QUOTE ]

And followed by _Castle_ replying:
[ QUOTE ]
I stand corrected.

[/ QUOTE ]

First, thanks _Castle_ for talking to us.

Second, thanks for stepping up when you make a boo-boo.

Third, this is why people question Devs in the forums and don't take every red name post as the word of God. It isn't that they don't know their jobs, it's that they make mistakes, too.

No sense in coming here to slam people who think they have a problem.


 

Posted

[ QUOTE ]
How can I make a NEW character, run up to PRISONERS in breakout and miss 10 times in a row?

Explain that one please. If you need a fraps recording I will be HAPPY to provide this proof.

[/ QUOTE ]

If this actually gets a substantive response and resolution here in the the forums from a redname, I will:

1) Eat my own booger on video and post it.

or

2) Wear a Batman costume for an entire day to include a shopping trip to the mall and dinner with my wife. Heck, if you send me a CoH bumber sticker I'll tape it to my [censored].

Dev's choice...


 

Posted

[ QUOTE ]
Also, I'd like to inform you that your streakbreaker code is broken. I had at least a 5-or-6-miss string today against an orange Wyvern lieutenant. I went in order down my tray, Mental Blast, Levitate, Mind Probe, TK Thrust, Dominate, Mesmerize. Miss, miss, miss, miss, miss. Nothing would hit him; I think I got up to Mesmerize before anything landed. I am quite certain my accuracy against +1 lieutenants, even with mere training enhancements, is not 30-40%.

[/ QUOTE ]

It is possible that the streakbreaker could be wonky, but its also possible that the Lt. was using some sort of power (toggle or inherent) to give him greater defense against psionics or just ranged attacks in general.


 

Posted

[ QUOTE ]
Streak Breaker (I just talked to Poz about it
If you miss three times in a row, then your next attack will always hit.

[/ QUOTE ]

I hope you mean if they have no def powers on cause that isnt really fair to someone using PFF or Elude or really any Def based powers. Im not even sure if this is in place for pvp but if it is I dont like it as someone that loves def based builds, ie sr, ice tank, ff =)


|� |�| |�| |� |�| |�����| |����| |� |�| |��� /���
~SNES, NES, GCN, N64, GB, Wii, GBC, GBA, SP, DS~|
|_| \_| |_| |_| \_| .. |__| .. |____| |_| \_| |___/ \___/

 

Posted

OK heroes, a lot of people have many misconcenptions about random number generation systems. Lets clear some of that up...

1. rand() or any sufficiently random number genator works fine when it's results are spread out across multiple observers. The rand() as a whole may eventually be predictive(not by a human) but when 1000's of people are picking results out of rand() at random times, the result is that each individual observer will NEVER be able to predict with any accuracy bc each individual user has NO IDEA where in the sequence rand() is and NO IDEA how many other users are picking results out of rand(). rand() on a mod of 5 is easy to predict. rand() on a mod of 100 is not quite so easy. rand() when you aren't the only one getting a sequence is impossible to predict. So drop it on rand(). rand() is fine. PM is you want a more detailed proof that rand() is fine on MMORPs.

2. random generators work against the whole system not an individual. Seeing people with experience with long streaks indicates that the system is working fine because you couldn't predict that you'd have such "bad luck". In fact, you can't predict when your bad streak will end because you can't know all the variables behind the scenes. If you can't predict what will happen then the random generation system is fine.

3. Streak breakers are there to shield against perceived bad luck and actually reduce the randomness of the generator. When missing 99 times in a row has a 7.88e-131 chance of happening with 95% accuracy, it's still possible AND given that there are billions of sequences being burned through, it becomes probable. The streak breaker removes that possibility and therefore reduces the randomness of the system. Streak breakers remove huge chunks of possibilities out of the universe of what the random generator could churn out.

Conclusion:Having a bad day? You just proved that the system works.

For the curious, study the definition between possible and probable. Think also about the scale you are talking about with a MMORP.


 

Posted

[ QUOTE ]
[ QUOTE ]
[ QUOTE ]
This was PM'd to me by a user who got the info from Pohsyb.
.
The streakbreaker will force a hit if there has been a long series of misses (only for heroes)
.
ACC / Length of miss streak before we force a hit
>90 / 1
80-90 / 2
60-80 / 3
30-50 / 4
20-30 / 6
10-20 / 8
1-10 / 100
.
The random number is calculated simply by the C stdlib rand().

[/ QUOTE ]
Of course if you examine that chart closely then what you said originally would be accurate for even cons with no special defense.

If the allowable number of misses for a 60-80% accuracy is 3 then that certainly fits the original comment, since the chance to hit an even-con is a base 75% for players. I assume the chart was purposely made simplistic for convenience. Obviously it can't be referring technically to the player's "accuracy" in a vacuum, but to the players final chance "to hit" after all of the variables are accounted for such as force fields, bonus defense, buffs, level differences, and so on.

So, if you for example were fighting a +3 Rikti Drone or Death Mage (both of which have notoriously high defense), then it is quite probable that you would have to miss more than the 1-3 times it would be if it was purely based on your power's beginning accuracy before the streak breaker forced a hit. Apparently he said "accuracy" meaning "final chance to hit".

That makes perfect sense, is a reasonable way to do it, and seems to line-up with my own arguably subjective experience.

[/ QUOTE ]

That chart isn't quite correct either (missed the 50-60 range). It's actually:

Final to-hit : misses allowed
>.9 : 1
.8-.9 : 2
.6-.8 : 3
.4-.6 : 4
.3-.4 : 6
.2-.3 : 8
0 -.2 : 100

You're correct, it's the final to-hit chance (in the range [0.05 .. 0.95]) of an actual executed attack against a specific target.

Auto-hit powers are not included in the system.

Critters get the benefits of the system as well.

The system does not track each power individually; instead it tracks every miss you make in a row, regardless of power (or target). Otherwise you could have nine different powers, each with a 0.95 to-hit, and if you executed them all in a row you could miss each attack (note a caveat at the bottom of the post regarding this).

AE attacks are considered distinct sequential attacks on indivudual targets for the purpose of the system (so if you AEd two targets and had 0.95 to-hit for both, you be guaranteed to hit one of them).



To determine the to-hit used in the table above, you take either the current to-hit, or the worst to-hit in your current miss series, whichever is lower.

As an example, imagine that your first attack of the day had a final to-hit chance of 0.91, but missed. Therefore you are currently in a miss series of length 1, with a minimum to-hit of 0.91.

For your next attack you choose to use an auto-hit power. It is ignored for the purposes of the system, so you are still considered in a miss series of length 1 with min to-hit of 0.91.

For your next attack, you use a normal attack with a final to-hit chance of 0.95. Since the worst to-hit of the entire series is 0.91, and 0.91 (miss series) < 0.95 (current attack), you find 0.91 in the table. The table states you are only allowed one miss, and so this attack is forced to be successful. The attack lands, and your miss series tracking is reset.

However, imagine that instead your last attack was less accurate, or you attack a different target which has more defense; lets say the final to-hit is 0.89 instead of 0.95. In this case, 0.89 (current attack) < 0.91 (miss series), so you have to use 0.89 when you look at the table. In this case, you are allowed two misses in a row, and therefore the attack is NOT forced to hit.

If you hit anyway, your miss tracking is reset.

If you do in fact miss (unlucky you), you are now in a miss series of length 2, with a min to-hit of 0.89. If your next attack has a final to-hit of 0.80 or higher, it will be forced to hit (because you're only allowed two misses). If the next attack has a to-hit less than 0.80, then it hits or misses like normal, and so on and so forth.



Something to note, for those inclined to note such things. Because we do the lookup based on your worst to-hit in the series, the streak breaker is a bit less aggressive about breaking streaks than it might initially appear from the table. If you miss an ill-advised attack with a final to-hit of 0.15, you would in fact be allowed to continue the miss series for another 99 attacks, even if all the followup attacks are of capped to-hit, should you be unlucky enough.

[/ QUOTE ]

Then there's definately an issue somewhere. With a +3 SO in each attack power, I've had miss streaks as high as 6 against blues. Also, I've had BU/Aim/Nova (with a +3 SO) miss 6 of 6 even con minions.


 

Posted

[ QUOTE ]
Something to note, for those inclined to note such things. Because we do the lookup based on your worst to-hit in the series, the streak breaker is a bit less aggressive about breaking streaks than it might initially appear from the table. If you miss an ill-advised attack with a final to-hit of 0.15, you would in fact be allowed to continue the miss series for another 99 attacks, even if all the followup attacks are of capped to-hit, should you be unlucky enough.

[/ QUOTE ]
Just wanted to quote this for emphasis. Remember that if you open with a low accuracy attack (brawl for example) you potentially open yourself up for the possibility of a long streak.


 

Posted

Edit - nevermind...


 

Posted

Accuracy only multiplies the (Tohit-Def) value, it does not add to it. I think Arcana has a nice guide that explains it.


 

Posted

Thanks WeirdBeard, for a fascinating glimpse into the underpinnings of the game. I'm terrible with numbers, but I do like to understand how things work, so this is like candy to me, and I will be mulling it over and discussing it with my friends for a while.

I am still trying to figure out what the ramifications this information casts on the use and timing of temporary accuracy improvement. I suspect I have been doing something right for a long time, because I seem to have fewer accuracy complaints than many I play with; or maybe it's just me being a 'glass is half-full' kinda thinker.

Also wondering what happens when a character is running a well-slotted FA, then exemplars and loses the power?


TigerBaby: 50 MA/regen Scrapper, Pinnacle
Proud member of Twilight, Inc.
1500+ hours and still going!
^___^_______
(>� �&lt /<| ->
> X </ |>|__/<|
(TT)(TT) ^_V_/
PUT A TIGERBABY
~IN YOUR TANK!~

 

Posted

[ QUOTE ]
Critters get the benefits of the system as well.

[/ QUOTE ]

Assuming "critters" means enemies (as opposed to pets), I have to say that I think this is a bad idea. Actually, I think the streak-breaker in general might be a bad idea. I realize long miss streaks are bad, but I'd be willing to live with them as long as the average accuracy was correct. However, I can live with the streak-breaker for players, but I think it's a bad idea for enemies (at least as implemented).

The reason it seems like a bad idea to me is it appears biased against defensive sets. First of all, my SR Scrapper and Ninjitsu Stalker have spent many powers and slots to greatly minimize their chances of being hit. The fact that minions will always get to hit them after enough misses, just seems wrong to me. Being that it's not easy to push minion to-hit below 20% anymore, it doesn't take long before that auto-hit happens.

Second, there's a more significant implication here that may not have been considered. To illustrate, here's a phenomenon that I've experienced many times with my scrapper and stalker (especially in the low to mid levels): I spot a mob of say 10 white or yellow minions with maybe a LT or two. I jump in the middle and take few or no hits for 20 seconds or more, then all of a sudden - WAM - I suffer several hits all at the same time. This concern has been voiced by myself and others in the past, but it has generally been shrugged off as random bad luck, or biased observation. However, it now appears that what's happening is that during those first 20 seconds or so the misses are all legitimate, then suddenly the streak-breaker kicks in for all of them at the same time! This concentrates the damage into a very short window and makes it very difficult to deal with. I think this is completely unfair to defensive sets. I would think this problem would be even more apparent with Ice Tankers, who are supposed to have many minions attacking them at the same time.

Since regeneration and resistance sets have lower defense, they will naturally get hit more often, but because of that the streak-breaker will rarely come into play and the hits they experience will be more evenly distributed (something that regeneration sets, in particular, excel at dealing with). So the bias is that defensive sets will tend to have their damage clustered, which is always bad. So, I guess this is just another reason why regen and resistance are superior to defense.

Just off the top of my head, a better system might be to reverse the way the streak-breaker works for enemies, i.e. tie the streak to the defender, not the attacker. So, if my SR scrapper gets missed X times in a row, then the next attack by a single attacker will get an auto-hit and then the streak resets. This would help spread the auto-hits out over time, instead of concentrating them. There might be an issue with the lowest accuracy thing, as it might then be beneficial to keep minions around while fighting a boss, but something can probably be tweaked there. I'm not sure if this is a better solution or not, just a thought.

Has anyone looked into how the streak-breaker should affect overall accuracy? Many people have done accuracy tests without factoring this system into the equation, but the streak-breaker should inflate accuracy to some degree. I'm not sure how to calculate what the actual hit-ratio should be, but it should be higher than the accuracy. It would be interesting to know what the effect would be.


 

Posted

[ QUOTE ]
[ QUOTE ]
Critters get the benefits of the system as well.

[/ QUOTE ]

[/ QUOTE ]

Pretty sure that he is talking pets here, actually. But you do bring up a good point.

[ QUOTE ]
Assuming "critters" means enemies (as opposed to pets), I have to say that I think this is a bad idea. Actually, I think the streak-breaker in general might be a bad idea. I realize long miss streaks are bad, but I'd be willing to live with them as long as the average accuracy was correct. However, I can live with the streak-breaker for players, but I think it's a bad idea for enemies (at least as implemented).

The reason it seems like a bad idea to me is it appears biased against defensive sets. First of all, my SR Scrapper and Ninjitsu Stalker have spent many powers and slots to greatly minimize their chances of being hit. The fact that minions will always get to hit them after enough misses, just seems wrong to me. Being that it's not easy to push minion to-hit below 20% anymore, it doesn't take long before that auto-hit happens.

Second, there's a more significant implication here that may not have been considered. To illustrate, here's a phenomenon that I've experienced many times with my scrapper and stalker (especially in the low to mid levels): I spot a mob of say 10 white or yellow minions with maybe a LT or two. I jump in the middle and do not take one single hit for 20 seconds or more, then all of a sudden - WAM - I suffer several hits all at the same time. This concern has been voiced by myself and others in the past, but it has generally been shrugged off as random bad luck, or biased observation. However, it now appears that what's happening is that during those first 20 seconds or so the misses are all legitimate, then suddenly the streak-breaker kicks in for all of them at the same time! This concentrates the damage into a very short window and makes it very difficult to deal with. I think this is completely unfair to defensive sets. I would think this problem would be even more apparent with Ice Tankers, who are supposed to have many minions attacking them at the same time.

Since regeneration and resistance sets have lower defense, they will naturally get hit more often, but because of that the streak-breaker will rarely come into play and the hits they experience will be more evenly distributed (something that regeneration sets, in particular, excel at dealing with). So the bias is that defensive sets will tend to have their damage clustered, which is always bad. So, I guess this is just another reason why regen and resistance are superior to defense.

Just off the top of my head, a better system might be to reverse the way the streak-breaker works for enemies, i.e. tie the streak to the defender, not the attacker. So, if my SR scrapper gets missed X times in a row, then the next attack by a single attacker will get an auto-hit and then the streak resets. This would help spread the auto-hits out over time, instead of concentrating them. There might be an issue with the lowest accuracy thing, as it might then be beneficial to keep minions around while fighting a boss, but something can probably be tweaked there. I'm not sure if this is a better solution or not, just a thought.

Has anyone looked into how the streak-breaker should affect overall accuracy? Many people have done accuracy tests without factoring this system into the equation, but the streak-breaker should inflate accuracy to some degree. I'm not sure how to calculate what the actual hit-ratio should be, but it should be higher than the accuracy. It would be interesting to know what the effect would be.

[/ QUOTE ]

So what you are advocating here is a reverse streak-breaker for hitting PCs. Basically, if you have a +70% DEF *all* NPCs attacking you should have a very hard time hitting you and it should force misses based on that chart against their probability to hit.

It's an interesting thought and probably would make defensive sets better. It may be a bit powerful, but it would even out the chances of being clobbered all in one batch of hits, even if they probably couldn't hit you for five minutes after that.


Still here, even after all this time!


 

Posted

[ QUOTE ]
In another redname post several months back, it was clearly explained that aim+buildup does NOT stack. IE. if aim gives 100% to accuracy and 25% to damage, and buildup gives 100% to damage and 25% to accuracy, the total would be the combined best of both abilities, IE. 100% accuracy and damage.

I am not sure if this has changed, but I would bet it hasn't... so when calculating accuracy you should seriously consider ONLY using aim OR buildup, not both. if you try to use both you will arrive at incorrect to-hit percentages.

as to the actual numbers, I could be wrong about those, it might be 100% and 33%, not sure.

[/ QUOTE ]

I do not remember any such post, but I can tell you that blasters that 4-slot nova for damage pre-ED were damage-capping nova with BU and Aim: i.e. the damage component of BU and Aim at least seemed to stack just fine (Aim has +60% to damage, not +25%).


[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]

In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)

 

Posted

[ QUOTE ]
So what you are advocating here is a reverse streak-breaker for hitting PCs. Basically, if you have a +70% DEF *all* NPCs attacking you should have a very hard time hitting you and it should force misses based on that chart against their probability to hit.

[/ QUOTE ]

Not quite what I had in mind, but it was just a vague concept to begin with. I was thinking something more like: if I get missed X times in a row by all attackers, then the next single attack against me will auto-hit. It's kind of the same system, but it considers everything attacking me as one attacker. I'm not sure exactly how X would be determined. It probably isn't fair to base it solely on the defenders defense value. I suppose it could be like the existing system in that it could just use the lowest accuracy of all the attacks in the current streak (regardless of source). I can see potential problems with that, but it's just a basic idea.

[ QUOTE ]
It's an interesting thought and probably would make defensive sets better. It may be a bit powerful

[/ QUOTE ]

It certainly would need to be worked out so as not to be overly powerful (and I can see how it could be).


 

Posted

[ QUOTE ]
In another redname post several months back, it was clearly explained that aim+buildup does NOT stack. IE. if aim gives 100% to accuracy and 25% to damage, and buildup gives 100% to damage and 25% to accuracy, the total would be the combined best of both abilities, IE. 100% accuracy and damage.

[/ QUOTE ]

Wrong.


 

Posted

[ QUOTE ]
Pretty sure that he is talking pets here, actually.

[/ QUOTE ]

In a post from over a year ago, Weirdbeard clearly and unambiguously stated in a way that left no room whatsoever for even the tiniest sliver of doubt that the streakbreaker also applies to enemies.

I think he is saying the same thing now.


Edit just because:

WeirdBeard 8/17/04:
[ QUOTE ]
The streak-breaker code breaks only miss streaks, and it breaks them for both heroes and villains.

[/ QUOTE ]

WeirdBeard (about the same time):
[ QUOTE ]
The reason you're not seeing the number you expect is due to one important factor: the omnipresent streak-breaker code. The streak-breaking code is operating at all times over the entire range of possible hit probabilities, for players and for villains.

[/ QUOTE ]


 

Posted

[ QUOTE ]
[ QUOTE ]
In another redname post several months back, it was clearly explained that aim+buildup does NOT stack. IE. if aim gives 100% to accuracy and 25% to damage, and buildup gives 100% to damage and 25% to accuracy, the total would be the combined best of both abilities, IE. 100% accuracy and damage.

[/ QUOTE ]

Wrong.

[/ QUOTE ]

I'm pretty sure +100% to both was right. But instead of just flatly stating WRONG and leaving it at that, why don't you state what the correct values would be? Are you saying both Aim+BU would give +125% to dmg and acc?


 

Posted

[ QUOTE ]
OK heroes, a lot of people have many misconcenptions about random number generation systems. Lets clear some of that up...

[/ QUOTE ]

THANK YOU! I was going to post a similar comment about rand() (just not as clear and well-phrased)

Good example of that expression that having some knowledge is more dangerous than none at all.

[ QUOTE ]
1. rand() or any sufficiently random number genator works fine when it's results are spread out across multiple observers. The rand() as a whole may eventually be predictive(not by a human) but when 1000's of people are picking results out of rand() at random times, the result is that each individual observer will NEVER be able to predict with any accuracy bc each individual user has NO IDEA where in the sequence rand() is and NO IDEA how many other users are picking results out of rand(). rand() on a mod of 5 is easy to predict. rand() on a mod of 100 is not quite so easy. rand() when you aren't the only one getting a sequence is impossible to predict. So drop it on rand(). rand() is fine. PM is you want a more detailed proof that rand() is fine on MMORPs.

2. random generators work against the whole system not an individual. Seeing people with experience with long streaks indicates that the system is working fine because you couldn't predict that you'd have such "bad luck". In fact, you can't predict when your bad streak will end because you can't know all the variables behind the scenes. If you can't predict what will happen then the random generation system is fine.

3. Streak breakers are there to shield against perceived bad luck and actually reduce the randomness of the generator. When missing 99 times in a row has a 7.88e-131 chance of happening with 95% accuracy, it's still possible AND given that there are billions of sequences being burned through, it becomes probable. The streak breaker removes that possibility and therefore reduces the randomness of the system. Streak breakers remove huge chunks of possibilities out of the universe of what the random generator could churn out.

Conclusion:Having a bad day? You just proved that the system works.

For the curious, study the definition between possible and probable. Think also about the scale you are talking about with a MMORP.

[/ QUOTE ]

For the observations of improbable streaks, rand() would be the last thing to question. Logic/coding errors, miscommunication, and misconceptions would be more higher priority.


 

Posted

[ QUOTE ]
OK heroes, a lot of people have many misconcenptions about random number generation systems. Lets clear some of that up...


[/ QUOTE ]

ok...

[ QUOTE ]

1. rand() or any sufficiently random number genator works fine when it's results are spread out across multiple observers. The rand() as a whole may eventually be predictive(not by a human) but when 1000's of people are picking results out of rand() at random times, the result is that each individual observer will NEVER be able to predict with any accuracy bc each individual user has NO IDEA where in the sequence rand() is and NO IDEA how many other users are picking results out of rand(). rand() on a mod of 5 is easy to predict. rand() on a mod of 100 is not quite so easy. rand() when you aren't the only one getting a sequence is impossible to predict. So drop it on rand(). rand() is fine. PM is you want a more detailed proof that rand() is fine on MMORPs.


[/ QUOTE ]

Sorry, this isn't correct. If "rand() or any sufficiently random number genator works fine when it's results are spread out across multiple observers" were true, then people would suggest that a good way to fix a bad generator would be to discard a random number of generated results before accepting one. That doesn't work. The problem with rand() is the pseudo-cyclical nature of the low-order bits: that will show up no matter how you consume the random numbers.

You don't even need to PM me for the proof: if there is an entropy issue with the low order bits of the sequence generated by rand(), then the entropy e of rand() is lower than the entropy of a true random sequence R. If this is the case, then a random subset of the sequence rand() will also have a lower entropy than normal (for that matter, most non-random subsets will have the same property), ergo it will suffer the same problems with randomness.


[ QUOTE ]

2. random generators work against the whole system not an individual. Seeing people with experience with long streaks indicates that the system is working fine because you couldn't predict that you'd have such "bad luck". In fact, you can't predict when your bad streak will end because you can't know all the variables behind the scenes. If you can't predict what will happen then the random generation system is fine.


[/ QUOTE ]

There is actually a statistical definition of the term "random" and it isn't just "unpredictable." A sequence that goes 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, ... might be unpredictable, but an extremely poor random number generator because of its extremely low entropy.


[ QUOTE ]

3. Streak breakers are there to shield against perceived bad luck and actually reduce the randomness of the generator. When missing 99 times in a row has a 7.88e-131 chance of happening with 95% accuracy, it's still possible AND given that there are billions of sequences being burned through, it becomes probable.


[/ QUOTE ]

And we can calculate how likely it is, too. The odds against missing 99 times in a row when your tohit is 95% is one in 6.34 x 10^128. If all 150,000 subscribers played 24 hours a day, attacked things constantly at that tohit percentage at an attack speed of one attack per second, it ought to happen at least once every 134 million trillion trillion trillion trillion trillion trillion trillion trillion trillion years. Heck, maybe twice.


With the number of players, and the actual playtime and play conditions, million-to-one shots are going to happen. Billion-to-one shots are eventually going to happen, but they will be lottery winners. Trillion-to-one shots are really unlikely, and anyone who sees enough of them to believe they are recurring has defacto seen something worthy of investigation. If you actually need to go to scientific notation to express the probability, then a reasonable estimate for that likelyhood is zero.


[ QUOTE ]

The streak breaker removes that possibility and therefore reduces the randomness of the system. Streak breakers remove huge chunks of possibilities out of the universe of what the random generator could churn out.


[/ QUOTE ]

Actually, based on the numbers and description provided by Weirdbeard, it does a lot more than that. The streakbreaker is actually more powerful than I thought it was, and does in actual fact skew net tohit percentages by measurable amounts. Not radical ones, but potentially noticable ones.


[ QUOTE ]

For the curious, study the definition between possible and probable. Think also about the scale you are talking about with a MMORP.

[/ QUOTE ]

Scale doesn't have anything to do with it. If the devs were using an incredibly bad random number generator, the distributing the random numbers might break up truely awful periodic behavior inherent in the generator. But if the problem is a general lack of entropy in the generator, distributing the random numbers won't, and provably cannot, improve the situation.


As I mentioned previously, the main problem is with the low order bits of rand(), so the question is which bits are the devs using: the low order ones or the high order ones (given how rand() works, everyone tends to use only a subset of the bits).

There is also the issue of whether or not the random generators are instanced or not, and whether rand() is the only source of "random" numbers. Rand() is a little pokey, so many times rand() is used to seed a pseduo-sequence generator that is a lot faster: usually a generator like r2 = (r1 * p1) mod p2 that is used a few times before being reseeded by rand().


[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]

In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)