There was supposed to be a captivating quarterback duel Sunday night at Arrowhead Stadium between Patrick Mahomes and Aaron Rodgers. It was an matchup circled the moment the NFL scheduled was released, with two improvisational masters and league MVPs set to square off on national television.

Instead, Mahomes was reduced to spectator status, confined to the Kansas City Chiefs’ sideline because of dislocated right kneecap suffered 10 days earlier. His replacement, Matt Moore, filled in capably. But it was Rodgers, predictably, who had the magic touch when it mattered, and his Green Bay Packers improved to 7-1 with a 31-24 win over the Mahomes-less Chiefs.

The first half of the season has gone just as scripted for Rodgers, the Packers and Green Bay’s first-year head coach, Matt LaFleur. Remember all that consternation before the season over whether LaFleur and Rodgers would mesh? How about that talk about differences over Rodgers’s authorization to call audibles at the line of scrimmage?

It seems like ancient history because LaFleur has re-energized a team that had become stagnant under his predecessor, Mike McCarthy. He has the Packers in the thick of the conversation about which team is the NFC’s best.

The Packers were winning early in the season because Rodgers wasn’t having to do it all himself. He didn’t have to cover for Packers deficiencies in other areas, as had been the case so often in the past. The revamped defense was doing its part while Rodgers and the offense figured out LaFleur’s system.

But Rodgers is back to doing his thing. He looks like the Rodgers of old, only in an updated offensive system. He has reentered the league MVP race. He has the Packers leading the NFC North and on the heels of the San Francisco 49ers, the conference’s only unbeaten team.

Rodgers threw three touchdown passes Sunday night, two of them to tailback Aaron Jones. He completed 23 of 33 passes for 305 yards. And he made the big plays when the Packers needed them to prevail in what became an unlikely duel with Moore.

“Matt played really well,” Rodgers told NBC after the game. “They’ve got a lot of weapons. We kind of sputtered there in the second quarter. Luckily [Jones] was a tough matchup for them all night. I didn’t do a whole lot besides get him the ball and let him do his thing.”

Jones had seven catches for 159 yards. He also ran for 67 yards.

“Coach LaFleur just saw something in the film, watching film,” Jones told NBC. “I didn’t know coming in I was gonna be used that much in the pass game. But Coach LaFleur saw something. He took advantage and he did a great job, him and Aaron.”

It was an entertaining, back-and-forth game. The Packers led 14-0 in the first quarter but surrendered 17 straight points in the second quarter to trail at halftime. The game was tied at 24 in the fourth quarter until Jones took a swing pass from Rodgers and turned it into a 67-yard touchdown.

But Rodgers did far more than just get the football and Jones and watch. He threw a spectacular three-yard touchdown pass to another running back, Jamaal Williams, earlier in the fourth quarter. Rodgers released the throw while absorbing a hit, and Williams made a nice catch in the back corner of the end zone.

“I just was trying to keep the play alive, moving to the right,” Rodgers said. “They kind of shifted out of a look that was actually pretty good for us presnap. So [receiving options] one and two weren’t there …. He made a great catch. I threw three tonight, all to running backs. It’s a great thing to have these guys.”

Moore threw for two touchdowns in a 24-for-36, 267-yard passing performance. Chiefs Coach Andy Reid and offensive coordinator Eric Bieniemy found ways to make Moore look good and keep the Green Bay defense off balance.

But it wasn’t quite enough, as the Chiefs’ record dropped to 5-3. Mahomes was back on the practice field last week, participating on a limited basis, to raise hopes that his absence from the lineup will be brief. The Chiefs showed Sunday night that they can be competitive without him. But they can’t be victorious, at least not when Rodgers is on the other side of the field.

In-game updates

4th Quarter

Quick TD for Packers: It’s going back and forth in Kansas City. The Packers have retaken the lead — again — on a 67-yard touchdown pass from Aaron Rodgers to Aaron Jones. Rodgers got the ball quickly to Jones with a swing pass to the left, and Jones did the rest. Jones has two touchdown catches in a six-catch, 151-yard receiving performance. Rodgers has three touchdown passes on the night. (Packers 31, Chiefs 24 with 8:02 left in the 4th quarter)

Chiefs draw even: The Chiefs answered the Packers’ go-ahead touchdown with a tying touchdown. Damien Williams scored on a three-yard run after an illegal-hands-to-the-face penalty on the Packers’ Tramon Williams gave the Chiefs a first down. (Packers 24, Chiefs 24 with 9:01 left in the 4th quarter)

Green Bay retakes lead: The Packers cashed in on a Chiefs’ turnover and retook the lead early in the fourth quarter on a three-yard touchdown pass from Aaron Rodgers to running back Jamaal Williams. Rodgers released the throw while absorbing a hit, and Williams made a nice catch in the back corner of the end zone. The Packers had to move only 27 yards after recovering a third-quarter fumble by Chiefs running back LeSean McCoy. (Packers 24, Chiefs 17 with 13:57 left in the 4th quarter)

