How do I ride any course on any day with Zwift?

Choosing between Watopia and Richmond courses

IMPORTANT NOTE: DO NOT insert any bogus values into the XML file!!

There are no "hidden" courses, secret maps or back doors by inserting the wrong values into your XML file. If it's invalid, Zwift will just behave unpredictably, or just crash the client. Don't do it. Follow the instructions below carefully!

There are a number of Zwift riders who prefer to ride one Zwift course over another, overriding the default course selection of the day, but the software does not have an intuitive way to choose the course you want, and it's not exposed in the GUI (yet)

Here are some of the most popular reasons people want to ride alternate courses that we've seen in the community:

  • It's the weekend and your time off to ride a long course, but this weekend is a Richmond weekend and you wanted Watopia.
  • You want to do hill intervals on Richmond's Libby Hill and 23rd Street to train up for a real-world ride.
  • You want to do some high-altitude training in the mountains at 10%+ grades on Watopia's Mountain Route, but today is a Richmond day.
  • Richmond is too crowded with scheduled race and rides, and you want a more private, solo day riding on Watopia.
  • ...and many more

But there are at least two ways to do this, which you can do without breaking your existing rides or workouts, and without breaking anything else on your PC:

  1. Modify Your Zwift Preferences
  2. Use the GUI, Luke!

DO NOT change the date or time/clock on your machine to try to "hack" around the world maps!

Previously, there were some individuals who were forcing the time on their PC to be a previous day of the week, to trick Zwift's client into serving up the opposite course than the default course selected for the day. This is BAD for a number of reasons:

  1. Scheduled tasks that run at specified times, days or intervals may be triggered prematurely
  2. Backup jobs may not run or complete in time, or be truncated as you change the days
  3. Software that relies on timing intervals to check for updates or trial expiration may prematurely trigger or fail entirely
  4. Time-sensitive logging will be dramatically impacted, breaking the atomicity and correlation of your system's events.
  5. Any data sent or received may be seen as untrustworthy or out of date by the receiving system, such as mail or cloud services
  6. Your Zwift activity's created .fit file will have an incorrect date on it, and when synchronized to Strava and/or TrainingPeaks, will show up on the wrong date than you actually executed the activity, which could blow your own training plan's integrity.
  7. ..and plenty of other reasons

In short, don't change the date on your PC, affecting everything, globally, just to trick one app into serving up yesterday's course.

The correct way to change the course is as follows:

Modify your Zwift Preferences


In your Zwift user data directory is a file called "prefs.xml". This file has a number of options that are stored there by changing your Zwift settings in-game. Some of them are undocumented, but still powerful. The ability to change the course is one of these options.

If you don't know where your Zwift user data is stored, the following KB article should help:

Open the file in any text editor and append the following line to your configuration, directly above the closing </ZWIFT> line. This is a one-line change to a simple text file. Anybody can do it!:

For riding on Watopia:


<ZWIFT>
    <CONFIG>
        <PROFANITYFILTER>0</PROFANITYFILTER>
        <POWERSMOOTHING>0</POWERSMOOTHING>
        <BATTPREFS>0</BATTPREFS>
        <SHOWGROUPMSGS>1</SHOWGROUPMSGS>
        <IMGPREFS>1</IMGPREFS>
    </CONFIG>

    <WORLD>1</WORLD>

</ZWIFT>
 

For riding on Richmond:


<ZWIFT>
    <CONFIG>
        <PROFANITYFILTER>0</PROFANITYFILTER>
        <POWERSMOOTHING>0</POWERSMOOTHING>
        <BATTPREFS>0</BATTPREFS>
        <SHOWGROUPMSGS>1</SHOWGROUPMSGS>
        <IMGPREFS>1</IMGPREFS>
    </CONFIG>

    <WORLD>2</WORLD>

</ZWIFT>
 

For riding on London:


<ZWIFT>
    <CONFIG>
        <PROFANITYFILTER>0</PROFANITYFILTER>
        <POWERSMOOTHING>0</POWERSMOOTHING>
        <BATTPREFS>0</BATTPREFS>
        <SHOWGROUPMSGS>1</SHOWGROUPMSGS>
        <IMGPREFS>1</IMGPREFS>
    </CONFIG>

    <WORLD>3</WORLD>

</ZWIFT>
 

This method allows you to ride on the "other" course, which may be what you want. If it is, stop here, you're done.

However, if you want to ride Watopia solo, with no riders on the course at all other than yourself and it's a Watopia day, this workaround won't work, so that's why I came up with the "ApocaZwift©" solution that does give you this capability and doesn't mess with your PC clock date (and all the downstream impacts that brings). Read the following KB article on "How do I ride solo on Zwift?" for that solution:

If you're unsure which segment you want to ride on Zwift (flat, hilly, mountain, etc.), there's a KB article describing that as well:

Use the GUI, Luke


One of our own Zwift'ers, Jesper Rosenlund Nielsen, has created a GUI for modifying these, as well as other in-game, hidden preferences, called "Zwift Preferences"!

Zwift Preferences, by Jesper Rosenlund Nielsen

Just download the latest version from Jesper's site, install the pre-requisites (Zwift and AutoHotKey), and you're ready to go!

Jesper also has some other Zwift Add-Ons you might be interested in checking out.

If you want to contribute to the Zwift add-ons for the community, there's also a Facebook group called "Zwift Coders" that caters to the community of developers and contributors making Zwift better every day!

Good luck and #RideOn!

Tags
world tag, map, preferences, prefs.xml, courses, world, Watopia, Richmond, London, Volcano