BLACKSBURG, Va. — Ryan Willis threw for two touchdowns and ran for another as Virginia Tech beat Old Dominion 31-17 on Saturday.

The Hokies (1-1) avenged a stunning loss to the Monarchs last season, taking a 17-3 first-half lead and responding when Old Dominion pulled within a touchdown in the fourth quarter. Willis, who had four turnovers in a season-opening loss at Boston College, and Deshawn McClease each lost a fumble in the closing minutes, but the defense stiffened to give Virginia Tech just its fourth victory in its last 11 games.

Stone Smartt scored on runs of 3 and 15 yards for the Monarchs (1-1), but was helped off the field after a 2-yard run with 5:31 to play. Willis hit Hezekiah Grimsley with a 9-yard scoring pass in the right corner of the end zone in the second quarter. Grimsley gained control of the ball with his right hand and then pulled it into his body. Willis also hit Phil Patterson from 13 yards out on third-and-6 to restore the Hokies' two-touchdown cushion with 11:56 to play, and he finished a 93-yard drive for a 24-3 lead with a 1-yard run early in the third quarter.

He was replaced by Hendon Hooker after the fumble. Keshawn King also scored on a 4-yard run for the Hokies, who were stunned 49-35 when they played at Old Dominion a year ago.