bennylp / zwiftautoworkout

Maximize Zwift XP reward to 32-38 xp per km by automatically starts short workout while on free ride

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Zwift Auto Workout

Basic Idea

The objective is to maximize your Zwift XP reward. The basic idea is to have a short interval workout at the start of a new km, and to finish that workout before a new km. This way you'll be rewarded twice:

  1. 20 xp for each km, and
  2. 6 xp per 30 second for the interval.

Typically you will get 32-38 xp per km with this method, depending on the speed of your free ride. The slower you ride, the more workouts can be started, and the more xp are rewarded.

This Python program helps automate starting/stopping the workout while you're riding in free ride.

Installation

  1. Currently this only works on Windows
  2. Currently only tested on 1920x1080 screen resolution
  3. Currently only works with metric system (i.e. distance in km, not miles)
  4. Install Sauce4Zwift. Follow the installation instructions.
  5. Install AutoHotKey v2
  6. Install Python 3
  7. Clone this repository to a directory.
  8. (Make sure Zwift is not running while you do this) Copy all workout files in workouts directory to Zwift workout folder %USERPROFILE%\Documents\Zwift\Workouts\<zwift player id>\

Make sure the workouts are installed properly:

  1. Start zwift

  2. Start free ride

  3. Press E to display workout screen

  4. Select Custom Workouts from the selection

    Workout screen

  5. Make sure that the Auto XX% workouts are displayed first in the Custom Workouts. If there are any other workouts before the Auto XX%, rename those workouts so that they are displayed after our workouts.

  6. Make sure all Auto XX% workouts are displayed (i.e. from 50% to 130%)

  7. Now click 02. Auto 50% workout, and press Workout to start it. This is so that next time we open the workout screen, the Custom Workouts will be displayed.

Running

  1. Run zwift

  2. Run Sauce4Zwift

  3. Run zwiftautoworkout (python zwiftautoworkout.py)

  4. Start a free ride in Zwift, or ride with a pace partner if you want (P.S. you cannot start a workout while riding on an event)

  5. At the start of new km, zwiftautoworkout will automatically pick the best Auto workout based on your average watt in the past few seconds, and start it.

    1. You can set the workout in ERG or non-ERG mode, it's up to you.

    2. Note that if you activate ERG mode, you may need to make adjustment to the workout watt to match your desired watt.

    3. Once the workout ends, zwiftautoworkout will automatically close the End workout dialog.

    4. zwiftautoworkout now calculates the average speed of the past few seconds, and determine if new workout can be started without crossing the new km boundary.

      • If so, it will start new workout, repeating these steps.
      • If not, it will sit idle, waiting till the next km, while still calculating the current average speed to determine if it can start new workout.

About

Maximize Zwift XP reward to 32-38 xp per km by automatically starts short workout while on free ride


Languages

Language:Python 87.0%Language:AutoHotkey 12.0%Language:Batchfile 1.0%