OOTP Brewers: Anatomy of a Meltdown

For the most part, our communally managed Out of the Park Brewers are like any other baseball team — minus the fact that they don’t exist in real life. In at least one way, however, these Brewers are unlike any real major league team. Over the weekend, they lost in a fashion that no team has ever done. Eno Sarris’s Mets trampled our Brewers 26-1, a score that hasn’t happened since 1904, and likely has never happened at all in the majors. Losing 26-1 is the kind of game you have to see to believe. We can’t see this one, though, so you’ll merely have to accept my narration, because such a tremendous beatdown is worth talking about.

How could a team implode so completely? Perhaps unsurprisingly, the team came into this Saturday’s confrontation nursing some injuries. Josh Hader was battling shoulder discomfort that made him unavailable for a few days. The previous day featured an 11-inning loss to the Mets, which left several bullpen arms tired. That brings up our first recipe for disaster: a short start.

Freddy Peralta didn’t have it on Saturday. He started off with a walk, and by the time Brandon Nimmo had finished his elaborate sprinting-and-pointing walk celebration, Pete Alonso launched a first-pitch home run. Peralta managed to escape the inning without allowing any further runs, but not convincingly so; his five first pitches resulted in three balls and two balls in play (there was a double play).

The game still looked normal in the bottom of the first. Avisaíl García drew a walk and Keston Hiura added a single, though the team couldn’t capitalize. Still, this isn’t how 26-1 games look after one inning. Heck, Steven Matz threw more pitches than Peralta in the first frame.

The second looked better for Peralta. He got a 1-2-3 inning with two groundouts and a strikeout. He even managed a first pitch strike. The batters didn’t help the cause in their half, going down in order, but 2-0 games after two innings are commonplace, and Matz had still thrown more pitches than Peralta.

From here, the wheels fell off. Matz popped out, Nimmo struck out — so far so good. But then Peralta was toast. He walked Alonso on four pitches, served up a meatball that Michael Conforto mashed 388 feet for a homer (with a 110 mph exit velocity — there sure are a lot of stats in OOTP), gave up a groundball single, and then an RBI double off the wall. Another single was all the manager needed to see; he pulled Peralta after 2.2 innings.

A sub-three-inning start after an extra innings game isn’t ideal, but it doesn’t guarantee a blowout. It didn’t help that Devin Williams surrendered a smoked double off the left field wall that ballooned the lead to 7-0, but Williams recovered to strike out Rivera, and the Brewers even scratched back a run on a David Freitas solo shot.

The next thing that needs to happen for such a huge score gap is for the first few relievers into the game to flame out. With such a short start, that was already a worry for the Brew Crew — and things got worse in the fourth, despite Williams striking out the side. Striking out the side is great, of course, a solid way to prevent blowouts. But it took him 17 pitches to do so, bringing him to 24 on the game, enough that he probably couldn’t cover another entire inning.

The team still gave Williams a chance, a reasonable move given their pitching shortage. But he walked Conforto on five pitches to start the fifth, and that was enough — J.P. Feyereisen took the mound in relief. Feyereisen used 10 pitches to walk J.D. Davis and strike out Jeff McNeil, showing off two true outcomes in quick fashion.

After a few lying outcomes (both line drive singles), Feyereisen bounced back to strike out Rivera — now 0-3 with three strikeouts in a game his team was trailing 9-1. At this point, Feyereisen had thrown 19 pitches and gotten two outs. The bullpen might get further taxed, but if he could slam the door on this inning, a 9-1 game with half of the game in the books is a bad loss but nothing historic.

As you’ll notice from my unsubtle foreshadowing, that didn’t happen. The second true outcome came up again — Feyereisen snatched defeat from the jaws of victory by throwing Matz four straight balls on an 0-2 count. 26 pitches, bases loaded; it might be time for reinforcements. Before they could arrive, however, Brandon Nimmo set the roof on fire with a grand slam, completing Feyereisen’s true outcome trifecta. It was 13-1 Mets, and David Phelps was in the game.

On the batting side, the offense was hardly putting up a fight. The fifth was another 1-2-3 affair, with Christian Yelich falling to 0-3 on the day. Matz was hardly efficient, throwing 97 pitches in these five innings, but he did his job. The Brewers’ motley crew of pitchers had, up to this point, beaten Matz in the strikeout game, with nine to their name to his six. But they also surrendered five walks and three home runs to go with 10 hits.

Going from losing by 12 to losing by 25 still seemed unlikely. It wasn’t Phelps’s fault — he gave up a run in the sixth, but escaped further damage. There was only one problem — he threw 28 pitches to do it, which meant it was time for a new reliever.

Let’s take a pause here to consider the state of the bullpen:

