RNG-itis: a cure without (notably) changing probability
" in a server-based game like Path Of Exile, keeping the "weight" (amount of data) of an instance (character, item, socket etc') to a minimum is key to the game being playable. especially since there are literally tenths of millions of instances running at any given time. otherwise, you'll need exceptionally good servers, AND connection on the player side which is no less than perfect (in terms of ports, ping, and speed). what you suggest is adding a lot of data to each instance, and this would kill a game that already has de-synch issues as is. so yes, under these circumstances your solution is impossible. just like I said previously - it's either completely change all (or most) parameters of the Random Number Generator, or keep it unchanged. Alva: I'm sweating like a hog in heat
Shadow: That was fun |
|
Hi, John. I think you are saying that it would increase cost. This is true, but all changes do; first and foremost, developer and QA time are ridiculous. As far as the infrastructure overhead, how much memory would you estimate this would use, for 1M concurrent users?
I estimate roughly 16MB to handle uniques for all million concurrent users, via the following formula: Two 4 byte (32 bit) integers, one for draw count, one for success count, plus 2 more such variables for estimation margin = 16 bytes * 1 million characters active == 16MB. Considering that its unlikely one would care to regulate only a small subset of the data, this appears at first glance not to be an observable possible source of memory pressure to me. |
|
If you're going to look at the technical details of it, obviously it's going to depend a lot more on GGG's actual implementation than on some theoretically calculated minimum.
One thing we can say about that theoretical minimum though, is that such a player-tracker needs to be updated any time any player kills any monster. This is a very common action so the amount of times these variables update would be enormous! Furthermore, it must all be executed in the proper order because it is "counting" variable. What I'm saying is that I wouldn't expect the memory footprint to be the technical issue. The CPU time on database updates would be the bottleneck. Sure they can commit less frequently and rely on cache more to try to shift the load back, but cache tuning can only help so much. |
|
You don't need to save the entire history to achieve a more favourable distribution. I won't pull numbers out of nothing here but even incorporating the outcome of the last past related event would be enough to improve things.
To the Law of Large Numbers: Does it apply reasonably on a per-user playtime basis? Looking at the whole community as our number of events doesn't help the point the OP is trying to solve, that is reducing extreme cases of 'unluck' on a personal basis. I doubt it, because from a somewhat educated gut estimation the deviation should be (too) high to consider it a necessary collateral by most standards. Arguing that over all players the distribution will be even is not helpful at all, neither is the pm-worthy material between courageous and anubite. Last edited by Khazrad#5396 on Feb 27, 2013, 5:28:11 PM
|
|
" I fully understood you. I was paraphrasing the economist Keynes. For individuals it really doesn't matter if the thing averages out over the population, or over a long period of time. If I lose 1000 fusings trying to get a 6link I won't go "wow that was exciting! Atleast someone else is doing better! I can't wait to spend 1000 more! " I go "FML. *uninstall*". " A game isn't really large scale. That is not what we are asking for. We only want wealth to be based more on effort and less on luck. That way it feels better to put effort in the game. " "it's pretty impossible to be so unlucky that you don't stand a chance in the economy." is a completely meaningless statement. It says nothing. Again, no one is asking to make all players equally rich. Enough with the strawmans, okay? Last edited by Sickness#1007 on Feb 27, 2013, 9:04:27 PM
|
|
" Here's my thought process behind that 'meaningless' statement: Here's the original post " That is all the motiviation Courageous supplies in the opening post. Let's dissect it. 1. Players "who are especially unlucky" are turned off 2. "Typical response is to up probabilities" These two statements imply: 1. Unlucky players don't get enough items. 2. Upping the drop rate doesn't fix anything, because relatively speaking, unlucky people are still unlucky. Lucky people just get more drops when you up the drop rates. The statement you call meaningless (I'll admit it's not necessarily good or elegant statement) is in regards to the fact that relatively speaking, nobody is so unlucky they cannot trade. Players can find items and they can sell scrap for shards and even if they're the most unlucky person in the world, they aren't getting NOTHING from killing monsters. Things are dropping. They have economic opportunity to succeed. If somebody finds 50% more uniques or mirrors than the most unlucky guy, so what? That person has a chance to compete in the economy. What Courageous doesn't like is that there are people who are unlucky. And that because of this real or perceived unluck, they leave the game. Whether this actually happens or not is up for debate, but assuming it does happen, the solution is to remove lows and highs; if you find a mirror at level 1, you will get nothing for 100 hours of gameplay, let's say. And if you find nothing for 99 hours of gameplay, on the 100th hour, a mirror will assuredly drop for you. In effect, nothing changed. The system was still giving you the same result, but when it happened and how it happened was different. A "random" system is made deterministic. Your fate is sealed after some number of rolls, which bias you one way or the other. The effect of this change is that players will leave the game when they find a mirror, because they won't want to play the game for 100 more hours to get another one. But more to the point you find fault in, the actual motivation behind Courageous' suggestion is to correct perceived fairness and luck. If you are unlucky for 50 hours, the RNG gods in the sky will assuredly bless you for 50 hours. And if you are lucky for 50 hours, the RNG gods will smite you for 50 hours. Although this doesn't actually change the wealth of players in the long-term, in the short term, it attempts to remove luck from the equation. It attempts to give all players some equal measure of wealth. Once you find 10 nice things, that's it. Because the formula I'm imagining they would code is one-size-fits-all, some threshold will be met after some number of drops. In a truly random system, 100 players can play for an hour and we'll have a widely distributed curve of wealth. 1 player will have maybe 50% of total wealth of the system, the next 24 will have 25% of the wealth, then the next 75 will have the last 25% of wealth. This is because 1 player got really lucky and the rest didn't. A deterministic system would prevent the 1 lucky person from getting anything for X amount of time, while the unlucky players will steadily increase their chance to get as lucky as the luckiest person. In effect, the system averages wealth. It takes a widely distributed curve and flattens it. This is what I try to describe by the misleading phrase 'planned economy'. The comment 'standing a chance in the economy' is also reference to this fact, that if you are the richest person in the economy, you become richer; you control more wealth. I am saying that because people play POE for such long periods of time, and because the chance of finding a mirror at level 1 and level 60 is almost identical, and because there are so many other things that can result in you getting rich (finding a dream fragments or astramentis or an exalted), that even the least-lucky person will eventually get lucky, get an exalted, and be able to buy into the economy, no matter how inflated it becomes. New, unlucky players always attain some measure of wealth, even if that means they cannot be the richest person. The most unlucky of players, if they continue playing, will be able to afford a 6L, because they will eventually find something truly valuable. Changing how RNG works will bias value. Because more people will be of equal wealth, things will have less value. Pepole will covet things less. It will be harder for players to have economic mobility. I could go on, but do you get what I'm saying? I don't think what I'm saying is inherently wrong in anyway, though please, do point out what I'm missing here. My arguments are based around the fact that Courageous wants a more fair system - is it wrong of me to pin that on him? His initial post is sparse and his argument is nebulous (we don't actually know if unlucky players are leaving the game or not; do unlucky players even know when they are unlucky?). I feel that his initial post has more to do with the idea that a loot system should be flatter and the economy should have a much larger "middle class". My Keystone Ideas: http://www.pathofexile.com/forum/view-thread/744282 Last edited by anubite#0701 on Feb 28, 2013, 12:12:42 AM
|
|
" Nope. Never said that. You know when Sickness said, "enough with the strawmans, okay?". This is the kind of thing he was referring to. You have done it at least 3 times in this thread, first implying that I have positions that are not my own, and then arguing against said positions, or poising to. To what end, I cannot imagine. This is what I was referring to when I said "sometimes when we argue with others, we let our imaginations get away with us, and start arguing against things we have inside our head, instead of having a conversation with another human being." As I said, if you have any questions about what I have proposed, I suggest you ask them. Last edited by Courageous#0687 on Feb 28, 2013, 12:57:02 AM
|
|
I am fully in support of applying this to fusings.
No game should put people through the existential despair that is using over 1000 fusings without getting a 6link. I know games won't be all fun, all the time, but they probably shouldn't make people horribly fucking depressed either. (And no, finally getting that 6l after 1000+ fusings does not make people feel better) And don't say "well, those people shouldn't care so much about getting a 6l, you don't need one". That is complete bullshit. In game like this you compare yourself to others, and when your friends and random people in trade chat are linking their 6ls, people feel like they need one. Telling them they don't need one for gameplay purposes is silly, because that's not the reason you need a 6l. And when people you know have gotten 6ls in 200 or 50 fusings, and you've spent over 1000 and are still left with your inferior 5l, you're going to feel like shit. And then when you ponder the fact that your 1000 fusings have brought you no closer to your goal of a 6link, that is when the depression sets in, when the game has managed to make you feel incredibly fucking terrible in a way no game should ever make a person feel, in my opinion. EDIT: I'm only in favor of this with regards to fusings, and maybe jewelers. This is because people set out to use these orbs with a specific goal in mind, and many people are goal oriented and will not be at peace until they accomplish their goal. So failing to accomplish that goal after thousands of orbs, through no fault of one's own, is going to fuck people up. Loot drops are different, because basically nobody makes it a goal to "go find a mirror of kalandra" or go find a specific unique from a drop, and thus does not carry the psychological effects of failure to attain a goal. Last edited by aimlessgun#1443 on Feb 28, 2013, 3:21:45 AM
|
|
And now for a thorough examination of the issues here.
So let's say the chance of getting a unique off of an Orb of Chance is 1 in 250, or 0.4%. That means the chance of getting a unique off exactly two Orbs of Chance is 0.3984%; that's 99.6% (the chance of failing the first roll) times 0.4% (the chance of succeeding the second). That means the the graph of getting a unique in exactly x Orbs of Chance looks like this graph. However, we don't really care about the exact number of Orbs used; we care about getting the desire result in a certain number of Orbs or less. That chance is equal to the chance at x plus the chances of all numbers before it; it's really just one big sum. If p is the probability of success each attempt, you end up getting which, when p=0.004, looks like this graph. Notice on that graph: the 50% chance mark, also known as the median, falls around 173, not at 250 like you might expect. However, think about it this way: if you had a deck of cards and you flipped them over one at a time until you got the Ace of Spades, would you need all 52 cards to get a 1/52 chance? No, almost all the time you'd use about half the deck. If you had infinite decks in the shoe, the concept wouldn't change all that much, and that's very analogous to the situation here. However, the mean is a little bit harder to eyeball, while surprisingly more intuitive. The way to figure that out is to take the weighted average of all the possible values and add them together; for example, 0.4% of 1, plus 0.3984% of 2, and so on, all the way to infinity. This ends up adding up to 250... when it was a 1 in 250 chance to begin with. So what we want here is a mechanic that doesn't change the average luckiness much, while making things on the one side of the median more likely. Interestingly enough, the answer was already described -- making the process more like a single deck of cards and less like an infinite number of them. So let's delve into that in a little more depth. Unlike the infinite system we described earlier, a deck of cards is simple. Chance of getting it on the first card? 1/52. Exactly two cards? 1/52. Three cards or less? 3/52. So the median is 26, and the mean is pretty much the same (actually 25.5). This actually presents a problem when trying to apply it to the game. In order to make new average luck feel like old average luck, you'd have to use an "Orb of Chance deck" of 346 "cards" (0.29% chance on first pull), and to have the same mean (which means: the same number Orbs spent per success, on average, server-wide) you'd need the "deck" to have 500 "cards." If you just used a "deck" of 250, the result would be nothing less than a major buff to forging uniques with Orbs of Chance. Notice that under this new deck system, the odds of early successes go down. That's because there's no such thing as a free lunch; if you make the later trials more probable with effecting the overall probability, the earlier trials must be less probable. So in a way this system is like Robin Hood, stealing from the lucky to give to the unlucky. Sure, you could lessen this effect somewhat by using multiple decks rather than just one -- sort of a compromise between "one" and "infinite" -- but one major question remains unanswered: when is this deck shuffled? After getting a unique? Is that the definition of "success?" Imagine the same system applied to Orbs of Fusing... do we care only about 6L, or about 5L too? Does the deck persist unshuffled between gaming sessions? What if someone has to go fix some dinner, does the deck reset with the town portals? If it doesn't, how will the server track all this information? If the server doesn't track it, how long until someone makes a client-side hack to exploit the system? And if the server does track it, how does that effect the already present desync issues? All in all, I think OP has his heart in the right place. I could even imagine some kind of innovation, with fancy maths, that exposes a hole in my logic and transforms me into a convert. But as things stand now, I believe something like this simply isn't in the best interest of the game. TL;DR: OP's suggestion would likely lead to one or both of the following: * A general buff to all drops, which could be handled more directly with the current system * A system with lots of calculation overhead and weird tracking rules that would essentially steal from the lucky to benefit the unlucky. When Stephen Colbert was killed by HYDRA's Project Insight in 2014, the comedy world lost a hero. Since his life model decoy isn't up to the task, please do not mistake my performance as political discussion. I'm just doing what Steve would have wanted. Last edited by ScrotieMcB#2697 on Feb 28, 2013, 3:27:54 AM
|
|
" IMO: With fusings, you'd use a multiple deck approach, only apply it to 6l, and the objective would be to make the 6l more likely not for people simply on the wrong side of the median, but the unluckiest 1% or so of people. Tracking would be done per item, each item recording a history of how many fusings without a 6l. This data would be stored by the server along with all the other item data like mods/sockets etc. Once that item had reached an amount of fusings such that there was less than 1% chance of not getting a 6link, and had not gotten a 6link, fusing rolls would switch to a new deck under which the odds of getting a 6l were vastly improved. Once an item is 6linked it resets to the original chances and resets its "fuses without a 6l" counter. The objective of this change is so that extremely unlucky people can console themselves with the fact that their fusing failures are accomplishing something: namely, moving them towards the point where a 6l will become more likely, alleviating the terrible depression that comes with using extremely large quantities of fusings with the knowledge that you have accomplished nothing. Last edited by aimlessgun#1443 on Feb 28, 2013, 3:50:54 AM
|
|