offline
zoffline permite o uso do Zwift offline agindo como uma implementação parcial de um servidor Zwift. Por padrão, o zoffline é apenas para um único jogador. Consulte a Etapa 6: Habilitar Multiplayer para saber como habilitar o suporte para vários usuários/perfis.
zoffline também oferece passeios contra fantasmas (seus passeios anteriores). Habilite este recurso marcando "Ativar fantasmas" no inicializador do zoffline. Consulte Fantasmas e bots para obter detalhes adicionais.
Além disso, o iniciador do zoffline permite selecionar um mapa específico para navegar sem mexer nos arquivos de configuração.
Instalar
A configuração do zoffline requer duas etapas principais. Primeiro, o zoffline deve ser instalado e executado em um sistema antes de executar o Zwift (no sistema que executa o Zwift ou em outro sistema em rede local). Em segundo lugar, o Zwift deve ser configurado para usar o zoffline em vez do servidor oficial do Zwift.
Etapa 1: instalar o zoffline
Existem três maneiras de instalar e executar o zoffline dependendo da sua plataforma:
Mais simples (somente Windows)
Para instalar o zoffline no Windows:- Baixe a versão mais recente do zoffline em https://github.com/zoffline/zwift-offline/releases/latest
- Se você deseja os RoboPacers, baixe o pacote de código-fonte e extraia o diretório
pace_partners
para a mesma pasta em que zoffline está.
- Se você não estiver executando o zoffline no mesmo PC que o Zwift está executando: crie um arquivo
server-ip.txt
no diretório storage
contendo o endereço IP do PC executando o zoffline. - Execute o zoffline.exe baixado
- Depois de executado, o zoffline criará um diretório
storage
na mesma pasta para armazenar o progresso do Zwift.
- Inicie o Zwift com zoffline.exe em execução ( após concluir a etapa 2 ou executar o script configure_client em https://github.com/oldnapalm/zoffline-helper/releases/latest)
- O zoffline leva alguns segundos para iniciar. Espere até que o texto apareça no prompt de comando antes de abrir o Zwift.
- Quando terminar com o Zwift, pressione Ctrl+C na linha de comando para fechar o zoffline.
Linux, Windows ou macOS (da fonte)
Para instalar o zoffline no Linux, Windows ou macOS:- Instale o Python 3 (https://www.python.org/downloads/) se ainda não estiver instalado
- No Windows, é altamente recomendável instalar o Python por meio da Microsoft Store! Se estiver usando um instalador Python, certifique-se de que na primeira tela do instalador Python "Adicionar Python 3.x ao PATH" esteja marcado.
- Clone ou baixe este repositório
- Instalar dependências
- por exemplo, no Linux/Mac:
pip3 install -r requirements.txt
- por exemplo, no Windows no prompt de comando:
pip install -r requirements.txt
- Pode ser necessário usar
C:UsersAppDataLocalProgramsPythonPythonScriptspip.exe
em vez de apenas pip
- Se você não estiver executando o zoffline no mesmo PC que o Zwift está executando: crie um arquivo
server-ip.txt
no diretório storage
contendo o endereço IP do PC executando o zoffline. - Execute standalone.py antes de iniciar o Zwift
- por exemplo, no Linux/Mac:
sudo ./standalone.py
- sudo é necessário porque estamos vinculando às portas privilegiadas 80 e 443.
- Se Python 3 não for o padrão do seu sistema, execute
sudo python3 standalone.py
- por exemplo, no Windows no prompt de comando:
python standalone.py
- Pode ser necessário usar
C:UsersAppDataLocalProgramsPythonPythonpython.exe
em vez de apenas python
- Inicie o Zwift com standalone.py em execução ( após concluir a etapa 2 )
- Nota: Ao atualizar o zoffline, certifique-se de manter o diretório
storage
. Ele contém seu estado de progresso do Zwift.
O zoffline pode ser instalado na mesma máquina que o Zwift ou em outra máquina local.
Usando Docker
- Instale o Docker
- Crie o contêiner docker com:
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, você pode excluir
-v :/usr/src/app/zwift-offline/storage
se não se importar se o estado de progresso do Zwift for mantido nas atualizações zoffline (improvável). - O caminho que você passa para
-v
provavelmente precisará ser legível e gravável. - Uma lista de valores válidos
(por exemplo, América/Nova_Iorque) pode ser encontrada aqui. - Adicionar
--restart unless-stopped
fará com que o zoffline seja iniciado na inicialização se você tiver o Docker v1.9.0 ou superior.
- Se você não estiver executando o zoffline no mesmo PC que o Zwift está executando: crie um arquivo
server-ip.txt
no diretório
contendo o endereço IP do PC executando o zoffline. - Inicie o zoffline com:
docker start zwift-offline
Usando Docker Compose
- Instale o docker-compose
- Use o arquivo
docker-compose.yml
neste repositório que será compilado a partir do Dockerfile ou use este arquivo de composição de exemplo: 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
- Se você não estiver executando o zoffline no mesmo PC que o Zwift está executando: crie um arquivo
server-ip.txt
no diretório storage
contendo o endereço IP do PC executando o zoffline. - Inicie o zoffline com:
docker-compose up -d
Etapa 2: configurar o cliente Zwift para usar o zoffline
Instruções do Windows
- Instale o Zwift
- Se a sua versão do Zwift for 1.0.136426, está tudo pronto.
- Se o Zwift não estiver instalado, instale-o antes de instalar o zoffline.
- Se a sua versão do Zwift for mais recente que 1.0.136426 e o zoffline estiver sendo executado a partir da fonte: copie
C:Program Files (x86)ZwiftZwift_ver_cur.xml
para cdn/gameassets/Zwift_Updates_Root/
do zoffline sobrescrevendo o arquivo existente. - Se a sua versão do Zwift for mais recente que 1.0.136426 e o zoffline não estiver sendo executado a partir do código-fonte: aguarde a atualização do zoffline.
- NOTA: em vez de executar as etapas abaixo, você pode simplesmente executar o script configure_client em https://github.com/oldnapalm/zoffline-helper/releases/latest
- Em sua máquina Windows executando o Zwift, copie os seguintes arquivos deste repositório para um local conhecido:
- ssl/cert-zwift-com.p12
- ssl/cert-zwift-com.pem
- Abra o prompt de comando como administrador, vá para esse local e execute
-
certutil.exe -importpfx Root cert-zwift-com.p12
- Se for solicitada uma senha, deixe-a em branco. Não há senha.
- Abra o Bloco de Notas como administrador e abra
C:Program Files (x86)Zwiftdatacacert.pem
- Anexe o conteúdo de
ssl/cert-zwift-com.pem
a cacert.pem
- Abra o Bloco de Notas como administrador e abra
C:WindowsSystem32Driversetchosts
- Anexe esta linha:
us-or-rly101.zwift.com secure.zwift.com cdn.zwift.com launcher.zwift.com
(Onde
é o endereço IP da máquina que executa o zoffline. Se estiver rodando na mesma máquina que o Zwift, use 127.0.0.1
como o ip.)
- Se desejar deixar o arquivo
hosts
inalterado, exceto quando usar especificamente o zoffline, você pode opcionalmente usar o script launch.bat dentro do diretório scripts
para iniciar o zoffline em vez de usar o Zwift Launcher normal. Consulte o nº 121 para obter detalhes.
Por quê: Precisamos redirecionar o Zwift para usar o zoffline e convencer o Windows e o Zwift a aceitar os certificados autoassinados do zoffline para os nomes de domínio do Zwift. Sinta-se à vontade para gerar seus próprios certificados e fazer o mesmo.
Instruções macOS
- Instale o Zwift
- Se a sua versão do Zwift for 1.0.136426, está tudo pronto.
- Se o Zwift não estiver instalado, instale-o antes de instalar o zoffline.
- Se a sua versão do Zwift for mais recente que 1.0.136426: copie
~/Library/Application Support/Zwift/ZwiftMac_ver_cur.xml
para cdn/gameassets/Zwift_Updates_Root/
do zoffline sobrescrevendo o arquivo existente.
- Em sua máquina Mac executando Zwift, copie o arquivo ssl/cert-zwift-com.pem neste repositório para um local conhecido.
- Abra o Keychain Access, selecione "Sistema" em "Chaves", selecione "Certificados" em "Categoria"
- Clique em "Arquivo - Importar Itens..." e importe cert-zwift-com.pem
- Clique com o botão direito em "*.zwift.com", selecione "Obter informações" e em "Confiar" escolha "Ao usar este certificado: sempre confiar".
- No local cert-zwift-com.pem, execute
sed -n '29,53p' cert-zwift-com.pem >> ~/Library/Application Support/Zwift/data/cacert.pem
- Usando um editor de texto (com privilégios de administrador) abra
/etc/hosts
- Anexe esta linha:
us-or-rly101.zwift.com secure.zwift.com cdn.zwift.com launcher.zwift.com
(Onde
é o endereço IP da máquina que executa o zoffline. Se estiver rodando na mesma máquina que o Zwift, use 127.0.0.1
como o ip.)
Por quê: Precisamos redirecionar o Zwift para usar o zoffline e convencer o macOS e o Zwift a aceitar os certificados autoassinados do zoffline para os nomes de domínio do Zwift. Sinta-se à vontade para gerar seus próprios certificados e fazer o mesmo.
Android (dispositivo sem root)
- Instale os aplicativos necessários:
- Baixe e instale
ZofflineObb.apk
aqui - Baixe e instale
app-Github-release.apk
aqui - Crie um arquivo
hosts.txt
para usar com o aplicativo (você pode usar um aplicativo editor de texto ou criá-lo online com uma ferramenta online como esta). O arquivo deve ficar assim (substitua
pelo endereço IP da máquina que executa o zoffline):
us-or-rly101.zwift.com
secure.zwift.com
cdn.zwift.com
- Desative o "DNS privado" nas configurações do Android
- Execute "Virtual Hosts" e selecione o arquivo
hosts.txt
criado - Opcionalmente, em vez de usar o aplicativo "Virtual Hosts", você pode criar um arquivo
fake-dns.txt
no diretório storage
e definir o "DNS 1" da conexão Wi-Fi do seu telefone para o endereço IP do PC executando o zoffline - Nota: Se você sabe o que está fazendo e tem um roteador capaz o suficiente, você pode ajustar seu roteador para alterar esses registros DNS em vez de usar o aplicativo “Hosts Virtuais” ou alterar o DNS do seu telefone.
- Patch após cada instalação ou atualização:
- Instale/atualize o Zwift do Google Play, mas não o inicie ainda.
- Se você já o iniciou, vá para
Android Settings > Applications > Zwift
e limpe os dados ou desinstale e reinstale o aplicativo.
- Abra o aplicativo
ZofflineObb
e execute-o (permitir acesso ao armazenamento) - Aguarde o processo terminar (5-10min)
- Execute o Zwift, espero que ele verifique o download e execute
- Jogue Zwift:
- O botão Virtual Hosts deve estar ativado
- Inicie o Zwift e faça login usando qualquer e-mail/senha ou crie um novo usuário se o modo multijogador estiver ativado.
Por quê: Precisamos redirecionar o Zwift para usar o zoffline (isso é feito pelo aplicativo Virtual Hosts) e convencer o Zwift a aceitar os certificados autoassinados do zoffline para os nomes de domínio do Zwift (isso é feito pela ferramenta de patch ZofflineObb).
Android (dispositivo com acesso root)
- Instale o Zwift no dispositivo
- Abra o Zwift uma vez para concluir a instalação (ou seja, baixar todos os arquivos extras).
- Anexe o conteúdo de
ssl/cert-zwift-com.pem
a /data/data/com.zwift.zwiftgame/dataES/cacert.pem
no dispositivo- Nota: este arquivo só existirá após a primeira execução do Zwift, pois é baixado após a instalação inicial
- Abordagem simples para conseguir isso se o seu dispositivo não tiver um editor de texto:
-
adb push ssl/cert-zwift-com.pem /data/data/com.zwift.zwiftgame/dataES/
- No
adb shell
: cd /data/data/com.zwift.zwiftgame/dataES/
- No
adb shell
: cat cert-zwift-com.pem >> cacert.pem
- Seja como for, certifique-se de que as permissões e a propriedade do arquivo permaneçam as mesmas.
- Modifique o arquivo
/etc/hosts
do dispositivo- Anexe esta linha:
us-or-rly101.zwift.com secure.zwift.com cdn.zwift.com
(Onde
é o endereço IP da máquina que executa o zoffline.) - Se não houver editor de texto no dispositivo, recomende:
-
adb pull /etc/hosts
- (modificar no PC)
-
adb push hosts /etc/hosts
- Nota: Se você sabe o que está fazendo e possui um roteador capaz o suficiente, você pode ajustá-lo para alterar esses registros DNS em vez de modificar seu arquivo
hosts
.
- Inicie o Zwift e faça login usando qualquer e-mail/senha ou crie um novo usuário se o modo multijogador estiver ativado.
Por quê: Precisamos redirecionar o Zwift para usar o zoffline e convencer o Zwift a aceitar os certificados autoassinados do zoffline para os nomes de domínio do Zwift. Sinta-se à vontade para gerar seus próprios certificados e fazer o mesmo.
Ativando/desativando zoffline
Para usar o Zwift online normalmente, comente ou remova a linha adicionada ao arquivo hosts
antes de iniciar o Zwift. Em seguida, certifique-se de que o Zwift esteja totalmente fechado (clique com o botão direito no ícone da bandeja do sistema do Zwift e saia) e reinicie o Zwift.
Etapa 3 [OPCIONAL]: Obtenha o perfil Zwift atual
Expandir
Se você não obtiver seu perfil atual do Zwift antes de iniciar o Zwift com o zoffline ativado, você será solicitado a criar um novo perfil (altura, peso, sexo). Seu perfil pode ser personalizado e alterado através do menu do jogo (por exemplo, nome, nacionalidade, mudança de peso, etc.).
Para obter seu perfil atual:
- NOTA: em vez de executar as etapas abaixo, você pode usar o botão "Configurações - Zwift" na janela do iniciador (somente Windows e macOS).
- Certifique-se de que zoffline esteja desativado.
- Execute
scripts/get_profile.py -u
- Ou, se estiver usando a versão zoffline.exe do Windows sem Python instalado, você pode executar
get_profile.exe
obtido em https://github.com/oldnapalm/zoffline-helper/releases/latest no lugar de scripts/get_profile.py
- Mova o
profile.bin
, achievements.bin
e economy_config.txt
resultantes (salvos em qualquer diretório em que você executou get_profile.py) para o diretório storage/1
.- Se estiver usando zoffline.exe no Windows, crie um diretório
storage/1
dentro da mesma pasta que zoffline.exe se ele ainda não existir. - Se estiver usando Docker, o diretório
1
deve estar no caminho que você passou para -v
Etapa 4 [OPCIONAL]: Carregar atividades no Strava
Expandir
- Obtenha CLIENT_ID e CLIENT_SECRET em https://www.strava.com/settings/api
- NOTA: em vez de executar as etapas abaixo, você pode definir o domínio de retorno de chamada de autorização do seu aplicativo API para
launcher.zwift.com
e usar o botão "Configurações - Strava" na janela do iniciador (somente Windows e macOS). - Execute
scripts/strava_auth.py --client-id CLIENT_ID --client-secret CLIENT_SECRET
- Ou, se estiver usando a versão zoffline.exe do Windows sem Python instalado, você pode executar
strava_auth.exe
obtido em https://github.com/oldnapalm/zoffline-helper/releases/latest no lugar de scripts/strava_auth.py
- Abra http://localhost:8000/ e autorize.
- Mova o
strava_token.txt
resultante (salvo em qualquer diretório em que você executou strava_auth.py
) para o diretório storage/1
. - Se estiver testando, ande pelo menos 300 metros, atividades mais curtas não serão carregadas.
- O upload automático de capturas de tela não é possível; consulte o item 28 para obter detalhes.
Etapa 5 [OPCIONAL]: Carregar atividades para o Garmin Connect
Expandir
- Se estiver executando a partir do código-fonte, instale garth:
pip install garth
- Se necessário, crie um arquivo
garmin_domain.txt
no diretório storage
que contém o domínio- Para a China, use
garmin.cn
- NOTA: em vez de executar a etapa abaixo, você pode usar o botão "Configurações - Garmin" na janela do iniciador para inserir suas credenciais (somente Windows e macOS).
- Crie um arquivo
garmin_credentials.txt
no diretório storage/1
contendo suas credenciais de login - Nota: isso não é seguro. Faça isso apenas se você se sentir confortável com o armazenamento de suas credenciais de login em um arquivo de texto não criptografado.
- Se estiver testando, ande pelo menos 300 metros, atividades mais curtas não serão carregadas.
Etapa 6 [OPCIONAL]: Habilitar multijogador
Expandir
Para ativar o suporte para vários usuários, execute as etapas abaixo:
- Crie um arquivo
multiplayer.txt
no diretório storage
. - Se você não estiver executando o zoffline no mesmo PC que o Zwift está executando: crie um arquivo
server-ip.txt
no diretório storage
contendo o endereço IP do PC executando o zoffline.- As portas TCP 80, 443, 3025 e a porta UDP 3024 precisarão estar abertas no PC executando o zoffline se estiver sendo executado remotamente.
- Inicie o Zwift e crie uma conta.
- Esta conta existirá apenas no seu servidor zoffline e não tem relação com a sua conta Zwift real.
Etapa 7 [OPCIONAL]: Instale o aplicativo Zwift Companion
Android (dispositivo sem root)
- Instale o apk-mitm (https://github.com/shroudedcode/apk-mitm)
- Abra
apk-mitm/dist/tools/apktool.js
(execute npm root -g
para encontrar sua localização) e edite-o assim: decode ( inputPath , outputPath ) {
return this . run ( [
'decode' ,
'-resm' , // add this
'dummy' , // add this
inputPath ,
'--output' ,
outputPath ,
'--frame-path' ,
this . options . frameworkPath ,
] , 'decoding' ) ;
}
- Copie o arquivo ssl/cert-zwift-com.pem neste repositório e o apk Zwift Companion (por exemplo,
zca.apk
) para um local conhecido - Abra o prompt de comando, faça cd para esse local e execute
-
apk-mitm --certificate cert-zwift-com.pem zca.apk
- Copie
zca-patched.apk
para o seu telefone e instale-o - Baixe e instale
app-Github-release.apk
aqui - Crie um arquivo
hosts.txt
para usar com o aplicativo (você pode usar um aplicativo editor de texto ou criá-lo online com uma ferramenta online como esta). O arquivo deve ficar assim (substitua
pelo endereço IP da máquina que executa o zoffline): us-or-rly101.zwift.com
secure.zwift.com
- Importante: não adicione
cdn.zwift.com
a hosts.txt
, o Companion precisa baixar imagens do servidor oficial
- Desative o "DNS privado" nas configurações do Android
- Execute "Virtual Hosts" e selecione o arquivo
hosts.txt
criado - Opcionalmente, em vez de usar o aplicativo "Virtual Hosts", você pode criar um arquivo
fake-dns.txt
no diretório storage
e definir o "DNS 1" da conexão Wi-Fi do seu telefone para o endereço IP do PC executando o zoffline - Nota: Se você sabe o que está fazendo e tem um roteador capaz o suficiente, você pode ajustar seu roteador para alterar esses registros DNS em vez de usar o aplicativo “Hosts Virtuais” ou alterar o DNS do seu telefone.
Etapas extras opcionais
Expandir
- Para obter a programação oficial do mapa e atualizar os arquivos do servidor Zwift: crie um arquivo
cdn-proxy.txt
no diretório storage
. Isso só funcionará se você estiver executando o zoffline em uma máquina diferente da do cliente Zwift.- Se esta opção estiver desabilitada, o zoffline tentará fazer proxy usando o DNS público do Google para resolver nomes de host do Zwift. Isso deve funcionar mesmo se o zoffline estiver sendo executado na mesma máquina que o cliente Zwift. Para evitar isso, crie um arquivo
disable_proxy.txt
no diretório storage
.
- Para ativar o recurso de redefinição de senha quando o modo multijogador estiver ativado: crie um arquivo
gmail_credentials.txt
no diretório storage
contendo as credenciais de login de uma conta do Gmail. Você precisa acessar https://security.google.com/settings/security/apppasswords e criar uma senha de aplicativo para permitir o login do servidor. - Para habilitar o bot Discord bridge:
pip3 install discord.py
e crie um arquivo discord.cfg
no diretório storage
que contém [discord]
token =
webhook =
channel =
welcome_message =
help_message =
- Se o cliente Zwift estiver tendo problemas para se conectar ao servidor Linux ("A solicitação foi abortada: não foi possível criar um canal seguro SSL/TLS." ou "A conexão subjacente foi fechada: ocorreu um erro inesperado em um envio. Foi recebido um EOF inesperado ou 0 bytes do fluxo de transporte."): altere MinProtocol em /etc/ssl/openssl.cnf para TLSv1.0
[system_default_sect]
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1
Fantasmas e bots
Expandir
Fantasmas
- Habilite este recurso marcando "Ativar fantasmas" no inicializador do zoffline.
- Se você estiver executando o Zwift no Android, crie um arquivo
enable_ghosts.txt
dentro da pasta storage
.- Se o multiplayer estiver habilitado, acesse
https:///login/
, marque "Ativar fantasmas" e clique em "Iniciar Zwift" para salvar a opção.
- Quando você salva uma atividade, o fantasma será salvo em
storage//ghosts//
. Da próxima vez que você percorrer a mesma rota, o fantasma será carregado. - Digite
.regroup
no chat para reagrupar os fantasmas. - O equipamento pode ser customizado criando um arquivo
ghost_profile.txt
dentro da pasta storage
. O script find_equip.py
pode ser usado para preencher este arquivo.
Robôs
- Crie um arquivo
enable_bots.txt
dentro da pasta storage
para carregar fantasmas como bots, eles continuarão andando independentemente da rota que você estiver percorrendo. - Opcionalmente,
enable_bots.txt
pode conter um valor multiplicador (tenha cuidado, se o número resultante de bots for muito alto, pode causar problemas de desempenho ou nem funcionar). - Nomes, nacionalidades e equipamentos podem ser customizados criando um arquivo
bot.txt
dentro da pasta storage
. Os scripts get_pro_names.py
e get_strava_names.py
podem ser usados para preencher este arquivo. - Se você quiser alguns bots aleatórios, verifique este repositório.
RoboPacers (anteriormente conhecido como Pace Partners)
- RoboPacers são fantasmas salvos por meio de um simulador de energia.
- O fantasma deve ser gravado usando uma frequência de atualização de 1 segundo (o padrão é 3 segundos).
- A atividade deve começar e terminar na mesma posição e velocidade, caso contrário o bot não fará um loop suave.
- O perfil deve conter um ID de jogador único e o ID da rota, para que ao entrar no bot você faça os mesmos turnos nos cruzamentos.
- O script
bot_editor.py
pode ser usado para modificar profile.bin
(definir nome, ID do jogador e ID da rota) e route.bin
(cortar os pontos excedentes para fazer um loop perfeito). - Se você deseja criar um RoboPacer dinâmico (aumentar a potência nas subidas e diminuir nas descidas), você pode usar standalone_power.py (requer 2 bastões ANT, python-ant e PowerMeterTx.py).
Favoritos
Expandir
- Ao terminar uma atividade, sua última posição será salva como marcador.
- Os favoritos também podem ser salvos usando o comando
.bookmark
no chat. - Você pode iniciar uma nova atividade a partir de um marcador selecionando-o em “Join a Zwifter” na tela inicial.
- Você pode se teletransportar para um marcador usando o ícone de teletransporte na barra de ação.
Tabelas de classificação de todos os tempos
Expandir
- Para ativar placares de todos os tempos (substituir resultados ao vivo de 60 minutos e recordes pessoais de 90 dias), crie um arquivo
all_time_leaderboards.txt
no diretório storage
. - As camisas ainda são válidas por 60 minutos, mas serão concedidas somente quando um novo recorde histórico for estabelecido.
Direitos
Expandir
- Para desbloquear direitos (equipamento especial), crie um arquivo
unlock_entitlements.txt
no diretório storage
. - Para desbloquear todos os equipamentos, crie um arquivo
unlock_all_equipment.txt
.
Servidor Discord da comunidade e clube Strava
Junte-se ao servidor Discord suportado pela comunidade e ao clube Strava.
Dependências
Docker
-ou-
- Python 3 (https://www.python.org/downloads/)
- Frasco (https://flask.palletsprojects.com/)
- python-protobuf (https://pypi.org/project/protobuf/)
- pyJWT (https://pyjwt.readthedocs.io/)
- Login do Flask (https://flask-login.readthedocs.io/)
- Flask-SQLAlchemy (https://flask-sqlalchemy.palletsprojects.com/)
- evento (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/)
Observação
Atualizações futuras do Zwift podem interromper o zoffline até que seja atualizado. Enquanto o zoffline estiver ativado, as atualizações do Zwift não serão instaladas. Se uma atualização zoffline quebrou alguma coisa, verifique o CHANGELOG
para possíveis alterações que precisam ser feitas.
Não exponha o zoffline à internet, ele não foi projetado pensando nisso.
Se o zoffline estiver desatualizado no cliente oficial do Zwift
Se o zoffline estiver atrasado no suporte ao cliente Zwift mais recente, ele poderá ser atualizado (se estiver executando Linux) para ser executado usando a versão mais recente do Zwift, executando este script no repositório zwift-offline: https://gist.github.com/zoffline /b874e93e24439f0f4fbd7b55f3876fd2 Nota: não há garantia de que uma atualização não testada do Zwift funcionará com o zoffline. No entanto, historicamente, as atualizações do Zwift raramente quebram o zoffline.
Isenção de responsabilidade
Zwift é uma marca registrada da Zwift, Inc., que não é afiliada ao criador deste projeto e não o endossa.
Todos os nomes de produtos e empresas são marcas registradas de seus respectivos proprietários. O uso deles não implica qualquer afiliação ou endosso por parte deles.