• Urist@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      17
      ·
      edit-2
      1 year ago

      4294967295 is the limit for an unsigned 32bit integer.

      Her cash ticket said $42,949,672.76.

      This is clearly a machine error. I’ll explain:

      1. It is clearly an integer overflow.
      2. Wins over $1,200 are taxable in the US, meaning a $43 million win would be handled by an employee
      3. Image is a screen shot displaying “Printing cash ticket”, meaning she’s cashing out her remaining balance. Machines can only hold so much cash as credit on them, $2000-$3000. Diagnostic software would give the casino employees the actual balance of the machine (Article lists $2.25, and dinner for her trouble).

      She didn’t “win”, the machine glitched out. All machines have a “maximum payout”, and I’d bet (and win) $43 million far exceeds what the maximum payout is on any machine at this casino.

      Casinos are required by law to pay you your winnings, not for integer overflows. Gambling is stupid, don’t bother.

      • Mr. Satan@monyet.cc
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        The only issue I see is the integer one. I highly doubt that the machine uses integers for handling data. It’s a common practice to use decimals for anything money related. Other than that, there’s no way in hell a casino is paying that amount of money and there must be safe guards that limit how often and how much can be won on a slot machine.

        • Urist@lemmy.blahaj.zone
          link
          fedilink
          arrow-up
          2
          ·
          1 year ago

          You could be right, but I think it’s a 32-unsigned for three reasons:

          1. Slot machines have no need to handle fractions of pennies.

          2. Slot machines operate with “credits” as it’s base unit. 1 credit is the smallest unit. This is most likely a penny slot, so 1 credit = 0.01, and the most it can probably store in memory is probably 4,294,967,295 credits, which is very nearly $43 million (suspiciously the same as the erroneous amount on the screen). Older dollar machines have $1 = 1 credit, and can’t handle pennies at all, and will reject tickets less than a dollar. If you give these older machines, say, $1.69, it will hold $1 as credit and print a ticket for $0.69 because it has no way of handling it.

          3. Diagnostic software handles “credits” as an integer. Coin in, coin out, current credits are all whole numbers. When using the software to inspect a machine, you have to know the denomination of the machine to know how much money is on it (denom times credits = amount).

          This machine looks old as hell from the image in the article. I’m not familiar with this style, though, we don’t have these where I work.

          And you’re right, this is certainly more than the “maximum payout” reported by the makers of the slot machine. The innards of a slot machine aren’t very mysterious from a technical standpoint, they can only produce a finite set of payouts, this isn’t one of them. There isn’t a sort of hard-and-fast stop for how much a machine can pay, more like it can only algorithmically produce a finite set of payouts.