Remaining Relievers
Pitcher Pitches Thrown Friday Pitches Thrown Thursday Total
Brent Suter 9 4 13
Scott Barlow 14 7 21
Ray Black 0 32 32
Tim Hill 16 0 16

The next key to a meltdown: more outs than relievers. The team sent Black out to start the seventh, and he was predictably wild: two strikeouts, a walk, and a home run in a two-run inning that took 23 pitches. That made 55 pitches in three days; he wasn’t coming back out for the eighth. The offense, meanwhile, sent those pitchers right back onto the field, succumbing to José Ureña in only six pitches.

Two innings, three pitchers. The team went with Tim Hill; two of the next four batters were lefties, and Hill is a lefty specialist. Whoops — Hill started off the inning by allowing three singles, and a fielding error by Justin Smoak plated a run. Four batters, four baserunners, and 19 pitches; Hill’s day was done.

Brent Suter came in to face Rivera, and at this point, Rivera was due. In a 17-1 game, he was 0-3 with a walk and three strikeouts. There’s really no other way to put it; the game took pity on him. Rivera smashed a grounder into left for an RBI, finally getting on the board. Now every lineup spot except the pitcher had a hit, and it was 18-1.

The fun didn’t stop there, and at this point, OOTP really poured on the gas. Ureña got the pitcher’s spot in the hit column with a line drive single (sure), bringing the count to 18-1. Brandon Nimmo followed with a single of his own, making it 19-1. Suter and Hill faced seven batters and gave up six singles. The seventh baserunner reached on error. In other words, uh oh.

The most important step of a truly comical score: the position player pitching. It was well past time for that to happen here; the only reason it hadn’t yet was because the Brewers were likely hoping to get to the ninth before deploying someone. But they had no choice — Ben Gamel took the mound to hopefully absorb a few outs.

One of the delightful things about position players pitching in OOTP is that they give them stats. Not good stats, of course, but stats. This is my scout’s estimation of Max Scherzer:

Now, compare that with Gamel:

Delightful! I especially love that he has 25 movement; everything else is bottom-of-the-scale, but his pitches have a little wiggle to them. That wiggle betrayed him to the tune of walks to Alonso and Conforto, but it also led to a four-pitch strikeout of Davis. McNeil followed Davis with an RBI groundout; 23-1, Mets.

This inning was already silly. It featured nine straight Mets reaching base without a single extra-base hit. Ureña and René Rivera both clobbered the ball. But it still had one capper. With two outs, Amed Rosario came up, and hit the silliest home run I’ve ever heard of.

The way home runs work, basically, is that the batter hits the ball really hard in the air. There were 6,776 home runs in the majors last year, and 5,401 of them were hit 100 mph or harder. How softly do you think you could hit the ball and still generate a homer? 95 miles per hour?

90 miles per hour?

86 miles per hour?

That Eugenio Suárez home run was one of three homers hit with an exit velocity below 87 mph last season. The other two were inside-the-parkers. And it barely carried past the left field fence, where you can see the 328 foot sign.

Rosario, naturally, hit an 86.3 mph homer off of Gamel. It would have been the slowest homer in 2019, edging out the Suárez dinger. Of course, Rosario’s traveled 380 feet to left center. It was a no doubter that came off the bat like a can of corn. It’s all auto-generated, but that’s basically an error — a result that can’t happen. Of course it would happen here, in a 23-1 game.

I’ve already spoiled the final score, so you know there were no further runs. But for an inning with no runs, the ninth was about as goofy as you could hope for. Brock Holt came in to relieve Gamel (who had thrown 27 pitches in the eighth and probably needed ice badly) and promptly got Rivera looking.

Rivera’s strikeout gave him a golden sombrero in a game where his team scored 26 runs. This isn’t unprecedented; Jason Botts put up a fabulous 3-7, four strikeout line in a 30-3 drubbing of the Orioles in 2007, for example. But Rivera’s pitiful line looks out of place given the final score.

After Holt’s strikeout, the Mets pinch hit for Ureña with a 25-run lead. I’m not an unwritten rules scientist, but this one seems pretty clearly bush league to me. In any case, it backfired; Wilson Ramos grounded out, leaving Holt only one out away from ending this charade. But one out is where Holt got stuck. He walked Nimmo, walked Alonso on five pitches, and then lost a seven-pitch battle to Conforto to issue another free pass. Scott Barlow, who surely thought he wouldn’t be pitching this night after two position players pitched with the team down 25 runs, had to come on and strike out Davis to end the inning. It was the Mets’ 15th strikeout of the game.

The 2019 Phillies currently hold a weird record; they scored the most runs in a game where they also struck out 15 or more times, a record they achieved in a 15-7 victory over the Braves last July. The Mets leapfrogged them by 11 runs; that record, dumb and specific as it is, would almost certainly never be topped if this was a real game.