3rd Quarter

Packers settle for FG on long drive: The Packers took 8 minutes 33 seconds off the clock with a 15-play drive but had to settle for a 35-yard field goal by kicker Mason Crosby. Green Bay reached the Kansas City 7-yard line but Aaron Rodgers was sacked on a third-down play before the field goal. (Packers 17, Chiefs 17 with 1:31 left in the 3rd quarter)

Halftime

Chiefs are hanging tough: Playing shorthanded is simply part of life in the NFL. Injuries happen and no one feels sorry for you when you must patch things together while key players are hurt. But playing without the reigning league MVP is quite another thing. That’s the unsavory position in which the Chiefs find themselves on this night, with Patrick Mahomes sidelined by a dislocated kneecap. But fill-in quarterback Matt Moore is getting the job done so far and the Chiefs lead the Packers, 17-14, at halftime after scoring 17 straight points in the second quarter to overcome a 14-0 deficit.

Moore threw for 196 yards and two touchdowns on 15-for-23 passing in the first half. He threw touchdown passes to Travis Kelce and rookie Mecole Hardman, and the Chiefs also got a field goal from kicker Harrison Butker. Coach Andy Reid is a brilliant offensive designer and is makings things work with Moore. Aaron Rodgers threw a touchdown pass for the Packers as part of a 13-for-20, 163-yard first half. (Chiefs 17, Packers 14 at halftime)

2nd Quarter

Chiefs take the lead: The Chiefs have scored 17 unanswered points in the second quarter to take the lead on a 28-yard field goal by kicker Harrison Butker. Aaron Rodgers and the Packers have 56 seconds to try to respond before halftime. (Chiefs 17, Packers 14 with 56 seconds left in the 2nd quarter)

K.C. draws even: The Chiefs are without Patrick Mahomes and they fell behind the Packers by two touchdowns in the opening quarter. But they’ve rallied with a pair of second-quarter touchdowns to draw even with Green Bay. Rookie speedster Mecole Hardman scored a 30-yard touchdown on what amounted to an end-around, although Matt Moore was credited with a touchdown pass because he tipped the ball forward to Hardman on the snap. (Packers 14, Chiefs 14 with 6:14 left in the 2nd quarter)

Chiefs get on the board: Fill-in quarterback Matt Moore got the Chiefs going and threw a 29-yard touchdown pass to tight end Travis Kelce to cut Green Bay’s lead in half. That capped an 89-yard drive for the Chiefs. Kelce got wide open in the Packers’ secondary and Moore floated a pass to him for the completion. Moore is certainly no Patrick Mahomes, but he’s doing a decent job so far, with seven completions in 10 passes for 69 yards and a touchdown. (Packers 14, Chiefs 7 with 10:55 left in the 2nd quarter)

1st Quarter

Packers strike again: The Packers pushed their lead to 14-0 on a one-yard touchdown run by Jamaal Williams. The score was set up by a 50-yard completion from Aaron Rodgers to Aaron Jones. That play initially appeared to be a 60-yard touchdown, but Jones’s heel was ruled on a replay review to have been out of bounds at the 10-yard line. Rodgers has thrown for 138 yards and a touchdown on nine-for-11 passing in the opening quarter. It’s too bad that Patrick Mahomes isn’t on the field for the Chiefs to try to match that. (Packers 14, Chiefs 0 with 2:09 left in the 1st quarter)

Chiefs miss FG: It’s not a good start for the Patrick Mahomes-less Kansas City offense. The Chiefs played for field position and, after an exchange of punts, started at the Green Bay 30-yard line following an 18-yard punt return by Mecole Hardman. But the offense, led by fill-in quarterback Matt Moore with Mahomes sidelined by a dislocated right kneecap, went two yards backward and kicker Harrison Butker missed a 50-yard field goal attempt. (Packers 7, Chiefs 0 with 4:11 left in the 1st quarter)

Packers take early lead: Green Bay took the early lead at Arrowhead Stadium with a 10-play touchdown drive on the game’s opening possession. Quarterback Aaron Rodgers connected on six of seven passes for 75 yards on the 74-yard drive (thanks to a couple of penalties). The big play was a third-and-nine completion for 34 yards to wide receiver Jake Kumerow, who made an excellent tumbling catch. Chiefs Coach Andy Reid challenged the call, believing the football hit the turf and seeking to have an incompletion ruled. But the on-field call of a completion was allowed to stand.

The Packers had an apparent touchdown run by tailback Aaron Jones negated by a holding penalty called on offensive tackle David Bakhtiari. No matter. They scored again in two plays, culminating with a four-yard touchdown pass from Rodgers to Jones on a forward flip that amounted to a running play on a sweep. (Packers 7, Chiefs 0 with 8:43 left in the 1st quarter)

Read more: