DETROIT — In a baseball era of patience, Salvador Perez embodies the counter-culture. In a time where on-base percentage is revered and plate discipline is worshipped, and at-bats grind on and on, Perez prefers a different method.

“If I see it close, I’m swinging,” Perez will say. “You guys know me: I like to swing.”

The Royals are the least patient team in baseball, and Perez is their free-swinging king. He hacks at pitches in the zone. He reaches for pitches out of it. As Wednesday began, he had swung at 57.3 percent of the pitches he’d seen in 2017. In baseball, only three players had swung at more.

Sometimes, of course, the philosophy can backfire. Perez will swing wildly at a pitch outside the strike zone, and his bat goes flailing, and everyone in the park will wonder why he decided to offer. But then there are moments like Wednesday night at Comerica Park, in an 8-2 victory over the Detroit Tigers.

On a 3-0 count in the top of the fourth inning, Detroit starter Daniel Norris threw a 94 mph fastball. And Perez did not come to the plate to draw a walk. The result was a two-run homer that thudded off a brick facade in deep left-center field, 451 feet from home plate, the 16th blast of Perez’s season.

The titanic shot provided a 3-0 lead. Moments later, Mike Moustakas ripped his 20th homer into the seats in right field, becoming the seventh Royal in franchise history to reach the mark before the All-Star break. The power display offered support to starting pitcher Ian Kennedy, who posted his second quality start in three games and notched his second win of the year.

Kennedy allowed two runs in seven innings, the damage coming on solo homers from Alex Avila and Miguel Cabrera. He lowered his ERA to 4.72.

The Royals (38-38) tied the series at a game apiece entering the finale on Thursday afternoon. The victory kept alive hopes of a sixth straight series win.

To do so, they must beat Detroit’s Michael Fulmer with rookie starter Jakob Junis on the mound. On paper, the matchup does not favor the Royals. Yet their offense revved its engines on Wednesday night, resembling the unit that eviscerated opponents on a West Coast road trip earlier this month.

On a day in which Jorge Soler rejoined the lineup, taking the place of Cheslor Cuthbert, who landed on the 10-day disabled list, shortstop Alcides Escobar recorded three hits and Alex Gordon notched a season-high three RBIs. Soler added an RBI single in the ninth.

Escobar has raised his season average to .221 while extending his hitting streak to nine games. In his last four games, he is nine for 15. The production at the bottom of the order has supplemented consistency at the top.

As Kennedy pitched deep into the night, he received a sensational assist from first baseman Eric Hosmer in the fifth. With two runners on base and two outs, Detroit’s Ian Kinsler hit a grounder toward Moustakas at third. He fielded the ball just in front of the infield grass, uncoiling a long throw that skidded across the infield grass. Hosmer took a step backward behind the first-base bag and snared the baseball, a world-class pick that ended the inning and saved Kennedy’s pitch count.

After seven innings, Kennedy handed the ball to the Royals’ bullpen. The offense tacked on insurance runs in the eighth and ninth.

One of those came via the bat of Perez. In the ninth inning, he roped an RBI double to left-center field. He swung at the first pitch he saw.