KANSAS CITY -- It is often said that good pitching stops good hitting and Exhibit A was provided on Tuesday night as Royals ace James Shields brought a robust Rockies' offense to a screeching halt.
A Colorado attack that entered with a .301 team batting average -- 41 points higher than any club in the National League -- was held to five singles and one run as the Royals earned a 5-1 victory at Kauffman Stadium.
It was simply too much Shields on a night when the law of averages kicked in. Colorado had a 57-16 edge on the Royals in homers as the two-game series commenced, but it was the Royals playing long ball for a change with Lorenzo Cain's two-run homer and a solo shot by Salvador Perez jumpstarting the offense.
Shields struck out eight and walked none, and he was in complete command after wiggling out of some trouble in the second and fourth innings. The right-hander exited after throwing 98 pitches through seven innings -- 14 of those during one Carlos Gonzalez at-bat. By contrast, Rockies starter Franklin Morales struggled with his command. He fell behind often, walked four and allowed the two homers that gave Shields all the margin for error he would need.
The Rockies will see the Royals again in mid-August and maybe they'll get another crack at Shields in Coors Field. For now, the Colorado hitters can only tip their caps in the direction of the veteran ace.
"He commanded the plate about as well as you can," Rockies manager Walt Weiss said. "He handcuffed us all night. He threw a lot of changeups and that's pretty much his go-to pitch. He would throw the fastball to the outer part of the plate and then go to the changeup. It has been a good formula for him for awhile."
The Rockies have dropped four of five and might have known it wasn't going to be their night after what happened in the second inning. Colorado opened with singles from Gonzalez (on the 14th pitch of the at-bat) and Nolan Arenado. But Justin Morneau's check swing resulted in a roller right to third baseman Danny Valencia at the bag. Valencia completed the 5-3 double play and Shields had escaped what could have been big trouble.
The Royals received an RBI single by Alcides Escobar in the second before Morneau tied it with an RBI single in the fourth. Then, Cain's two-run homer in the fourth put Kansas City on top to stay.
Morales needed 99 pitches to record 15 outs.
"Franklin was working behind most of the night," Weiss said. "You get in bad counts and it's tough to be successful. He battled, but it was just a tough night."
Morales agreed that the key going forward is to get ahead in the count.
"I missed my spot going for first-pitch strikes," Morales said. "I need to pitch better, man. When I got behind in the count, I got in trouble."
When the Royals went through their pre-series meeting, they quickly noticed the gaudy offensive numbers that Colorado has produced.
"[The numbers] are a little bit intimidating," Royals manager Ned Yost said. "But Shields had everything going today. He had a really good change and breaking ball and spotted his fastball really well."
Shields got a bonus in the sixth inning when he struck out the side. The second strikeout of the inning against Troy Tulowitzki enabled Shields to hit the 1,500 milestone.
Shields tipped his cap to the crowd before continuing to wade through the Colorado hitters.
"He just went after us," catcher Jordan Pacheco said. "That's why he has pitched a long time. He said 'here it is' and he had his stuff tonight."
Because Shields had thrown 118 pitches in his previous start, Yost decided to lift him after seven innings with a 4-1 lead. The Rockies went down in order against Wade Davis in the eighth and managed just one baserunner in the ninth against Aaron Crow.
Just another textbook case when good pitching is able to stop good hitting? Believe it.
Robert Falkoff is a contributor to MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.