KANSAS CITY, Mo. -- Yu Darvish flirted with a perfect game, and Geovany Soto hit the first of five Rangers home runs as they toppled the Royals 8-4 at Kauffman Stadium.
Darvish retired the first 17 Kansas City hitters before Johnny Giavotella took a 3-2 curveball for a ball even though TV replays showed the pitch hitting the outside corner. David Lough followed with a blooper that was just beyond the reach of shortstop Elvis Andrus in what would become a three-run inning.
Josh Hamilton, Adrian Beltre and Nelson Cruz added solo shots, with Beltre and Cruz going back-to-back on consecutive Bruce Chen pitches in the sixth. Michael Young capped the scoring with a two-run homer the pitch after Cruz had been hit by Louis Coleman and the benches had cleared after Cruz took exception to it.
Soto's blast in the second followed a one-out walk to Cruz and a two-out single by David Murphy after he had trailed 0-2 in the count. Soto has homered in three of his five career games against Kansas City.
Sign Up and Save
Get six months of free digital access to the Star-Telegram
The homer, Soto's third with the Rangers, also gave Darvish a 3-0 lead. He attacked the strike zone against the free-swinging Royals, who struck out five times their first time through the order.
He struck out only one of the next nine, and needed three handy defensive plays to stay perfect.
In the fourth, Billy Butler hit a popup to almost straightaway center field that right fielder Cruz raced across to catch as Hamilton appeared to lose the ball in the sun. Two batters later, first baseman Mike Olt dived to his left to get a hard grounder from Alex Gordon.
Adrian Beltre kept the perfect game in tact by snaring a tricky hop on a Lorenzo Cain grounder with two outs in the fifth.
After the no-hitter was lost, Tony Abreau followed with a two-run triple on a ball that Cruz appeared to lose in the sun, and Gordon doubled on a ball that fell for a double after David Murphy dived for it only to have his glove come off.
Darvish (14-9) followed with an eight-pitch seventh inning before being lifted after only 87 pitches. Mike Adams surrendered a run with two outs before Young restored a four-run lead with his fifth homer of the season.
-- Jeff Wilson