This week was the final race of Zwift Racing League 2021/22 Season 2. My team, the DIRT Roosters, had a plan to craft a glorious ending to our so-far undefeated season in the EMEA W B2. But you know how plans go in bike races!
First, a look back at last week’s TTT, and a lesson I’ll call “Don’t ride centuries before races.”
First: Last Week’s TTT
Last week’s team time trial was a 2-lapper of Richmond UCI Reverse. I had told my team the prior week that having me race was not the best idea, because I had a long ride planned the day before with my brother Steve who was visiting from out of town.
Team captain Antoine thought it would be fine, and told me I would probably be surprised by how good I felt. I told him he might be surprised by how bad I felt. Sometimes I think the rest of my team recovers much faster than I!
Anyway – the long ride (92 miles from my home to Mendocino, CA on the Pacific coast) was tougher than anticipated. It seems we chose the worst day of the year so far to do the ride: it was 20 degrees colder than the week before, the wind was high all day long (mostly a quartering headwind), then with an hour left to ride rain began dumping on us. We arrived freezing cold and soaked to the bone, but it was another brotherly adventure in the big. Always worth it.
My legs didn’t feel great the next day during warmup, and as we blasted out of the pens, they didn’t magically improve. I will confess I made it further than I thought I would, barely holding on up the three climbs on the first half of the lap, then put in two pulls on the flat half.
As we headed into the second lap I knew I couldn’t make it over the climbs without my team slowing for me. They were riding super strong, so I knew they would be faster without me. So I announced over Discord that I’d be taking a suicide pull at the bottom of the first descent, pulling them into the start of the next climb. 410W for 60 seconds and I was done. Then I dropped off and played DS for the rest of the race.
The 5 remaining Roosters did great work – especially Sean and our sub rider Paul. We beat the next-fastest team by 31s for our 6th win in 6 races.
The Final Race: Lutece Express
The final race of the season was 6 laps of the Lutece Express in Paris – a route which suited us well with its slightly downhill sprint and lack of significant climbs.
We had devised a two-part plan for the race:
- Individual riders would attack the sprint on each lap as they saw fit. So if you had a good powerup, or the legs felt good and you wanted to chase someone else attacking early, go for it. The idea was that we would amass a lot of intermediate points this way, spreading our efforts across the race.
- We would attack as a team just before the climb on the final lap. We would then attempt to stay away to the finish… for glory!
With beet juice in my system, three pieces of caffeine gum coursing through my veins, and PR lotion on the legs I kitted up and headed out to the sands of Fuego Flats to warm up my legs with the C. Cadence crew. I put in a few digs to get my heart rate up to 160 – it was responding nicely, and the legs felt pretty good.
On Discord, team captain Antoine had confessed (with pictures) to a few too many drinks before the race. While we teased him about celebrating early, he clearly wasn’t sure how he’d feel racing with some alcohol in his system. So he had a bucket nearby, just in case.
The Start + Middle
The start was fairly tame, even though we hit the climb straight out of the gates. We quickly established a rhythm that would hold throughout the race. Here’s what it looked like, beginning with the climb:
- Up the Montée des Champs Elysées. A rider attacks on the final steepest bit and another rider or two (usually from DIRT) gives chase. Sometimes these riders would stay away to the sprint line. But usually not.
- A group of riders hits the sprint hard, stretching/splitting the peloton as we go through the sprint banner.
- The peloton comes back together before the lap banner, with a few riders dropped off the back for good.
Wash, rinse, repeat.
I only went hard on one sprint: lap 2. I used my aero powerup and came across the line in 4th FAL, and the leaderboard also showed me in 4th. But the leaderboard is useless for tracking FTS, because a single rider can grab multiple FTS slots. As it turned out I ended up 9th in FTS, scoring only 2 points. #sad
The Finish
The Roosters rested a bit in the last few laps, getting our legs primed for our team attack. With around 25 riders left in the front pack, the plan was for Arjen to count us down (since the attack was his idea), then we would all go hard to create a quick gap, then TTT to a glorious finish.
It didn’t exactly work out that way.
Arjen counted us down, “5, 4, 3, 2, 1”. Then we hit the gas and jumped! But the response from the pack was nearly immediate, with rider numbers turning orange just behind us. We only managed a small gap before we gave up, choosing instead to save our legs for the sprint to the line.
Nobody went long on the sprint this time – everyone was keeping their powder dry for the final sprint. Except for teammate Clem, who went all-in, coming first across the sprint line and yelling “Yeah!”
To which Arjen replied, “The race is not finished, Clem!” Clem had sprinted for the wrong finish line. Ha!
Alas, the Zwift gods gave me a feather powerup at the sprint banner. Not what I was looking for. So I surfed the wheels, then activated my powerup around 300m before the finish. The sprint felt pretty good, but not good enough. I crossed the line in 7th.
A 3-picture story of the final sprint:
Clem, for his part, finished in 24th. (But he had already earned 50 sprint points by that point, so we’ll give him a pass.)
The deserving win went to TFC’s Liam Dunne, an incredibly gifted all-around rider who was always in the mix when it came to intermediate points and tight finishes. Chapeau, sir, on another good season. Hopefully we’ll see you and TFC in B1 next season.
See (partial) activity on Strava >
See results on ZwiftPower >
Watch the Race Video (sorry about my loud mic)
BSOD
Just to make things interesting, as my avatar sat still on the bricks of Avenue des Champs-Élysées, my fancy new Windows 11 PC suddenly threw up a blue screen of death. Ack! First time that’s happened.
Happily, the race was well over at that point, and my result was recorded on ZwiftPower. But my ride won’t show on zwift.com, and uploading my local fit file to Strava (after running it through fitfiletools.com‘s Corrupt Time Fixer) only shows a partial ride, missing the final sprint.
Team Result
Despite our failed final-lap attack, the Roosters took the win by a large margin. Once again, our intermediate points made a massive difference in the overall result:
Consider this: we scored 172 intermediate points, while the 2nd place team scored 176 total points.
Pre-drinker Antoine, despite his complaints of not feeling well, managed to score a boatload of sprint points (34 FAL, 11 FTS). In fact, he scored FAL points on every sprint. Perhaps being a bit sauced is the better way for Antoine to fly?
Winning this final race of the season means we made a clean sweep of the B2 division: certainly not the result we anticipated heading into this season after being promoted from B3. Oddly enough, we found our time in B2 a bit less competitive than B3!
But we’re under no illusion as we head into next season anticipating an upgrade to division B1. B1 is where the hitters live. Because the top teams don’t get promoted out of B1 up to the A’s, you end up with a lot of really strong teams in the B1 division (also A1, C1, and D1). It’s going to be a night-and-day difference. But we’re looking forward to it.
Takeaways
It appears my sprint power is improving a bit, thanks to my Sprintbooster training. I set a new 15s power PB on my lap 2 sprint in this race (880w), but I know there are more watts available. I’ve just got to train my way to them!
It’s been a really fun season with the DIRT Roosters. As we get to know each other better, season after season, we work together better, using each of our strengths to maximally impact our team result.
Honorable mention this season goes to Sean Phillips, who sat in on a few races and did great work as an extra Rooster. Hopefully we’ll see more of him in the future.
Your Thoughts
How did your final race (and season) go? Share some interesting stories below!