Season 3 Launch: Patch Notes + Development Letter


  • (continued)

    And if some really nasty and disturbing allegations pop up? Say it’s alleged players are possibly reverse engineering the PRNG and exploiting it to get wins? You just take that head on and say something like “we agree that’s something that we don’t want happening” (again, acknowledging legitimacy) then say politely that basically nothing IS going to be done at this time, then move on.

    And yeah, okay, that’s not “nice”, you’ll get flak. But what’s the alternative? If you don’t acknowledge legitimacy, you get it brought up again and again and perhaps in great detail what exactly SHOULD have been done, then instead of people seeing “oh okay, that’s just how it is, we can all move on”, then people start thinking about the legitimacy of complaints - focusing on the wrong thing. Then from there the integrity and competency of developers starts to be called into question.

    Blanket denials CAN work early on, especially if there’s not much to feed the fire. But we’re past that point, there’s just too much history of legitimate concerns being played off, denied, or ignored.

    Suppose a higher-up had pushed for this switching between PRNG nonsense. Well, you don’t want to tell your boss “this is ****”, you kinda have to carry out orders right? But then, you have to anticipate the legitimate complaints and not compose a reply that has you walking face-first into a counter.

    So what IS the legitimate complaint? As I wrote, the complaints about PRNG tend to be nonspecific - but you must have specific criteria to test. If you don’t, you have no test! And if you say you tested without testing and can’t back it up when questioned - well.

    Suppose someone says “bombing is bad”. Does that mean INDUSTRIAL BOMBING AS A WHOLE is bad? Clearly not. The player is complaining about THEIR EXPERIENCE. But what does that mean? Perhaps a player REALLY means that AXIS bombing is bad. Or ALLIED bombing. There is a difference. More on that later.

    If you’re testing for industrial bombing, you have to remember the source of the report. Maybe a player plays Axis preferentially. (And doesn’t Beamdog’s own data support this?) Or maybe a player plays Allies preferentially. So when a player reports bombing issues - is Beamdog checking that specific player’s faction preference? And is Beamdog looking at that specific player’s data?

    I imagine not. But that’s okay - depending on how the response is worded.

    I mentioned there could be a difference between Axis and Allied bombing. Now I know, sometimes I get into these details and it’s probably tough to follow along. But here we go, so try.

    PRNGs calculate a sequence of numbers off a time seed. Repeated calls to the PRNG return later numbers in the sequence. Correct?

    Now it gets a bit tricky. We have to combine that with what we “know” about PRNG behavior, and 1942 Online’s implementation specifically.

    Let’s say that there’s what I call “second order complexity” - in line with what I wrote in that referenced Steam thread. Roughly, it means looking at the behavior of not a single dice, but an undifferentiated mass of dice. As I understand it, that is what Beamdog’s testing has constituted to this point.

    What DID Beamdog’s testing indicate? Something like a reasonably (?) equal(ish) distribution of 1s, 2s, 3s, 4s, 5s, and 6s. Yes?

    And this is exactly how I stated PRNGs ought to work. They’re SUPPOSED to do something like that. But - you remember I stated PRNG validity tests typically do NOT test for what I called the third order of complexity? You remember locking that Steam thread from another poster that referenced

    https://www.daxthink.com/think/2017/2/27/apple-made-itunes-shuffle-less-random-to-make-it-more-random

    As I wrote in other threads, the IMPLEMENTATION of PRNGs often tweaks the behavior to be satisfactory - and it is those TWEAKS that very much define the behavior of the output. That poster just cited a particular example, but it really IS how it works all over the place.

    So what we’re looking at is - we don’t HAVE tweaks to the output (though we will with “stabilized dice”). But as I wrote also, stabilized dice are off-brand so carry a stigma - and you’re still not addressing the fundamental validity of the core.

    Returning to what I call second-order behavior. So things are acting “predictably” or whatever on the second order. So it’s okay, right? Wrong. Because it’s the third order that matters.

    To use an analogy - suppose you test to see if a tree seed will sprout. What I call first order is you see if a single seed sprouts. Second order is you see if a lot of seeds sprout together. But you don’t run a farm on second order. If you just threw seeds randomly, you’d get clusters of plants, some plants would choke off nutrition to others. It’s only when you look at the third order - which is the farm in application - that you can test if the farm works.

    And we ARE testing for the farm. We’re not looking for ordered rows of crops - but we’re looking for an arranged group of distributions of groups of dice. If we were looking at a seed planter, THEN we might be able to stop at second order, by looking at the precise distribution of seeds at particular intervals. But the problem we have isn’t that simple.

    I wrote that third order works intuitively on a level similar to how HUMANS parse information. But you need to understand it isn’t the HUMAN component that’s the determinant for whether a dataset is aberrant or not. It’s the COMPUTATIONAL component that can be examined that is the determinant. There ARE criteria for “aberrant” and “non-aberrant”

    And what’s ALSO important is to understand - the model PREDICTS that PRNG behavior in application will NOT be like real random numbers.

    What? But . . . PRNGs are SUPPOSED to be like real random numbers. How can a model POSSIBLY predict that PRNG behavior is NOT like real random numbers unless that model is WRONG?

    But the model isn’t wrong. Just follow along.

    Suppose you have real random numbers. Real random numbers have “clusters”. Now the argument diverges. If PRNGs don’t generate clusters then PRNGs don’t properly emulate random numbers, argument ends (PRNGs are a problem). Agreed? So let’s look at what happens if PRNGs do generate clusters.

    I forget if it was the fictional Malcolm in Crichton’s “Jurassic Park” that used this example - but suppose you have twist a string. After a while, the string doubles back on itself and bunches up. If you keep going, those bunches themselves bunch up. You might not be able to predict how and where the first bunches form, or how and where the second bunches form, but there are common elements between one bunched string and another.

    So if PRNGs generate clusters, think about it like this. Suppose you “cut” the cluster by generating a new time seed. But you can’t take for granted that a new time seed is going to “solve” the problem. Unless you look at the behavior - and I mean really look - for all you know, the new behavior parallels the old. And if you don’t cut the cluster by generating a new time seed, that also may create problems.

    So what about the actual implementation of 1942 Online? I recall it being said that the game generates a new PRNG off time seed - but when and how exactly does that happen? (That’s a rhetorical question. Though I wouldn’t object to its being answered.)

    Suppose - just for argument’s sake - that the PRNG only references a time seed once, when a game is created. Then - again for argument’s sake - suppose the time seed effectively differentiates between only two states. We’re assuming that PRNG outputs cluster. So what happens if BOTH PRNGs cluster at similar points?

    If you didn’t think PRNGs could have problematic outputs before - that should give you pause. If it doesn’t, try reading that again until it really makes sense. If it doesn’t make sense, well, sorry, it’ll have to because it’s fundamental - and correct by the way.

    If you understand the string analogy, then you KNOW it’s not a question of “if”. We KNOW PRNG results bunch up - it’s even a prerequisite for this branch of the argument - and we know the bunched results themselves bunch up in turn. So it’s not a question of WHETHER both PRNGs cluster at similar points. It’s only a question of HOW MUCH they cluster.

    . . . and you can say the time seed differentiates between ten states or sixty states or whatever. It doesn’t matter. The issue is each generated sequence of numbers WILL bunch, and does that bunching behavior work analogous to real random numbers?

    But it almost certainly doesn’t.

    How can we know?

    If we have limited time seeds, then we have a limited number of generated PRNG sequences. Since we know there’s clustering - and clustering of clusters - we know that that limited series of sequences has some “bias” in the numbers - and again, if it DOESN’T then that ITSELF is a problem. There’ll be more “1’s”, say, than normal, or more “6’s” - or whatever. Yes? Agree on that much? Again - it’s true, and fundamental.

    So IF you agree - and you must, because you should understand that is NECESSARILY the case - then the question is how does this behavior MANIFEST in a game? And that’s the third order question, and the reason why there IS real potential legitimacy to complaints about PRNGs.

    Say someone strategic bombs. What does that mean? REALLY?

    Before that, a bit of recap. We’re assuming the PRNG generates a limited number of sequences, each of which has clustering, each of those clusters also have clusters, and as we do have a limited number of sequences, invariably the clustering CANNOT parallel actual random numbers. What we want, though, isn’t an exact parallel, but a reasonable emulation.

    (continued)


  • (continued)

    So again. Strategic bombing. Now think about 1942 Online - the game. The meta. The actions of the players. How does it manifest?

    The Russia player opens with a triple attack or a double attack (say West Russia / Ukraine) or a single attack (say West Russia). The meta being what it is, I say triple attack is too risky, and I say MOST players will do a double attack. (Agree, disagree, it doesn’t matter - this is for illustrative purposes, the important concept is the R1 meta stabilizes around relatively few lines of play. Which it does. Especially without a preplaced bid. Sorry, just my little jab there.)

    That’s an important point. If players literally had an infinite number of valid choices, then that would change the actions - which would change the particulars of dice calls - which would mean lines diverge. But players do NOT have infinite valid choices. Just a few. Their behavior “clusters” - which is different to random number clustering, but to be noted.

    So let’s say in a particular game, R1 West Russia attack rolls 13 dice for attackers, 6 dice for defenders (or whatever), then 11 dice for attackers, 3 dice for defenders (or whatever). Let’s say the R1 attack resolves after 45 dice are rolled.

    Then let’s say in ANOTHER game, an identical R1 attack resolves after 41 dice are rolled, another game 47 dice - whatever.

    Then let’s say in ANOTHER game a slightly different R1 attack on West Russia resolves after 43 dice . . .etc.

    What I’m getting at is even in all these different games, you get convergence of the number of dice rolled - and even though you have “randomness” in the PRNG, the game mechanics themselves lead to convergence. If the PRNG DOES generate something like X hits of Y attempts for infantry SOMEWHAT “fairly”, then with a great amount of data, results converge - just like how large amounts of data of binomial events converge on the binomial distribution.

    And yes, probability is what it is so there’s no “certainty” - but as I wrote many many months ago, though you can’t definitively declare “our tests show there is no issue” (remember that?), you CAN say things like “our tests with this dataset indicate there’s a 99.999999999% of there not being an issue”. And please understand, I literally mean that last number can be COMPUTED AND MATHEMATICALLY DEMONSTRATED - unlike other “references” that I’ve seen from developers stating there’s a “99.999% whatever”, which I’m quite sure are NOT actually calculated.

    Right. So we know human player actions cluster, we know the PRNG clusters, we know the PRNG generates a limited range of sequences of numbers, we know mathematically this MUST result in bias. The question is, again, though - not whether there is bias - but is there bias in EXPRESSION?

    . . .and the answer is chained to the IMPLEMENTATION of the PRNG.

    Suppose you say that the PRNG grabs a new time seed every time. You may recall the developers releasing a statement they tested whatever billion or something PRNG outputs. And . . . . that was drawn from in-game data? (Maybe not). Contextual data? (Almost CERTAINLY not.) What was the period of the data? That is, say the first hundred numbers in ten million separate PRNG generated sequences of numbers were taken for analysis. But if the game doesn’t call through an entire first hundred numbers then that’s quite useless for testing the validity of the PRNG in actual application. And if the game doesn’t jump to a random point in that hundred number sequence, then you’re going to get clustering. And if the game DID jump to a “random” point, then of course that “random” point is itself determined by a PRNG, so you’re back to clustering of clustering problems again.

    So back to the expression. You remember I said we can EXPECT to see PRNG output clustering (and if we can’t, again, that of itself is a problem). And I said human behavior means inputs to the PRNG are also clustered. So that means if a player IS strategic bombing, they’re probably pursuing much the same strategy time and again. Make sense? So depending on how exactly the PRNG does manifest, it is entirely possible that the player will be punished for, say, strategic bombing, time and again.

    You could point to second order analysis, you could say all the numbers come out in the wash - but they DON’T, not really. It IS possible that a player’s strategic bombers get shot down again and again and again - and given the described implementation you should be able to see that IS a distinct possibility because of clustering of clusters - then of course they’re going to think there’s an issue. Because there IS ACTUALLY AN ISSUE, STATISTICALLY - even if second-order analysis simply doesn’t detect the issue at all. And I’ll say AGAIN - it depends on a particular player, how they particularly play, because their clustering of behavior changes the calls to the PRNG which is itself clustered - so a reported issue from one player that IS statistically legitimate will not be able to be replicated by players that don’t emulate exactly the same behavior. (See, again? You must have data export.)

    So returning to what I said was the public address. Rather than saying “we looked at customer complaints and switched out our PRNG (tee hee!)” I’d set up a REAL battery of tests using the ACTUAL data from complaining players - and if that wasn’t in the budget, I’d just not say anything - at least not without written records that I had protested, and written orders TO say what was said. Because again - if you want to do blanket denials, that DOES work in SOME situations, but when there’s legitimate complaints that remain unanswered for months, something else needs to be done.

    ==

    Look. I get that if Beamdog doesn’t want to put out tools, okay. That’s a lotta work. Expensive. But if you’re seriously going to go with “xorshift128+ did nothing wrong”, you’re going to have to draw data from IN-GAME. There’s just way too many holes in the methodology if you don’t. (And I’ll note - if you do draw data, best have separate tests for platinum, gold, silver, bronze, and wood. I won’t elaborate here unless asked).

    If you want to put out a statement addressing those that DO want to look into it - you’ll want to say something like how many time seeds the PRNG uses, how the time seed is generated (whether it’s on the second, whether each battle uses a different time seed, or when exactly the time seed argument is passed to the PRNG). The obvious problem is people will say if you put out that information, that’s going to potentially give hackers more information - but for heaven’s sake if they’re reverse engineering they can work it all out anyways, plus it’s already been released that xorshift128+ is the core, if people are going to hack a wee bit of general information that they probably already have (and more besides) shouldn’t make a difference.

    And for heaven’s sake, in most Western cultures replies like “have you even read the link?” and “why did you comment that way?” are interpreted as NOT at all being sincere. They’re read as combative passive-aggressive rhetorical questions along the lines of “you haven’t read the link” and “you shouldn’t have commented that way (if you’d even bothered to read, which you didn’t.)”

    I mean, I should know. You may recall my saying “some reading needed to be done” or similar on Steam forums and being warned for being “offensive”. So if I’m “offensive” if I’m a person that’s not representing an entity and I have documentation to back up that reading wasn’t done - then what of someone that IS representing an entity combatively asking if someone even read something, but then actually looking into it and seeing yes probably the reading WAS done?

    You can see how that’s much worse, yes?

    Look, I know, I’m disconcertingly up-front. But I want to be clear I’m not trying to get you in trouble. If I had that in mind, I’d just grab a load of screenshots and contextual documentation, add a summary and commentary, and send it on all over the place. The way I figure it, you’ve got a tough job, and at least even if you don’t have all the mathematical or contextual background, you HAVE at least been around for months - and if you were replaced, who’s to say the replacement would be any better? So if I can help by maybe answering questions that I think were left unanswered okay, I don’t have to make a big thing of it, you know? I do what I can, you do what you can, let’s all get along, etc.

    But I can’t do anything about stuff like not getting the legitimate mathematics and argument behind complaints - nor can I do anything about combative responses like “have you even read the link?” Nor can I really play off blanket denials and evasions over the course of months as being a good answer.

    And think, am I just pretending to try to be fair-minded? When I say the developers don’t do certain things, you know I don’t say things like “ach, the developers are hopeless idjits”? I always say things like “developers have to set priorities given their budget”. True. Am I endlessly pestering for transparency and dates? Months ago when it was said a developer response on dice was upcoming - I COULD have cited your and Cody’s later responses and made a big point of how the developers were up to their usual denial games (you remember a response (not you) that said something like “PRNGs can’t be distinguished from random numbers by humans”.) Goodness knows I COULD have ripped into that, I WANTED to - and you know that’s EXACTLY the sort of thing I CAN and HAVE jumped all over - but I didn’t. I just shut my mouth and waited for the developer response. I reasoned I didn’t need to feed any controversy, if the developer response was good (and I bet it wouldn’t be, but I didn’t SAY that at the time), then great. If the developer response was NOT good, then I could take it up at the time. Is that the behavior of someone with an axe to grind, or the behavior of someone that DOES want to give the developer a fair opportunity to respond (and even MORE than fair I’d say really.)

    I could have played it very hard, but I didn’t. Not at all. So when I say let’s try to work it out, is that just me playing games, or is that how it is?

    But then, if I am trying to work things out - if I say that things could be improved in the public relations department, if I say there is a legitimate case which isn’t understood - perhaps instead of dismissing what I’m saying out of hand, you might try to believe I’m NOT actually trying to rake you over the coals - maybe I REALLY DO believe what I’m writing. (Which I do.)

    And I’d say even if you are being told by some people that there isn’t an issue - I’ll respond - do those people have a heavy mathematics background? Twenty plus years of experience with Axis and Allies? What of training in psychology? Marketing? Programming? Understand my responses typically combine all these disciplines. That’s perhaps why I see issues where others don’t - not because there ARE no issues, but because I just have more experience in different disciplines.

    For example? You remember I said months ago that the PRNG issue was a public relations issue. That didn’t mean it could be answered with simply “public relations” - as with any question of practical issues, that meant the practical aspect had to be addressed. If a local politician has a “public relations” issue with not being able to obtain federal grant allocation, they can’t just respond all the time with a blanket “it was looked into, it just didn’t work out”. The REAL issues need to be looked at - WHY did federal grants go to surrounding counties but NOT the local? Why couldn’t this be resolved? Is it because the county in question didn’t have the same level of infrastructure as other counties? Or did other counties call in political favors? What was the real reason? And even if the REAL reason can’t be mentioned for political reasons - at LEAST a reason that SOUNDS real needs to come out. That’s public relations.

    So there I said - look. How do people parse information? I say they’re not looking at individual dice results, they are looking at outcomes of groups of dice. Is that reasonable? Yes. It is. Then I say testing needs to be done on that basis (which as far as I know it totally wasn’t). Is THAT reasonable? Yes.

    Then I say HOW you PRESENT that information. And I know binomial distributions create a curve, I know actual data differs to calculated projected - even if we’re not talking about real live situations with unknown variables, you ARE going to get deviation between the two. So then I said - what? Instead of citing arcane things like Dickey-Fuller (which I don’t think really answer the question anyways) or “internal testing” - I said you present the information VISUALLY - which means people WITHOUT mathematical backgrounds can look at it. And yes, you could possibly create a false narrative with the data. I never said you couldn’t.

    And of course - mathematically - and you would need mathematics to know this - you can’t determine the validity or invalidity of a dataset to a given degree of precision if you don’t have a sufficient sized dataset to test. So you incorporate that as well.

    But returning to the psychology aspect - instead of having arcane non-answers which don’t work out mathematically for those that do understand the mathematics, and look like evasions to those that don’t understand the mathematics - you have VISUAL representation. If the datasets indicate there is no problem (which might NOT be the case - but again, if you have the datasets and analysis protocols that’s a lot of the work that needs to be done for an actual fix right there) - anyways, that VISUAL representation convinces a lot of people right there. And for those that DO dig deeper, the onus of alternate models is on them - because you CAN say (provided you DID have data exportation and analysis tools and visual representation) that the developers did everything that could reasonably be expected.

    As to programming experience - well, I wrote how PRNGs work in concept, and isn’t that true? Mathematics - clustering, isn’t THAT true? And twenty plus years of Axis and Allies experience - well when I say there’s no substitute for live defender decisions, I already outlined months ago how you CAN create a complete substitute but that’s so cumbersome to use it’s just as bad as the current situation, and if you do NOT have live defender decisions that changes defender ability to respond - and that affects everything from removing 2 fighters then 1 carrier then 2 fighters then 1 carrier etc if defending fighters don’t have a safe landing zone to taking preferentially Russian or UK or US troops as casualties, changing the units available to potentially do territory trading with air backup, to wanting subs NOT to submerge for a main fleet, but wanting them to ALSO submerge at other areas on the same round. Those distinctions aren’t something that very casual players are going to think important - but they ARE a distinct part of Axis and Allies play for veterans - and as I said, if you DID want to have a “casual” oriented Axis and Allies fine, but saying the online version is based on the 1942 v2 board game when there are actually a lot of differences! - well.

    And to wrap up - I know it’s a lot of text here. But let’s not shoot the messenger okay? I tried short versions, all the time. I asserted allied carrier use was important. Wasn’t accepted, so I wrote a whole treatment of the issue (and more besides). I said PRNG was a public relations issue. Wasn’t accepted so I wrote out the details of how I think it should be treated. I said the developers needed to hire a competent statistician to look at things. Wasn’t done. So what can reasonably be done? I stated things in brief, they don’t get traction. I say hire professionals, it doesn’t happen. I write out a great amount of detail - NOT EXHAUSTIVE by any means, but just the bare minimum to shape and inform the case - and I get called out for text walls. It’s like really now. I don’t have any skin in the game, is it expected that I personally underwrite the bills for the research or for hiring experts or to do the work myself?

    I understand I can’t expect people to understand decades of context from a few paragraphs. I understand even if the game generated up to four million in revenue that’s spoken for (to generate profits, if nothing else - and since it’s always a case of comparison with investments, maximum profit for minimum resource allocation is a reasonable goal). And I understand people don’t want to read a load of text. But reasonably, what else should I do or can I do?

    To quote Tolkien’s “The Hobbit”

    “What else do you suppose a burglar is to do?” asked Bilbo angrily. “I was
    not engaged to kill dragons, that is warrior’s work, but to steal treasure. I made
    the best beginning I could. Did you expect me to trot back with the whole hoard
    of Thror on my back? If there is any grumbling to be done, I think I might have a
    say. You ought to have brought five hundred burglars not one. I am sure it
    reflects great credit on your grandfather, but you cannot pretend that you ever
    made the vast extent of his wealth clear to me. I should want hundreds of years
    to bring it all up, if I was fifty times as big, and Smaug as tame as a rabbit.”

    It worked out for Bilbo and the dwarves; maybe things will all work out here too.


  • @Brian-Cannon said in Season 3 Launch: Patch Notes + Development Letter:

    annnnnnnnnnnd still no fix for the dice

    @JuliusBorisovBeamdog said in Season 3 Launch: Patch Notes + Development Letter:

    Sorry, have you even read the link?

    @Brian-Cannon said in Season 3 Launch: Patch Notes + Development Letter:

    I have Julius

    @JuliusBorisovBeamdog said in Season 3 Launch: Patch Notes + Development Letter:

    Sorry, then why did you comment that way?

    I figured if I’m going to criticize a response - as I’ve always said, it’s very easy to criticize - much harder to state a specific course to follow that doesn’t likewise have issues. I cited what I considered wrong before, but not terribly detailed about why and what to do instead.

    “annnnnnnnnnnd still no fix for the dice” - drawing out the “annnnnnd” you could characterize as an attack - but consider the speed of developer response (months and months) and the evasion (even if not deliberate) and denial (even if the issue wasn’t understood). When one party behaves unreasonably, it’s not reasonable to act as if that party HAD been reasonable. So best - considering the context - just to let it pass. (Even without context, it’s STILL best just to let stuff like that go, if you’re representing a company).

    “Sorry, have you even read the link?” - terrible terrible response. Leading with “Sorry” could be a lead-in to an apology so is polite/neutral of itself. But the rest is just a vicious backhand. “Have you even read the link?” Not “Have you read the link”, which would be bad enough! But have you EVEN read the link? Did you EVEN bother to do the smallest modicum of what’s reasonable and appropriate? That’s the takeaway. As to “have you read the link” - of itself, that’s frankly insulting.

    You could perhaps get away with that level of insult on some level if the development letter REALLY DID exhaustively address a “fix for the dice”. But it doesn’t.

    Note there’s a difference between a representative of a company making an insulting assertion contrary to documentation, and a customer making an assertion that can be taken as insulting but that has LOADS of documentation.

    What would have been an appropriate response?

    1. Lead with thanking the person for their time, and acknowledging the legitimacy of the inquiry.

    Companies pay big money for metrics, and here’s someone that took their time - no matter how brief - to provide feedback. That’s stuff companies fight over, pay for, there’s scandals about people surrendering data - and here’s data, at someone else’s time and expense, provided to you, for free. That’s the mindset you need at the core. If you don’t have it, it’s going to reflect in your actions.

    1. If it is NOT POSSIBLE to acknowledge the legitimacy of the inquiry (for political reasons or whatever - say you don’t understand what they mean, or suppose you’re under orders not to respond directly to particular topics) - deflect. Not a blunt deflection that denies legitimacy - rather, a tailored deflection that acknowledges the question without directly responding, pointing to some way the customer feedback IS making a REAL difference, and pointing to some positive action that the developers DID take.

    (Note - even tailored deflections frankly wear thin after a while. Especially after months. There is really only so much you can do, and you really need written orders or a voice recording of orders telling you to use even tailored deflections if it’s on a months-long basis. You have to cover yourself after all).

    Example - suppose you can’t address the legitimacy of the dice at all (orders). Say you can’t mention the development team won’t be coming out with export tools (orders). Say all you can say is the team is looking at “stabilized dice”.

    “Thanks for continuing to provide your valued feedback. We continue to track and monitor all feedback for future development of 1942 Online and other potential Axis and Allies titles. At this time, the development team is working on planning and implementing a “stabilized dice” option that we hope players will enjoy.”

    And that’s it. Nothing more. If you get responses like “the development team didn’t do a good study” - don’t reply. Because you’re under orders not to - right? That’s why we’re assuming you didn’t answer that directly in the first place. (We could say you didn’t understand, but that’s less flattering so let’s just leave it, especially as the recommended action doesn’t change on that basis anyways). You tell the customer they’re valued. You say their reports make a difference. And on some level that’s true. If you’re just throwing out reports, surely you must empty your trash folder every so often. Or maybe you’re angry that you have to deal with so much whatever stuff. On some level - on SOME level - customer reports ARE being monitored. And if there were no customer feedback, you’d be out a job, and you don’t want that. So you DO appreciate and monitor feedback - on SOME level. SOMEHOW. That’s the truth. And if some legitimate offer comes along to pour two million dollars into the project (say), of course you’d bring it to your bosses (it would be weird that they weren’t approached directly, but whatever.) So yeah. You ARE monitoring feedback and providing it to the ones that are making decisions. On SOME level. This is just truth, okay. I don’t know how much repackaging it requires to BE the truth, but what does it matter? Then you end by saying the developers did something. And that’s the end.

    And when posters give you and the development team flak for not addressing this and that and the fifty thousand other things - JUST SAY NOTHING. If nothing is being done, they’re absolutely right to complain. Blanket denials work in SOME situations, but not after months of the same issue being brought up. It’s really a question of acknowledging or denying now - and if you answer a question but “evade”, it’s even WORSE than a TOTAL NON-ANSWER because once you go with a pseudo-response you’re digging yourself either into the hole of losing integrity, or making people think you don’t know what’s going on. Rather than dig yourself into that hole, you just stand on the ground you CAN be sure of - repeat again and again, this is what’s being done, we’re monitoring things, then after some months people will give you flak for literally nothing happening or even being announced, but what are you going to do? You don’t have an answer. So don’t try to give an answer. Just say this is what there is to be said, that’s an end of it, if you MUST acknowledge things, don’t attack their legitimacy, that just invites discussion and controversy and a whole bag of things you don’t want to deal with. Just leave it.

    “I have Julius” - straight. Hopefully you don’t find that insulting.

    “Sorry, then why did you comment that way?” - ugh. If I say “Sorry, why are you such a tremendous troll?” “Sorry, why are you a so and so?” Sorry, etc.". helps nothing - it just comes off worse.

    Here, you’re questioning why someone commented the way they did. If you genuinely don’t understand something, then you do have to ask a question. But saying “why did you comment that way” is normally interpreted as saying “you should not have commented that way, now provide justification for what you did (and even after you provide justification you’re STILL wrong).” Really! There’s a power dynamic involved, and nobody likes being stepped on - yet that’s exactly what you’re doing to others when you do that. Especially when it’s shaped as a question. Oh my, yes.

    So you have to write it differently. How? Again, remember - you want to acknowledge the legitimacy of what people are saying. You want to make them feel like their input is not only valued, but used in a way that makes a difference. Then you want to wrap it up trying to say the developers are doing their best and are, in fact, performing to reasonable expectations. Even if they aren’t. Especially if they aren’t.

    So - and again hopefully this isn’t following an unfortunate exchange involving something like “Sorry, have you even read the link?” - how WOULD you impart a question in a respectful way, if the act of questioning can itself be insulting? You have to make STATEMENTS.

    In this hypothetical - let’s someone said an issue wasn’t addressed. Suppose you thought it was. You asked for confirmation, they provide confirmation.

    At that point - you MUST NOT respond saying things like “why did you comment that way”? They made a statement. You HAD YOUR CHANCE to reply and inquire and shape the narrative. When they blandly repeat their original statement (even if in slightly different words), you MUST NOT repeat what you wrote. You HAD YOUR CHANCE. Whether it’s your fault for not imparting your meaning or their fault for not understanding, you’re the representative of the company. The question of who was ultimately responsible is irrelevant - as it’s going to land in your lap REGARDLESS. You’re the one that has to act in a professional manner. Only you! Doubling down and questioning customer actions is NOT the thing to do, ESPECIALLY not with a literal question that implies a power dynamic, and sticking a “Sorry” in front of that just comes off as a backhanded slap.

    Instead, lead with a statement that acknowledges what they wrote, and leaves the onus of not understanding on you. (Which is where it really is anyways.) Something like “Sorry, I thought by “fix for dice” you meant positive developer action to address possible differences between PRNG output and actual random numbers, which is something we intend to address with “stabilized dice”. I understand now that is not what you meant, but so I may address your question correctly, may I ask what, exactly, you mean by “fix for dice”? Please provide as much detail as possible so I may correctly understand and address your concern.”

    Again, a question is a power dynamic - but since it’s prefaced with an apology and a statement to clear up understanding that puts the onus of responsibility on you rather than the poster, it’s a soft sincere question instead of a hard confrontational question. Then at the end you again place the responsibility of understanding on you by saying you want to correctly understand and address the concern - the subtext is that you’re asking for details ONLY BECAUSE IT IS ABSOLUTELY NECESSARY (which it is, especially if you don’t understand what they mean, which IS the case if they’re just repeating themselves).

    And notice how exactly “I understand now that is not what you meant, but so I may address your question correctly, may I ask what, exactly, you mean by “fix for dice”?” is structured.

    You lead with implication that YOU were at fault “I understand now” means you did NOT understand THEN. Then you say “so I may address your question correctly” - acknowledging that YOU are responsible for answering THEIR question, not the other way around. Only THEN, with those things ESTABLISHED, with the fault and onus ON YOU, do you ask what they mean. Which you did before, but you pack that all in one summary sentence to restate the point, make it REALLY clear you only ask a question in the interests of serving them - it’s not that they have any obligation to explain themselves to you.

    ==

    And with all this I want to make the point - this is out of Western cultural expectations for customer service. If you’re fluent in English, but operating out of Eastern Europe, say, then namby pambying around can be seen as weakness that wastes everyone’s time. Or if you’re operating out of China or India, you just say “this is how it is” and the subtext is “and be grateful you’re getting even this much!” Even in Western cultural expectations, operating a business often cuts to the point (especially if you have leverage). But this is Western cultural expectations for customer service, and you don’t have leverage.

  • 2024 2023 '22 '21 '20 '19 '18

    side-steps the arguing and ranting and raving about dice and whatnot

    @JuliusBorisovBeamdog If you want a good reference point for the “Stabilized Dice” feature you’re planning on implementing I’d recommend looking into the “Low Luck” (“LL” for short) house rule that this community has implemented over the years. In a nutshell, it works in the following way:

    Each round, do the following:

    1. Add up the Combat Value for all units in a fight on each side (ex. If I attack with 2 INF/1 ART/1 TANK against 4 INF, then the attacker’s “Combat Value” is 8 (1 (the unpaired INF) + 2 (the paired INF) + 2 (the ART) + 3 (the TANK) = 8 ) and the defender’s “Combat Value” is also 8 (2 (the INFs) * 4 = 8).

    2. Divide the “Combat Value” of each side by 6 and note the remainder (Attacker would be 8/6 = 1 Remainder 2, Defender would be 6/6 = 1 Remainder 0).

    3. The number you got when dividing the Combat Value by 6 is how many hits you score as a baseline.

    4. For the remainder, roll a D6 and compare it to the remainder. If you rolled less than the remainder, you get one extra hit on top of the value you got in step “#3” above.

    5. Both sides remove casualties, attack has the option to retreat (just like in regular A&A).

    So basically, each side can get a rough estimate going in of exactly how a battle will play out. This makes the game more chess-like than normal A&A (where big swingy battles can single-handedly decide the outcome of the game), which has its own perks/flaws (the game’s a lot more predictable this way, for better or for worse).

    I’d hesitate on having any mode with this setting replace the core “ranked” ladder though, as it’d be a good way to get purists mad. However, a separate ladder for low-luck may appeal to people who are upset by the dice (not naming any names, but you’ve been putting up with us long enough to get the idea).

    Thanks as always for popping your head in here and taking the abuse you take. I don’t envy you.

    EDIT: Minor cleanup of post structure.

  • '22

    Yeah, low luck is really tried and true. It’s amazing to me how bothered people get with “the dice” when they’re behaving exactly as defined. It’s like you have to design to human perceptions of what fair and random should be rather than true dice. Reminds me of the music shuffle button, which can’t be a fully randomized selection or people would complain about hearing the same song in quick succession.


  • @Boston_NWO I mean I get mad about getting diced but I just walk away and cool off rather than throw a fit.

  • '22

    @DoManMacgee My intent is not to accuse you. I’ve been engaged with many players the past two seasons and achieved a solid rank. Complaints about the dice doing something out of the ordinary, and almost always harming the poster’s game position, abound.

    Yet if you look in aggregate, it’s a very consistent cohort of players who are at the top. We have had two major tournaments and the final 4 players in each are among the top 10-20 that I know of. I personally achieved a win record above 90% both seasons with over 40 games played. The variance in the dice are a factor in game outcomes, but player skill is the dominant factor on who wins.


  • @DoManMacgee said in Season 3 Launch: Patch Notes + Development Letter:

    I’d hesitate on having any mode with this setting replace the core “ranked” ladder though,

    “our development team is working on a “Stabilized Dice” option for the game.”

    OPTION.

    @DoManMacgee said in Season 3 Launch: Patch Notes + Development Letter:

    side-steps the arguing and ranting and raving about dice and whatnot

    Cute how you’re above it all. Well, you don’t have to get YOUR precious little hands dirty. Just leave that to ol’ aardvark.

    @DoManMacgee said in Season 3 Launch: Patch Notes + Development Letter:

    Thanks as always for popping your head in here and taking the abuse you take. I don’t envy you.

    you’re welco-oh, wait, that wasn’t to me was it.

    Wrap your head around this. I hit details up as much as I can, I don’t shirk. You can say I go on. You can say I’m outspoken. But just try to say I didn’t try to substantiate anything I said. If it’s called into question, or even if action isn’t taken, I dig in. I put in the time.

    And what of others? They say they’re above the discussion! If they don’t personally think there’s an issue - even if there MAY be an issue - there IS no issue. Then some say there’s “ranting and raving” or “text walls” or pejoratives. It’s very unpleasant and insulting - and it’s MEANT to be unpleasant and insulting. That’s the PURPOSE.

    Contrast to me. Oh yeah, I’m not very nice. But that’s a byproduct of natural response to seeing months of inaction, or to my belaboring the point to people that just don’t get it - and my resulting frustration (even if it IS just because I’m bad at explaining, I’m still frustrated that others don’t get it.)

    Sure, I’m not the greatest. But I’m hardly the worst of the population by far.


  • @Boston_NWO said in Season 3 Launch: Patch Notes + Development Letter:

    if you look in aggregate, it’s a very consistent cohort of players who are at the top . . . The variance in the dice are a factor in game outcomes, but player skill is the dominant factor on who wins.

    Suppose I re-interpret your statement. Would it be fair to say your claim is the same players consistently top the ladder, that you argue those players possess skill, and that consistent performance indicates skill must be the dominant factor determining rank?

    You know me. I pick things apart. So if you agree here but disagree later - no problem. We’ll just say I didn’t convey the case properly.

    But if you DO agree - there’s a few big gaps.

    First - I don’t think rank is necessarily an accurate reflection of skill. I don’t mean to discount your 90% winrate. Sure, you are very skilled, well done and all. BUT consider. Rank degrades. Ranks measure wins and losses over time. Wins and losses can result from things other than simple skill at the game.

    Such as? The 24 hour clock. Depending on your work, family, and other commitments you may not be able to make a particular check-in. And if you don’t check-in, you can lose not just one game - but all ongoing games.

    Or wealth. Typically I have access to computers on different networks at different locations, and can travel between those locations at will. If my internet goes out at one location - I can just go to another location to do what I want to do.

    Or time. If you don’t play a certain number of games, you just won’t get your rank up that high. But you can’t play those games if you just can’t make the time. You could be skilled as anyone, but if you just don’t play a lot of games, that skill won’t be reflected in your rank.

    Or the rank decay system. Now, it’s not enough that a player plays games to get rank - they have to play games at the end of the season to minimize rank decay. That means control over one’s schedule.

    Let’s assume the top players are skilled. All right. But the fact the top-ranked players doesn’t change much doesn’t mean dice results don’t matter. It may just as well mean that these other factors - clock, wealth, overall time, control over schedule - are also contributing factors, and those factors narrow the pool of players that may conceivably take the top spots.

    Sure, dice effects would widen the pool. But other factors can narrow the pool.

    The size of the population needs to be considered as well. If you’re consistently top ten out of a playerbase of a few hundred thousand, that’s different to being top ten out of a playerbase of a thousand.

    So out of a population of a thousand - suppose we’re not asking who the most skilled players are. Suppose we ask of the reasonably skilled players, who has the wealth or connections to be able to travel at will to multiple locations and so avoid missing checkins due to network outages, a good deal of time on their hands so can play a great number of games necessary to achieving a high rank, control over their daily schedule so they can avoid missing checkins as a matter of routine, and control over their schedule as a whole so they can schedule more time to play more games at the end of a season? Might it be . . . . ten or twenty players?

    Looking at things that way - sure. We can agree skill is a factor in game outcomes. But we can’t necessarily say that the same players topping the ranks each season is a result of skill outweighing dice, as there are other factors involved.

    I could have made this post FAR shorter. But come on, do we really need a “git gud at logical arguments” post in addition to “git gud at dice” posts? Nah. And you know ol’ aardvark. I dunno about RAVING, but I do like me a good rant.

    Anyways, congratulations on your 90% winrate and ranked placements in both seasons so far.

  • '22

    A consistent cohort of players are consistently winning and reaching high ranks, which makes it doubtful that the game outcomes are primarily driven by the volatility of dice outcomes. You’re posit skill, wealth, internet connection speed, or time commitment. I’m making a focused statement about dice variance with respect to likelihood of winning.

  • Founder TripleA Admin

    Folks, when you create tension and conflict that requires my intervention to figure out the whole thing, it upsets me. I don’t have this to be a babysitter. It’s also detrimental to the community. When a new users comes along and sees a forum with such animosity, they don’t stick around.

    Are there good aspects to this conversation? Yes. Are there parts where people are being jerks? Yes. Do I have time and bandwidth to sort it out? No. Instead of reading through this mess, should I be working on improving the site or playing some A&A myself? Yes.

    Maybe it’s not all that bad but holy crap, I have to set aside an hour of reading to figure it out? :angry:

  • Founder TripleA Admin

    Also, not naming names but there’s blame to be assigned all around here. Some folks are coming off as big jerks, some as small jerks, some as know-it-all jerks, some as being confusing in general (which can lead to jerk-ish reactions).

  • 2024 2023 '22 '21 '20 '19 '18

    @aardvarkpepper I replied to you but deleted it because I didn’t see @djensen 's post asking everyone to knock it off and agreed with it. There’s no point in getting into a flamewar over dice RNG.

    All I will say is that, if you’re that burnt out by bad dice, just take a break from the game dude.

Suggested Topics

  • 8
  • 1
  • 9
  • 2
  • 4
  • 3
  • 5
  • 26
Axis & Allies Boardgaming Custom Painted Miniatures

28

Online

17.0k

Users

39.3k

Topics

1.7m

Posts