MILWAUKEE -- Ben Gordon said Rodney Stuckey can get anywhere he wants on the court. Stuckey just wanted to make sure the Bucks weren't getting to the basket.
The burly point guard scored all nine of the Pistons' points over the final 4:21 and finished with 16 as Detroit held on to beat Milwaukee 95-93 on Friday night in the final preseason game for both teams.
"He's just a bulldog, plain and simple," Gordon said. "Rodney's probably one of the strongest point guards in the NBA, if not the strongest."
Still, Stuckey wasn't happy about the defensive effort in a 122-114 loss to Minnesota on Thursday, Detroit's fourth straight, and helped shut down Bucks rookie Brandon Jennings, who finished 2 of 9 from the field and had six points.
"We can't be letting teams like Minnesota put 122 points on us. We're not going to let that happen again," Stuckey said. "No more 122-point games."
Gordon added 15 of his 19 points after halftime, giving Detroit exactly the type of performance the Pistons hoped for after signing him to a $55 million, 5-year contract earlier this summer.
"We can fight back, that's definitely encouraging," Gordon said. "We're not throwing our hands up and celebrating because we won a road game, but it's definitely good mentally just building some momentum going into the season."
Detroit (4-4) had an eight-point lead midway through the fourth quarter, but Milwaukee (3-5) took a 90-89 lead on a free throw by Luc Richard Mbah a Moute.
Stuckey took over, making a driving basket in the lane, hitting a 13-footer and adding two free throws with 7.7 seconds to play.
"Obviously my first option is to look at my wings, my bigs, but if the shot clock's running down, I've got to create something," Stuckey said.
Will Bynum had 13 points, Richard Hamilton added 12 and Ben Wallace, who returned to Detroit after three years, had 14 rebounds. Detroit shot 65 percent from the field in the second half.
"I think we set the tone defensively, and that all started with the play of Ben Wallace," Pistons coach John Kuester said. "He was a bear defensively."
Michael Redd scored 23 points in a preseason-high 37 minutes for the Bucks as he returns from two torn ligaments in his left knee.
"I felt good, I felt sharp," Redd said.
The Bucks also got another strong performance from Andrew Bogut, who had 10 points and nine rebounds in 32 minutes. The former overall No. 1 pick missed 43 games last season, including the final 31 with a stress fracture in his lower back.
"Those are good signs, both of those guys being healthy, for sure," Milwaukee coach Scott Skiles said.
Ersan Ilyasova scored 16 points and Carlos Delfino added 11 for the Bucks, who had a 12-point lead midway through the third quarter before the Pistons whittled it to 66-65 to start the fourth. Gordon hit two 3-pointers to start the quarter to erase it.
The Bucks had plenty of chances down the stretch, but Ilyasova missed a 3-pointer with 1:10 to go, Jennings missed a 10-footer and Roko Ukic missed a layup with 8 seconds left.
Detroit returns on Oct. 31 for Milwaukee's home opener and has had success against the Bucks everywhere recently, going 9-2 against them since 2007.
"It was good being back here in Milwaukee," said Pistons forward Charlie Villanueva, who left the Bucks and signed a 5-year, $35 million contract in Detroit. "I'm definitely looking forward to October 31, it's a date circled on my calendar."
Detroit opens its season at Memphis on Wednesday. ... Milwaukee opens its season at Philadelphia on Friday. ... X-rays on Detroit C Kwame Brown (left hand) were negative. ... Ilyasova (bruised cheekbone) wore a mask as a precaution after taking an inadvertent elbow in practice. X-rays were negative. ... Pistons F Tayshaun Prince (right toe) did not play, but is expected to be ready in the opener.