zoffline
zoffline permite el uso de Zwift sin conexión actuando como una implementación parcial de un servidor Zwift. Por defecto, zoffline es solo para un jugador. Consulte el Paso 6: Habilitar el modo multijugador para saber cómo habilitar la compatibilidad con múltiples usuarios/perfiles.
zoffline también ofrece montar contra fantasmas (tus paseos anteriores). Habilite esta función marcando "Habilitar fantasmas" en el iniciador de zoffline. Consulte Fantasmas y robots para obtener más detalles.
Además, el iniciador de zoffline permite seleccionar un mapa específico para viajar sin tener que lidiar con archivos de configuración.
Instalar
Configurar zoffline requiere dos pasos principales. Primero, zoffline debe instalarse y ejecutarse en un sistema antes de ejecutar Zwift (ya sea en el sistema que ejecuta Zwift o en otro sistema en red local). En segundo lugar, Zwift debe configurarse para utilizar zoffline en lugar del servidor oficial de Zwift.
Paso 1: instale zoffline
Hay tres formas de instalar y ejecutar zoffline según su plataforma:
Más simple (solo Windows)
Para instalar zoffline en Windows:- Descargue la última versión de zoffline desde https://github.com/zoffline/zwift-offline/releases/latest
- Si desea los RoboPacers, descargue el paquete de código fuente y extraiga el directorio
pace_partners
en la misma carpeta en la que se encuentra zoffline.
- Si no está ejecutando zoffline en la misma PC que ejecuta Zwift: cree un archivo
server-ip.txt
en el directorio storage
que contenga la dirección IP de la PC que ejecuta zoffline. - Ejecute el zoffline.exe descargado
- Una vez ejecutado, zoffline creará un directorio
storage
en la misma carpeta en la que se encuentra para almacenar su progreso de Zwift.
- Inicie Zwift con zoffline.exe ejecutándose ( después de completar el paso 2 o ejecutar el script configure_client desde https://github.com/oldnapalm/zoffline-helper/releases/latest)
- Zoffline tarda unos segundos en iniciarse. Espere hasta que aparezca el texto en el símbolo del sistema antes de abrir Zwift.
- Cuando termine con Zwift, presione Ctrl+C en la línea de comando para cerrar zoffline.
Linux, Windows o macOS (desde la fuente)
Para instalar zoffline en Linux, Windows o macOS:- Instale Python 3 (https://www.python.org/downloads/) si aún no está instalado
- En Windows, se recomienda encarecidamente instalar Python a través de Microsoft Store. Si utiliza un instalador de Python, asegúrese de que en la primera pantalla del instalador de Python esté marcado "Agregar Python 3.x a PATH".
- Clona o descarga este repositorio
- Instalar dependencias
- por ejemplo, en Linux/Mac:
pip3 install -r requirements.txt
- por ejemplo, en Windows en el símbolo del sistema:
pip install -r requirements.txt
- Es posible que necesites usar
C:UsersAppDataLocalProgramsPythonPythonScriptspip.exe
en lugar de solo pip
- Si no está ejecutando zoffline en la misma PC que ejecuta Zwift: cree un archivo
server-ip.txt
en el directorio storage
que contenga la dirección IP de la PC que ejecuta zoffline. - Ejecute standalone.py antes de iniciar Zwift
- por ejemplo, en Linux/Mac:
sudo ./standalone.py
- Se necesita sudo porque estamos vinculando los puertos privilegiados 80 y 443.
- Si Python 3 no es el predeterminado de su sistema, ejecute
sudo python3 standalone.py
- por ejemplo, en Windows en el símbolo del sistema:
python standalone.py
- Es posible que necesites usar
C:UsersAppDataLocalProgramsPythonPythonpython.exe
en lugar de solo python
- Inicie Zwift con standalone.py ejecutándose ( después de completar el paso 2 )
- Nota: Al actualizar zoffline, asegúrese de conservar el directorio
storage
. Contiene su estado de progreso de Zwift.
zoffline se puede instalar en la misma máquina que Zwift u otra máquina local.
Usando ventana acoplable
- Instalar ventana acoplable
- Cree el contenedor acoplable con:
docker create --name zwift-offline -p 443:443 -p 80:80 -p 3024:3024/udp -p 3025:3025 -p 53:53/udp -v :/usr/src/app/zwift-offline/storage -e TZ= zoffline/zoffline
- Opcionalmente, puedes excluir
-v :/usr/src/app/zwift-offline/storage
si no te importa si tu estado de progreso de Zwift se conserva en las actualizaciones de zoffline (poco probable). - Es probable que la ruta que pase a
-v
deba ser legible y escribible en todo el mundo. - Puede encontrar una lista de valores de
válidos (por ejemplo, América/Nueva_York) aquí. - Agregar
--restart unless-stopped
hará que zoffline se inicie al arrancar si tiene Docker v1.9.0 o superior.
- Si no está ejecutando zoffline en la misma PC que ejecuta Zwift: cree un archivo
server-ip.txt
en el directorio
que contenga la dirección IP de la PC que ejecuta zoffline. - Inicie zoffline con:
docker start zwift-offline
Usando Docker Compose
- Instalar Docker-Componer
- Utilice el archivo
docker-compose.yml
en este repositorio que se compilará a partir del Dockerfile, o utilice este archivo de redacción de ejemplo: version: "3.3"
services:
zoffline:
image: zoffline/zoffline:latest
container_name: zoffline
environment:
- TZ=Europe/London
volumes:
- ./storage/:/usr/src/app/zwift-offline/storage
ports:
- 80:80
- 443:443
- 3024:3024/udp
- 3025:3025
restart: unless-stopped
- Si no está ejecutando zoffline en la misma PC que ejecuta Zwift: cree un archivo
server-ip.txt
en el directorio storage
que contenga la dirección IP de la PC que ejecuta zoffline. - Inicie zoffline con:
docker-compose up -d
Paso 2: Configurar el cliente Zwift para usar zoffline
Instrucciones de Windows
- Instalar Zwift
- Si su versión de Zwift es 1.0.136426, ya está todo listo.
- Si Zwift no está instalado, instálelo antes de instalar zoffline.
- Si su versión de Zwift es posterior a 1.0.136426 y zoffline se está ejecutando desde la fuente: copie
C:Program Files (x86)ZwiftZwift_ver_cur.xml
al cdn/gameassets/Zwift_Updates_Root/
de zoffline sobrescribiendo el archivo existente. - Si su versión de Zwift es posterior a 1.0.136426 y zoffline no se ejecuta desde la fuente: espere a que se actualice zoffline.
- NOTA: en lugar de realizar los pasos siguientes, puede simplemente ejecutar el script configure_client desde https://github.com/oldnapalm/zoffline-helper/releases/latest
- En su máquina Windows que ejecuta Zwift, copie los siguientes archivos de este repositorio en una ubicación conocida:
- ssl/cert-zwift-com.p12
- ssl/cert-zwift-com.pem
- Abra el símbolo del sistema como administrador, vaya a esa ubicación y ejecute
-
certutil.exe -importpfx Root cert-zwift-com.p12
- Si se le solicita una contraseña, déjela en blanco. No hay contraseña.
- Abra el Bloc de notas como administrador y abra
C:Program Files (x86)Zwiftdatacacert.pem
- Agregue el contenido de
ssl/cert-zwift-com.pem
a cacert.pem
- Abra el Bloc de notas como administrador y abra
C:WindowsSystem32Driversetchosts
- Agregue esta línea:
us-or-rly101.zwift.com secure.zwift.com cdn.zwift.com launcher.zwift.com
(Donde
es la dirección IP de la máquina que ejecuta zoffline. Si se ejecuta en la misma máquina que Zwift, use 127.0.0.1
como ip).
- Si desea dejar el archivo
hosts
sin cambios, excepto cuando use zoffline específicamente, puede usar opcionalmente el script launch.bat dentro del directorio scripts
para iniciar zoffline en lugar de usar el iniciador de Zwift normal. Consulte el n.° 121 para obtener más detalles.
Por qué: Necesitamos redirigir a Zwift para que use zoffline y convencer a Windows y Zwift de que acepten los certificados autofirmados de zoffline para los nombres de dominio de Zwift. Siéntase libre de generar sus propios certificados y hacer lo mismo.
Instrucciones para macOS
- Instalar Zwift
- Si su versión de Zwift es 1.0.136426, ya está todo listo.
- Si Zwift no está instalado, instálelo antes de instalar zoffline.
- Si su versión de Zwift es posterior a 1.0.136426: copie
~/Library/Application Support/Zwift/ZwiftMac_ver_cur.xml
al cdn/gameassets/Zwift_Updates_Root/
de zoffline sobrescribiendo el archivo existente.
- En su máquina Mac que ejecuta Zwift, copie el archivo ssl/cert-zwift-com.pem en este repositorio en una ubicación conocida.
- Abra Acceso a Llaveros, seleccione "Sistema" en "Llaveros", seleccione "Certificados" en "Categoría"
- Haga clic en "Archivo - Importar elementos..." e importe cert-zwift-com.pem
- Haga clic derecho en "*.zwift.com", seleccione "Obtener información" y en "Confiar", elija "Al utilizar este certificado: Confiar siempre".
- Desde la ubicación cert-zwift-com.pem, ejecute
sed -n '29,53p' cert-zwift-com.pem >> ~/Library/Application Support/Zwift/data/cacert.pem
- Usando un editor de texto (con privilegios de administrador) abra
/etc/hosts
- Agregue esta línea:
us-or-rly101.zwift.com secure.zwift.com cdn.zwift.com launcher.zwift.com
(Donde
es la dirección IP de la máquina que ejecuta zoffline. Si se ejecuta en la misma máquina que Zwift, use 127.0.0.1
como ip).
Por qué: Necesitamos redirigir a Zwift para que use zoffline y convencer a macOS y Zwift de que acepten los certificados autofirmados de zoffline para los nombres de dominio de Zwift. Siéntase libre de generar sus propios certificados y hacer lo mismo.
Android (dispositivo no rooteado)
- Instale las aplicaciones requeridas:
- Descargue e instale
ZofflineObb.apk
desde aquí - Descargue e instale
app-Github-release.apk
desde aquí - Cree un archivo
hosts.txt
para usarlo con la aplicación (puede usar una aplicación de edición de texto o crearlo en línea con una herramienta en línea como esta). El archivo debe verse así (reemplace
con la dirección IP de la máquina que ejecuta zoffline):
us-or-rly101.zwift.com
secure.zwift.com
cdn.zwift.com
- Desactive "DNS privado" en la configuración de Android
- Ejecute "Hosts virtuales" y seleccione el archivo
hosts.txt
creado - Opcionalmente, en lugar de utilizar la aplicación "Virtual Hosts", puede crear un archivo
fake-dns.txt
en el directorio storage
y configurar el "DNS 1" de la conexión Wi-Fi de su teléfono a la dirección IP de la PC que ejecuta zoffline. - Nota: Si sabe lo que está haciendo y tiene un enrutador lo suficientemente capaz, puede ajustar su enrutador para alterar estos registros DNS en lugar de usar la aplicación "Virtual Hosts" o cambiar el DNS de su teléfono.
- Parche después de cada instalación o actualización:
- Instale/actualice Zwift desde Google Play, pero no lo inicie todavía.
- Si ya lo ha iniciado, vaya a
Android Settings > Applications > Zwift
y borre los datos o desinstale y vuelva a instalar la aplicación.
- Abra la aplicación
ZofflineObb
y ejecútela (permita el acceso al almacenamiento) - Espere a que finalice el proceso (5-10 min)
- Ejecute Zwift, con suerte verifica la descarga y se ejecuta.
- Jugar Zwift:
- El botón de hosts virtuales debe estar activado.
- Inicie Zwift e inicie sesión con cualquier correo electrónico/contraseña o cree un nuevo usuario si el modo multijugador está habilitado.
Por qué: Necesitamos redirigir a Zwift para que use zoffline (esto se hace mediante la aplicación Virtual Hosts) y convencer a Zwift de que acepte los certificados autofirmados de zoffline para los nombres de dominio de Zwift (esto se hace mediante la herramienta de parche ZofflineObb).
Android (dispositivo rooteado)
- Instale Zwift en el dispositivo
- Abra Zwift una vez para completar la instalación (es decir, descargue todos los archivos adicionales).
- Agregue el contenido de
ssl/cert-zwift-com.pem
a /data/data/com.zwift.zwiftgame/dataES/cacert.pem
en el dispositivo- Nota: este archivo solo existirá después de la primera ejecución de Zwift, ya que se descarga después de la instalación inicial.
- Enfoque simple para lograr esto si su dispositivo no tiene un editor de texto:
-
adb push ssl/cert-zwift-com.pem /data/data/com.zwift.zwiftgame/dataES/
- En
adb shell
: cd /data/data/com.zwift.zwiftgame/dataES/
- En
adb shell
: cat cert-zwift-com.pem >> cacert.pem
- Independientemente de cómo lo haga, asegúrese de que los permisos y la propiedad del archivo sigan siendo los mismos.
- Modificar el archivo
/etc/hosts
del dispositivo- Agregue esta línea:
us-or-rly101.zwift.com secure.zwift.com cdn.zwift.com
(Donde
es la dirección IP de la máquina que ejecuta zoffline). - Si no hay un editor de texto en el dispositivo, recomendamos:
-
adb pull /etc/hosts
- (modificar en PC)
-
adb push hosts /etc/hosts
- Nota: Si sabe lo que está haciendo y tiene un enrutador lo suficientemente capaz, puede ajustar su enrutador para alterar estos registros DNS en lugar de modificar su archivo
hosts
.
- Inicie Zwift e inicie sesión con cualquier correo electrónico/contraseña o cree un nuevo usuario si el modo multijugador está habilitado.
Por qué: Necesitamos redirigir a Zwift para que use zoffline y convencer a Zwift de que acepte los certificados autofirmados de zoffline para los nombres de dominio de Zwift. Siéntase libre de generar sus propios certificados y hacer lo mismo.
Habilitar/deshabilitar zoffline
Para usar Zwift en línea como de costumbre, comente o elimine la línea agregada al archivo hosts
antes de iniciar Zwift. Luego, asegúrese de que Zwift esté completamente cerrado (haga clic con el botón derecho en el icono de la bandeja del sistema de Zwift y salga) y reinicie Zwift.
Paso 3 [OPCIONAL]: Obtenga el perfil actual de Zwift
Expandir
Si no obtiene su perfil actual de Zwift antes de iniciar Zwift por primera vez con zoffline habilitado, se le pedirá que cree un nuevo perfil (altura, peso, sexo). Tu perfil se puede personalizar y cambiar aún más a través del menú del juego (por ejemplo, nombre, nacionalidad, cambio de peso, etc.).
Para obtener su perfil actual:
- NOTA: en lugar de realizar los pasos siguientes, puedes utilizar el botón "Configuración - Zwift" en la ventana del iniciador (solo Windows y macOS).
- Asegúrese de que zoffline esté deshabilitado.
- Ejecute
scripts/get_profile.py -u
- O, si utiliza la versión zoffline.exe de Windows sin Python instalado, puede ejecutar
get_profile.exe
obtenido de https://github.com/oldnapalm/zoffline-helper/releases/latest en lugar de scripts/get_profile.py
- Mueva el
profile.bin
resultante, achievements.bin
y economy_config.txt
(guardados en cualquier directorio en el que haya ejecutado get_profile.py) al directorio storage/1
.- Si usa zoffline.exe en Windows, cree un directorio
storage/1
dentro de la misma carpeta que zoffline.exe si aún no existe. - Si usa Docker, el directorio
1
debe estar en la ruta que pasó a -v
Paso 4 [OPCIONAL]: Sube actividades a Strava
Expandir
- Obtenga CLIENT_ID y CLIENT_SECRET de https://www.strava.com/settings/api
- NOTA: en lugar de realizar los pasos a continuación, puede configurar el dominio de devolución de llamada de autorización de su aplicación API en
launcher.zwift.com
y usar el botón "Configuración - Strava" en la ventana del iniciador (solo Windows y macOS). - Ejecute
scripts/strava_auth.py --client-id CLIENT_ID --client-secret CLIENT_SECRET
- O, si usa la versión zoffline.exe de Windows sin Python instalado, puede ejecutar
strava_auth.exe
obtenido de https://github.com/oldnapalm/zoffline-helper/releases/latest en lugar de scripts/strava_auth.py
- Abra http://localhost:8000/ y autorice.
- Mueva el
strava_token.txt
resultante (guardado en cualquier directorio en el que haya ejecutado strava_auth.py
) al directorio storage/1
. - Si realiza la prueba, recorra al menos 300 metros, no se cargarán actividades más cortas.
- La carga automática de capturas de pantalla no es posible; consulte el punto 28 para obtener más detalles.
Paso 5 [OPCIONAL]: Sube actividades a Garmin Connect
Expandir
- Si se ejecuta desde la fuente, instale garth:
pip install garth
- Si es necesario, cree un archivo
garmin_domain.txt
en el directorio storage
que contiene el dominio.- Para China utilice
garmin.cn
- NOTA: en lugar de realizar el paso siguiente, puedes utilizar el botón "Configuración - Garmin" en la ventana del iniciador para ingresar tus credenciales (solo Windows y macOS).
- Cree un archivo
garmin_credentials.txt
en el directorio storage/1
que contenga sus credenciales de inicio de sesión. - Nota: esto no es seguro. Haga esto solo si se siente cómodo con que sus credenciales de inicio de sesión se almacenen en un archivo de texto sin cifrar.
- Si realiza la prueba, recorra al menos 300 metros, no se cargarán actividades más cortas.
Paso 6 [OPCIONAL]: Habilita el modo multijugador
Expandir
Para habilitar el soporte para múltiples usuarios, realice los pasos a continuación:
- Cree un archivo
multiplayer.txt
en el directorio storage
. - Si no está ejecutando zoffline en la misma PC que ejecuta Zwift: cree un archivo
server-ip.txt
en el directorio storage
que contenga la dirección IP de la PC que ejecuta zoffline.- Los puertos TCP 80, 443, 3025 y el puerto UDP 3024 deberán estar abiertos en la PC que ejecuta zoffline si se ejecuta de forma remota.
- Inicie Zwift y cree una cuenta.
- Esta cuenta solo existirá en su servidor zoffline y no tiene relación con su cuenta Zwift real.
Paso 7 [OPCIONAL]: Instale la aplicación Zwift Companion
Android (dispositivo no rooteado)
- Instale apk-mitm (https://github.com/shroudedcode/apk-mitm)
- Abra
apk-mitm/dist/tools/apktool.js
(ejecute npm root -g
para encontrar su ubicación) y edítelo de esta manera: decode ( inputPath , outputPath ) {
return this . run ( [
'decode' ,
'-resm' , // add this
'dummy' , // add this
inputPath ,
'--output' ,
outputPath ,
'--frame-path' ,
this . options . frameworkPath ,
] , 'decoding' ) ;
}
- Copie el archivo ssl/cert-zwift-com.pem en este repositorio y la aplicación Zwift Companion (por ejemplo,
zca.apk
) en una ubicación conocida. - Abra el símbolo del sistema, vaya a esa ubicación y ejecute
-
apk-mitm --certificate cert-zwift-com.pem zca.apk
- Copie
zca-patched.apk
a su teléfono e instálelo - Descargue e instale
app-Github-release.apk
desde aquí - Cree un archivo
hosts.txt
para usarlo con la aplicación (puede usar una aplicación de edición de texto o crearlo en línea con una herramienta en línea como esta). El archivo debe verse así (reemplace
con la dirección IP de la máquina que ejecuta zoffline): us-or-rly101.zwift.com
secure.zwift.com
- Importante: no agregue
cdn.zwift.com
a hosts.txt
, Companion necesita descargar imágenes del servidor oficial
- Desactive "DNS privado" en la configuración de Android
- Ejecute "Hosts virtuales" y seleccione el archivo
hosts.txt
creado - Opcionalmente, en lugar de utilizar la aplicación "Virtual Hosts", puede crear un archivo
fake-dns.txt
en el directorio storage
y configurar el "DNS 1" de la conexión Wi-Fi de su teléfono a la dirección IP de la PC que ejecuta zoffline. - Nota: Si sabe lo que está haciendo y tiene un enrutador lo suficientemente capaz, puede ajustar su enrutador para alterar estos registros DNS en lugar de usar la aplicación "Virtual Hosts" o cambiar el DNS de su teléfono.
Pasos opcionales adicionales
Expandir
- Para obtener la programación oficial del mapa y los archivos de actualización del servidor Zwift: cree un archivo
cdn-proxy.txt
en el directorio storage
. Esto solo puede funcionar si está ejecutando zoffline en una máquina diferente al cliente Zwift.- Si esta opción está deshabilitada, zoffline intentará utilizar el DNS público de Google para resolver los nombres de host de Zwift. Esto debería funcionar incluso si zoffline se ejecuta en la misma máquina que el cliente Zwift. Para evitar esto, cree un archivo
disable_proxy.txt
en el directorio storage
.
- Para habilitar la función de restablecimiento de contraseña cuando el modo multijugador está habilitado: cree un archivo
gmail_credentials.txt
en el directorio storage
que contenga las credenciales de inicio de sesión de una cuenta de Gmail. Debe acceder a https://security.google.com/settings/security/apppasswords y crear una contraseña de aplicación para permitir el inicio de sesión desde el servidor. - Para habilitar el robot del puente Discord:
pip3 install discord.py
y cree un archivo discord.cfg
en el directorio storage
que contiene [discord]
token =
webhook =
channel =
welcome_message =
help_message =
- Si el cliente Zwift tiene problemas para conectarse al servidor Linux ("La solicitud fue cancelada: no se pudo crear un canal seguro SSL/TLS" o "La conexión subyacente se cerró: ocurrió un error inesperado en un envío. Se recibió un EOF inesperado o 0 bytes del flujo de transporte."): cambie MinProtocol en /etc/ssl/openssl.cnf a TLSv1.0
[system_default_sect]
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1
Fantasmas y robots
Expandir
fantasmas
- Habilite esta función marcando "Habilitar fantasmas" en el iniciador de zoffline.
- Si está ejecutando Zwift en Android, cree un archivo
enable_ghosts.txt
dentro de la carpeta storage
.- Si el modo multijugador está habilitado, acceda
https:///login/
, marque "Habilitar fantasmas" y haga clic en "Iniciar Zwift" para guardar la opción.
- Cuando guardas una actividad, el fantasma se guardará en
storage//ghosts//
. La próxima vez que recorras la misma ruta, se cargará el fantasma. - Escribe
.regroup
en el chat para reagrupar a los fantasmas. - El equipo se puede personalizar creando un archivo
ghost_profile.txt
dentro de la carpeta storage
. El script find_equip.py
se puede utilizar para completar este archivo.
robots
- Cree un archivo
enable_bots.txt
dentro de la carpeta storage
para cargar fantasmas como robots, seguirán viajando independientemente de la ruta que esté recorriendo. - Opcionalmente,
enable_bots.txt
puede contener un valor multiplicador (tenga cuidado, si el número resultante de bots es demasiado alto, puede causar problemas de rendimiento o no funcionar en absoluto). - Los nombres, nacionalidades y equipos se pueden personalizar creando un archivo
bot.txt
dentro de la carpeta storage
. Los scripts get_pro_names.py
y get_strava_names.py
se pueden utilizar para completar este archivo. - Si quieres algunos bots aleatorios, consulta este repositorio.
RoboPacers (antes conocidos como Pace Partners)
- Los RoboPacers son fantasmas salvados mediante un simulador de energía.
- El fantasma debe grabarse utilizando una frecuencia de actualización de 1 segundo (el valor predeterminado es 3 segundos).
- La actividad debe comenzar y terminar en la misma posición y velocidad; de lo contrario, el robot no realizará el bucle sin problemas.
- El perfil debe contener una ID de jugador única y la ID de ruta, de modo que cuando te unas al bot tomes los mismos giros en las intersecciones.
- El script
bot_editor.py
se puede utilizar para modificar profile.bin
(establecer nombre, ID de jugador e ID de ruta) y route.bin
(cortar los puntos sobrantes para crear un bucle perfecto). - Si desea crear un RoboPacer dinámico (aumentar la potencia en las subidas y disminuirla en los descensos), puede usar standalone_power.py (requiere 2 dispositivos ANT, python-ant y PowerMeterTx.py).
Marcadores
Expandir
- Cuando termines una actividad, tu última posición se guardará como marcador.
- Los marcadores también se pueden guardar usando el comando
.bookmark
en el chat. - Puedes iniciar una nueva actividad desde un marcador seleccionándolo en "Unirse a Zwifter" en la pantalla de inicio.
- Puedes teletransportarte a un marcador usando el ícono de teletransporte en la barra de acciones.
Tablas de clasificación de todos los tiempos
Expandir
- Para habilitar las tablas de clasificación de todos los tiempos (anular los resultados en vivo de 60 minutos y los récords personales de 90 días), cree un archivo
all_time_leaderboards.txt
en el directorio storage
. - Las camisetas siguen siendo válidas durante 60 minutos, pero se otorgarán sólo cuando se establezca un nuevo récord de todos los tiempos.
Derechos
Expandir
- Para desbloquear derechos (equipo especial), cree un archivo
unlock_entitlements.txt
en el directorio storage
. - Para desbloquear todos los equipos, cree un archivo
unlock_all_equipment.txt
.
Servidor comunitario de Discord y club Strava
Únase al servidor Discord y al club Strava respaldados por la comunidad.
Dependencias
Estibador
-o-
- Python 3 (https://www.python.org/downloads/)
- Matraz (https://flask.palletsprojects.com/)
- python-protobuf (https://pypi.org/project/protobuf/)
- pyJWT (https://pyjwt.readthedocs.io/)
- Inicio de sesión en Flask (https://flask-login.readthedocs.io/)
- Flask-SQLAlchemy (https://flask-sqlalchemy.palletsprojects.com/)
- gevent (http://www.gevent.org/)
- pycryptodome (https://pypi.org/project/pycryptodome/)
- dnspython (https://www.dnspython.org/)
- fitdecode (https://pypi.org/project/fitdecode/)
- Stravalib (https://stravalib.readthedocs.io/)
- OPCIONAL: garth (https://pypi.org/project/garth/)
- OPCIONAL: discord.py (https://discordpy.readthedocs.io/)
Nota
Las futuras actualizaciones de Zwift pueden interrumpir zoffline hasta que se actualice. Mientras zoffline esté habilitado, las actualizaciones de Zwift no se instalarán. Si una actualización de zoffline rompió algo, consulte el CHANGELOG
para ver posibles cambios que deban realizarse.
No expongas zoffline a Internet, no fue diseñado con eso en mente.
Si zoffline no está actualizado en el cliente oficial de Zwift
Si zoffline está atrasado en el soporte del último cliente Zwift, se puede actualizar (si ejecuta Linux) para ejecutarlo con la última versión de Zwift ejecutando este script desde el repositorio zwift-offline: https://gist.github.com/zoffline /b874e93e24439f0f4fbd7b55f3876fd2 Nota: no hay garantía de que una actualización de Zwift no probada funcione con zoffline. Sin embargo, históricamente, las actualizaciones de Zwift rara vez interrumpen la conexión.
Descargo de responsabilidad
Zwift es una marca comercial de Zwift, Inc., que no está afiliada con el creador de este proyecto y no respalda este proyecto.
Todos los nombres de productos y empresas son marcas comerciales de sus respectivos propietarios. El uso de ellos no implica ninguna afiliación o respaldo por parte de ellos.