Apex Vipers 34, Onyx Hawks 31
Week 2 · Regular season · round 2 · Monday 5 October 2026
| Team | 1 | 2 | 3 | 4 | Final |
|---|---|---|---|---|---|
| ONX Onyx Hawks | 3 | 7 | 7 | 14 | 31 |
| APX Apex Vipers | 7 | 10 | 14 | 3 | 34 |
Game recap
The Apex Vipers beat the Onyx Hawks 34-31 in round 2 of Week 2, and they needed every second to do it. The decisive score was a 57-yard field goal by Kasimir Eriksen with 0:01 left in the fourth quarter.
The Vipers opened the scoring with a 9-yard touchdown pass from Mason Okafor-Reid to Ravi Castellano with 1:17 left in the first quarter. The Vipers led 17-10 at halftime. The fourth quarter brought a 4-yard touchdown run by Darius Eriksen for the Hawks (2:26 left, 31-24); a 1-yard touchdown pass from Wes Hadley to Elan Drummond for the Hawks (0:44 left, 31-31); a 57-yard field goal by Kasimir Eriksen for the Vipers (0:01 left, 34-31).
Player of the game: Ravi Castellano (WR, Vipers), with 7 catches for 88 yards and 2 TD. Elsewhere, Mason Okafor-Reid (Vipers) had 25 of 35 passing for 290 yards, 2 TD, 1 INT; Luther Banks (Vipers) had 23 carries for 117 yards and 1 TD; 2 catches for 24 yards; Wendell Garrow (Vipers) had 6 catches for 80 yards; Wes Hadley (Hawks) had 26 of 34 passing for 270 yards, 2 TD, 1 INT; 2 carries for 14 yards.
Before kickoff, the Vipers' game plan was on offense: attack the zones, stay underneath, target Wendell Garrow; on defense: bracket Wendell Montague (Wendell Garrow finished with 6 catches for 80 yards). Meanwhile, the Hawks' game plan was on offense: attack the zones, target Cyrus Garrow; on defense: bracket Wendell Garrow (Cyrus Garrow finished with 4 catches for 30 yards).
The Vipers move to 1-0-1 and the Hawks to 0-2 this week.
Scoring summary
| Time | Team | Play | ONX-APX |
|---|---|---|---|
| Q1 1:17 | Vipers | A 9-yard touchdown pass from Mason Okafor-Reid to Ravi Castellano | 0-7 |
| Q1 0:12 | Hawks | A 39-yard field goal by Valen Bellamy | 3-7 |
| Q2 1:38 | Vipers | A 2-yard touchdown run by Luther Banks | 3-14 |
| Q2 0:32 | Hawks | A 5-yard touchdown pass from Wes Hadley to Wendell Montague | 10-14 |
| Q2 0:00 | Vipers | A 64-yard field goal by Kasimir Eriksen | 10-17 |
| Q3 1:34 | Hawks | A 1-yard touchdown run by Bastian Kole | 17-17 |
| Q3 0:41 | Vipers | A 4-yard touchdown run by Nils Yardley | 17-24 |
| Q3 0:11 | Vipers | A 15-yard touchdown pass from Mason Okafor-Reid to Ravi Castellano | 17-31 |
| Q4 2:26 | Hawks | A 4-yard touchdown run by Darius Eriksen | 24-31 |
| Q4 0:44 | Hawks | A 1-yard touchdown pass from Wes Hadley to Elan Drummond | 31-31 |
| Q4 0:01 | Vipers | A 57-yard field goal by Kasimir Eriksen | 31-34 |
Team stats
| ONX | APX | |
|---|---|---|
| Total yards | 470 | 458 |
| Passing yards | 270 | 290 |
| Rushing yards | 200 | 168 |
| Completions | 26 of 34 | 25 of 35 |
| Offensive plays | 72 | 65 |
| Third downs | 6 of 10 | 3 of 7 |
| Fourth downs | — | 1 of 2 |
| Turnovers | 3 | 2 |
| Sacks allowed | 6 | 1 |
| Time of possession | 6:13 | 5:47 |
Onyx Hawks box score
Passing
| Player | C/ATT | YDS | TD | INT |
|---|---|---|---|---|
| Wes Hadley | 26/34 | 270 | 2 | 1 |
Rushing
| Player | CAR | YDS | TD | LNG |
|---|---|---|---|---|
| Bastian Kole | 23 | 125 | 1 | 22 |
| Darius Eriksen | 7 | 61 | 1 | 20 |
| Wes Hadley | 2 | 14 | 0 | 7 |
Receiving
| Player | REC | YDS | TD | TGT |
|---|---|---|---|---|
| Wendell Montague | 8 | 105 | 1 | 9 |
| Elan Drummond | 9 | 68 | 1 | 11 |
| Lazlo Underwood | 2 | 41 | 0 | 3 |
| Cyrus Garrow | 4 | 30 | 0 | 6 |
Defense
| Player | TK | SK | INT | PD |
|---|---|---|---|---|
| Elio Brennan | 12 | 0 | 0 | 0 |
| Adrien Achebe | 11 | 0 | 0 | 0 |
| Gideon Radcliffe | 5 | 0 | 1 | 0 |
| Soren Jovanovic | 8 | 0 | 0 | 0 |
| Pavel Pellegrini | 6 | 0 | 0 | 0 |
| Gideon Zamora | 4 | 0 | 0 | 1 |
Kicking
| Player | FG | LNG | XP |
|---|---|---|---|
| Valen Bellamy | 1/1 | 39 | 0/0 |
Apex Vipers box score
Passing
| Player | C/ATT | YDS | TD | INT |
|---|---|---|---|---|
| Mason Okafor-Reid | 25/35 | 290 | 2 | 1 |
Rushing
| Player | CAR | YDS | TD | LNG |
|---|---|---|---|---|
| Luther Banks | 23 | 117 | 1 | 16 |
| Nils Yardley | 5 | 45 | 1 | 13 |
| Emeric Castellan | 1 | 6 | 0 | 16 |
Receiving
| Player | REC | YDS | TD | TGT |
|---|---|---|---|---|
| Ravi Castellano | 7 | 88 | 2 | 10 |
| Wendell Garrow | 6 | 80 | 0 | 7 |
| Pavel Garrow | 6 | 63 | 0 | 7 |
| Emeric Castellan | 4 | 35 | 0 | 4 |
Defense
| Player | TK | SK | INT | PD |
|---|---|---|---|---|
| Soren Falkner | 10 | 0 | 1 | 0 |
| Fabian Lachance | 9 | 0 | 0 | 0 |
| Matteo Falkner | 0 | 2 | 0 | 0 |
| Elio Hargrove | 0 | 2 | 0 | 0 |
| Wendell Pellegrini | 8 | 0 | 0 | 0 |
| Orson Whitlock | 0 | 2 | 0 | 0 |
Kicking
| Player | FG | LNG | XP |
|---|---|---|---|
| Kasimir Eriksen | 2/2 | 64 | 0/0 |
Watch the replay
Every play of this game can be replayed on the big screen, with the play calls, the win probability and the commentary: replay Apex Vipers 34, Onyx Hawks 31 on Snapline. More about the teams: Apex Vipers · Onyx Hawks.