The offense didn’t really need to come out for the bottom of the ninth — they went down in order, which is probably what they were secretly hoping for. The game was in the books, and the Brewers’ pitching statistics make for delightful viewing:

Final Pitching Lines
Pitcher IP H R ER BB K HR
Freddy Peralta 2.2 6 7 7 2 3 2
Devin Williams 1.1 1 1 1 1 4 0
J.P. Feyereisen 0.2 3 5 5 2 2 1
David Phelps 1.1 1 1 1 1 1 0
Ray Black 1 1 2 2 1 2 1
Tim Hill 0 3 4 3 0 0 0
Brent Suter 0 3 3 2 0 0 0
Ben Gamel 1 1 3 0 2 1 1
Brock Holt 0.2 0 0 0 3 1 0
Scott Barlow 0.1 0 0 0 0 1 0

Delightful if you’re a Mets fan, anyway. For the Brewers, it was a total wipeout: they used their entire bullpen, including four pitchers who already had high workloads. They used two position players. Their offense did nothing.

Naturally, the Brewers won 6-2 the next day. Eric Lauer pitched 5 2/3 effective innings, and a parade of five relievers chipped in to end the game. Ray Black threw another 20 pitches, and will probably reflexively hate Mets jerseys for the rest of his life. Tim Hill was unceremoniously sent to the minors because the team badly needs fresh relief arms. And each game counted once.

What does this mean for the future? Presumably nothing. Aside from some short-term workload issues, there’s almost no long-term downside to losing so badly. Egos were bruised. There probably wasn’t much banter in the locker room. But the Mets came to town to play four, and our heroes escaped with two victories. Did they get outscored by 19 runs for the series? Yep! Have they been outscored by an absolutely comical 42 runs on the way to a 7-9 start? Definitely!

But even in a real season, in a few months we’d forget about a game like this. The Brewers might be sitting at 78-73, scrapping for a spot in the playoffs, with a run differential below zero. We’d say, as we often do in such situations, that they’ve been getting lucky, or that they had excellent bullpen management. But really, they just got unlucky, in a way that showed up in run differential. A 26-1 loss isn’t any different, really, than a 16-1 loss. A befuddled Tim Hill here, an ineffective Ben Gamel there, and things can get out of hand. That’s baseball for you — real, or otherwise.

This article has been updated to correct Ben Gamel, Brock Holt, and Scott Barlow’s pitching lines.





Ben is a writer at FanGraphs. He can be found on Twitter @_Ben_Clemens.

11 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Stovokor
4 years ago

Would Pythagorean W-L records be more accurate if we removed, or placed a cap on, lopsided games such as these? Eg, maximum run differential in any game is capped somewhere between 5-10 runs. It feels like they add noise rather than predictive signal.

One element is that losing 1 outlier game by 25 runs isn’t the same as being outscored by 5 runs in 5 games.

Another is that teams sometimes concede a game with little concern for the final score in order to maximize win % in future games (by preserving their bullpen or otherwise).

Philmember
4 years ago
Reply to  Stovokor

Interesting idea – is losing or winning blowouts a ‘skill’?

Similarly, should there be a cap on FIP – if you strike out the side with no walks or homers your FIP is negative. Really it should be zero – so perhaos there should be an lower limit of 0 FIP per inning. Granted, this would make the calculation a lot harder, and would change the constant you have to add on, but would it be a better predictor?

cjj8vfmember
4 years ago
Reply to  Stovokor

I think the only way this works is if you remove or otherwise discount runs given up by position players pitching, and that wouldn’t make much difference across an entire season – maybe a single win in either direction. Otherwise, you have to capture the relief staff’s performance broadly somehow, and they *did* give up a ton of runs despite ostensibly trying to prevent the other team from scoring. Likewise, I don’t think you can discount the Mets in this example just because their runs were scored in a blowout – they still came against Major League talent.

I think it’s just a small potential bug in how Pythag % works caused by extreme results, and can be pretty easily explained without too many inherent changes. If it says the Mets ought to have 90 wins or so at the end of the year and they end up with 85, a quick look at the BRef Win-Loss bar chart for the team’s season will pretty much tell you what happened.

As an aside, I hate the way OOTP handles position players pitching. I know it’s just software simulating outcomes based on player attributes, but I really wish the AI made batters try less hard when up 10+ against PPP’s, and I wish it would ensure the PPP’s would actually just throw meatballs instead of walking 3+ guys an inning and getting hurt because they’re actually (fake) throwing at max effort. I know PPP’s aren’t good in real life (basically 8.5 ERA and 8.3 FIP) but they are beyond terrible in the game and barely a viable way to get just a few outs without burning more arms.

dukewinslowmember
4 years ago
Reply to  Stovokor

log transform the scores to reduce the impact of outliers would be the first thing to do without trimming any data.