Human Programmers Make Mistakes, Customers Should Not be Unwilling Beta Testers

Recently, Stern Pinball came under fire because an extraordinary player, Eric Stone, from Florida registered a 4+ trillion game on their newest Jaws pinball machine. There was a bug in the code that allowed ridiculous multiplier stacking generating bonus scores that far exceeded the intended design.

photo credit: Rex Sparklin / FB group

Stone, through playing, found the situation and exploited it — live on stream. This resulted in Florida, where Stone was playing, having a huge bump in their team score in Stern’s Insider Connected March Machine Mania event. This game another type of negative definition to “machine mania” and, of course, was not the desired impact.

Stern fixed the code, quickly, but then went under fire from removing Stone’s epic score, which caused even more negative press. If they had left his legitimate, albeit bugged, score in tact, it would encourage other players to find and exploit loopholes. As much as Eric Stone deserved to have his score retained, one can see the other side from Stern about removing it for the fairness of all the other players, since after the code update, they wouldn’t be able to score as highly for their teams.

Kevin Olmezer wonders, as I’m sure others did, what happened to Stone’s 4.1+ trillion score.

With respect, Kevin, I think you might be reading more into Stern’s removal of Stone’s score than they intended. They weren’t worried so much about egg on their face, I don’t think, rather it seemed to me they wanted to fix the bug and make it so that their event was not tainted by exploited scores.

What is a “bug” in code parlance? It’s a mistake. Just ask the band Men At Work.

Here, let’s look up the dictionary definition, just to check myself:

Should there be a function that checks every bonus added to a score to make sure it doesn’t exceed some ceiling? Absolutely. I’ve done programming, Have written many lines of code, created games and programs.

Mistakes happen, and this is a fairly basic one, unfortunately, that should not have slipped by with some amount of testing and oversight. In 2024, we the customers seem to be beta testers in programming, which is unacceptable for machines that cost many thousands of dollars.

It’s my understanding Elizabeth Gieske might have done the programming (?) for Stern. Interestingly, she’s a high IFPA ranked player just like Eric Stone. If Ms. Gieske and/or her team were responsible for the bug, then this is a learning lesson. Am hoping the team learns from this mistake and it will be much less likely to happen again. Programmers should be allowed some amount of time to learn from mistakes, because we all make them!

Lyman Sheats, R.I.P, did Batman ’66 code and there are ceiling scoring issues there, from what I understand, so even more experienced programmers make mistakes, too.

Programmers are human beings and we are imperfect. No stones at glass houses here.

That all said, the bigger question Kevin might be asking in his response to me pictured above is; should Stern be releasing beta code with pinball machines that costs multiple thousands of dollars?

No.

I suppose there is some caveat emptor here: buyer’s beware. We know Stern Pinball is doing this. They release brand new machines that aren’t fully baked either mechanically and with code updates that aren’t mature. They have a code roadmap to get to 1.0, which they consider to be “stable” complete code. Jaws was first released with code that wasn’t compete.

So, what does Stern do about events using machine with beta code? Should they have excluded Jaws machine scores from the March Machine Mania promotion? Probably so. Or at least stated very clearly somewhere in BIG GIGANTIC TEXT that if any scores were found to be bug exploits, the scores would be removed/edited at Stern Pinball’s sole discretion.

In fairness, I think that was the spirit of the event.

Kevin replied again, restating his concern:

Kevin isn’t wrong in his perspective. Again, Stern was in a no-win situation that really only was solved by not releasing machines with buggy code.

In week #2, Georgia had an unusual surge in scoring, showing that players are continuing to exploit flaws in scoring routines inside Stern Pinball machines:

As seen from week #1 final scoring, the winning average score was 36 billion, not six times that, so clearly there is something afoul here. How does the average score go up six times in one state? It’s the result of one or more scores in the trillions, pushing the overall average up, just as what happened with Eric Stone in week #1.

Georgia finished 4th place in week #1 with 26 billion, but we’re supposed to believe in week #2 they improved their state average to nearly 200 billion? Of course not.

Turns out another skilled player Nick Kelly scored in the trillions on Batman ’66, which I’ve heard multiple times has unpatched score multiplier bug coding. I realize this is Sheats code and he passed, but somebody at Stern could have gone in and fixed these score routines and removed these ridiculous stacked multipliers. No single shot should yield hundreds of billions of points except maybe one that beats the most difficult of wizard modes, it shouldn’t be some stacked upon stacked multiplier shot, regardless if it takes a super skilled player to pull off.

The worst part of these kinds of scoring issues is they make playing the game less desirable. I like Batman ’66 but knowing that it has this kind of unresolved code makes me not want to play it until this is fixed or Stern comes out and says, “this is final, stable code and we want these (ridiculous) stacked multiplier shots to be in the game.” If that’s indeed the case, let those multi-trillion scores run rampant!

(BTW, no shade is intended at either Eric Stone or Nick Kelly or any other players capable of exploiting this code — if it’s in the game and they are able to pull off the shots as normal part of their skilled play — and they are — good for them).

This takes us back to releasing machines that cost thousands of dollars not having 1.0 stable, completed code? Why is this happening? It should be the norm and until/if it is, then there will be more Eric Stone type scoring debacles. IE. Georgia in week #2 ….

Then again, when it comes to pinball, a game with scores that can be manipulated already by someone taking off the glass, there is already an asterisk in the game. On location and tournament play where judges are present and/or live streamed scores should provide independent verification that scores were not manipulated unfairly, but it’s a game that when enough people are playing and very high scores are submitted to events, there will always be people that don’t believe the scores are genuine. Not sure what Stern can do about that from a technical standpoint, here, so guess they have that hill to die on.

What do you think Stern Pinball should do? I like that they are doing events. Really, I do. It’s getting players excited about pinball. Insider Connected by and large is a positive thing. I do wish, however, that they’d release their machines with 1.0 code new to buy already finished and not spend 1-2 years after releasing them using customers, us, as unwilling beta testers.

UPDATE 3/16/2024 @ 7:44am PST: This is where the leaderboards for week #2 sit at the moment. It appears like Stern is just going to let the Batman ’66 scores stand for the final results that end at midnight tonight.

Week 3 starts at 12:00:01 3/17/24.

Spread the love

Related Post

One thought on “Human Programmers Make Mistakes, Customers Should Not be Unwilling Beta Testers”
  1. Todd I understand your passion about this mistake and don’t disagree with you. From Stern’s viewpoint thou, since they’re offering tournament entry for free, they have little to no incentive to spend much time squashing bugs. It’s the way of the gaming world, all the companies have customers “beta Test” their games. I’d either opt out and not buy their games or wait a year until the major bugs are found and removed. Your Mileage may vary.

Leave a Reply

Your email address will not be published. Required fields are marked *