The Washington Nationals hammered the Kansas City Royals for 11 runs but needed to survive a ninth-inning rally to take an 11-10 triumph in the opener of a three-game series at Kauffman Stadium.

The Nationals were up 11-7 entering the bottom of the ninth, but Drew Storen walked Alex Gordon and allowed a double to right-center field by Eric Hosmer before being replaced by Rafael Soriano.

Salvador Perez was next to bat and grounded out to score Gordon. Billy Butler followed with a single and pinch-runner Jarrod Dyson stole second. Justin Maxwell delivered a two-RBI base hit up the middle to cut the deficit to one.

However, Bryce Harper made an excellent diving catch on Emilio Bonifacio's fly ball to right, corkscrewing against the ground, to get the second out. Soriano finished the game and notched his 33rd save by getting Alcides Escobar to fly out to left.

Washington reliever Tanner Roark (4-0) pitched 4 2/3 innings of one-hit ball to pick up the win.

"He had really good stuff tonight," said Washington manager Davey Johnson about Roark. "He's a major league pitcher and he made it look easy out there tonight."

Harper, one of six Nationals players to drive in run, led the barrage with three RBI. Jayson Werth had a two-run home run while Denard Span, Ryan Zimmerman, Tyler Moore and Anthony Rendon drove in a run apiece for Washington, which saw every starting position player cross home plate.

The Nationals have won four straight and are sitting at .500 for the first time since July 19.

Hosmer and Maxwell had three RBI apiece, while Gordon went 3-for-4 with an RBI and four runs scored for the Royals, who have lost six straight games.

The Nationals were in an early hole, but battered Royals starter Bruce Chen (5-2) for seven runs over the third and fourth innings. In the third, Rendon knocked a two-out single to left-center field and scored on Span's triple to center.

"I felt good, you know, I had my pitches," said Chen. "But I can't say anything much after that. We had six runs and I shouldn't have let that happen."

An inning later, Washington erupted for seven runs. With one out and the bases loaded, Rendon hit a sacrifice fly, scoring Wilson Ramos. Span was walked, reloading the bases. Chen then walked Zimmerman, bringing Adam LaRoche home.

Harper hit a bases-clearing double and Chen was replaced by Louis Coleman. After Harper stole second, Werth smashed a two-run shot to center to give Washington an 8-6 lead.

Perez delivered an RBI single to center in the home half to bring Kansas City within one, but Washington extended its lead even further in the seventh.

With the bases loaded, Moore hit an RBI single to left. Rendon followed with a fielder's choice towards second baseman Chris Getz, who threw the ball away trying to make a play at home, allowing Ramos and LaRoche to score.

The Royals scored three runs in each of the first two innings. Gordon started the first with a double up the middle, followed by Hosmer's two-run homer. Three batters later, Maxwell hit a solo shot to left-center.

In the second, Jamey Carroll and Gordon hit back-to-back doubles, the latter of which drove in a run. Hosmer followed with an RBI single to center. Perez reached first on an error by Ian Desmond and Butler scored Hosmer with a single to right-center.

Game Notes

Washington starter Gio Gonzalez gave up seven runs -- six earned -- on nine hits and three walks over 3 1/3 innings ... Desmond went 3-for-5 ... Harper recorded his first RBI since August 6 ... Gordon is 8-for-20 with three doubles and five runs scored over his last five games.