LiveSplit é um programa de cronômetro para speedrunners fácil de usar e cheio de recursos.
Integração Speedrun.com: Speedrun.com está totalmente integrado ao LiveSplit. Você pode navegar pelas tabelas de classificação, baixar divisões e até mesmo enviar suas próprias corridas diretamente do LiveSplit. Você também pode mostrar os recordes mundiais dos jogos executados com o componente de recorde mundial.
Tempo preciso: o LiveSplit sincroniza automaticamente com um relógio atômico pela Internet para estimar imprecisões do cronômetro local no PC. O cronômetro do LiveSplit ajusta automaticamente o cronômetro local para corrigir essas imprecisões.
Tempo de jogo e divisão automática: o LiveSplit detectará automaticamente se o tempo de jogo e/ou divisão automática está disponível para um jogo e permitirá que você os ative no editor de divisões. O Game Time é lido automaticamente diretamente de um emulador ou jogo de PC, e você pode usá-lo alternando para Game Time em Compare Against.
Componente de vídeo: com o componente de vídeo, você pode reproduzir um vídeo de um arquivo local junto com sua execução. O vídeo começará quando você iniciar a corrida e parará sempre que você reiniciar. Você também pode especificar em que ponto o vídeo deve começar.
Corrida: No LiveSplit, você pode iniciar e participar de corridas no SpeedRunsLive ou racetime.gg dentro do próprio LiveSplit. O cronômetro inicia automaticamente quando a corrida começa e escreve automaticamente .done
sempre que você completa a corrida. Além disso, você pode comparar sua corrida atual com a de outros corredores durante a corrida, desde que eles também usem o LiveSplit.
Comparações: No LiveSplit, você pode alternar dinamicamente entre múltiplas comparações, mesmo no meio da execução. Você pode comparar sua execução com comparações que você mesmo define ou compará-la com várias comparações geradas automaticamente, como sua soma dos melhores segmentos ou sua execução média. Durante a corrida no SpeedRunsLive, as comparações para outros corredores também são geradas automaticamente.
Sistema de Layout: Os usuários podem modificar cada parte da aparência do LiveSplit usando Layouts. Cada usuário tem a capacidade de adicionar ou remover partes, além de reorganizar e personalizar cada parte do LiveSplit. Você pode até usar suas próprias imagens de fundo.
Redimensionamento dinâmico: o LiveSplit pode ser redimensionado para qualquer tamanho para que fique bem na transmissão. À medida que o tamanho do LiveSplit é alterado, todas as suas partes são automaticamente ampliadas para preservar sua aparência.
Compartilhando corridas: qualquer corrida pode ser compartilhada no Speedrun.com e X (Twitter). As divisões também podem ser distribuídas usando E/S de divisões e importadas de um URL. Você também pode compartilhar uma captura de tela de suas divisões com o Imgur ou salvá-la como um arquivo. Seu título do Twitch também pode ser atualizado com base no jogo que você está jogando.
Desenvolvimento de Componentes: Qualquer pessoa pode desenvolver seus próprios componentes que podem ser facilmente compartilhados e usados com LiveSplit. Componentes adicionais para download podem ser encontrados na Seção de Componentes.
Precisamos da sua ajuda!
Você pode navegar pelos problemas para encontrar bons problemas para começar. Selecione um que ainda não esteja concluído ou em andamento, atribua-o e arraste-o para "Em andamento".
git clone --recursive https://github.com/YourUsername/LiveSplit.git
git checkout -b new-feature
git commit -am 'Add a new feature'
git push origin new-feature
LiveSplit usa .NET Framework 4.8.1. Para compilar o LiveSplit, você precisa dos seguintes componentes instalados:
Após a clonagem, basta executar dotnet build LiveSplit.sln
na raiz do repositório.
Para usar o Visual Studio, você deve instalar uma versão que dê suporte à versão do SDK do .NET que você instalou. No momento em que este artigo foi escrito, a versão mais recente era Visual Studio 2022.
git clone --recursive https://github.com/LiveSplit/LiveSplit.git
git submodule update --init --recursive
A documentação sobre como desenvolver, testar e enviar um Auto Splitter pode ser encontrada aqui:
Documentação de divisores automáticos
O LiveSplit Server interno permite que outros programas e outros computadores controlem o LiveSplit. O servidor pode aceitar conexões por meio de um pipe nomeado localizado em \
( .
é o nome do host se o cliente e o servidor estiverem no mesmo computador), TCP/IP bruto ou um servidor WebSocket (WS) , localizado em ws://
.
O pipe nomeado está sempre aberto enquanto o LiveSplit está em execução, mas os servidores TCP e WS DEVEM ser iniciados antes que os programas possam se comunicar com eles (clique com o botão direito em LiveSplit -> Control -> Start TCP/WS Server). Você DEVE iniciar manualmente aquele que deseja usar sempre que iniciar o LiveSplit. Os servidores TCP e WS não podem ser executados ao mesmo tempo porque o servidor WS é executado sobre TCP/IP.
Porta do Servidor é a porta (uma entre milhares) em seu computador pela qual este programa envia dados. O padrão é 16834. Isso deve servir para a maioria das pessoas, mas dependendo das configurações de rede, algumas portas podem estar bloqueadas. Consulte também https://en.wikipedia.org/wiki/Port_%28computer_networking%29.
Fez algo legal? Considere adicioná-lo a esta lista.
Os comandos diferenciam maiúsculas de minúsculas e terminam com uma nova linha. Você pode fornecer parâmetros usando um espaço após o comando e enviando os parâmetros posteriormente (
).
Alguns comandos responderão com dados e outros não. Cada resposta termina com um caractere de nova linha. Observe que como o servidor WS tem um conceito de mensagens, os comandos e respostas enviados por ele não terminam em caracteres de nova linha.
Todos os horários e deltas retornados pelo servidor são formatados de acordo com o Constant Format Specifier do C#. O servidor aceitará horários no seguinte formato: [-][[[d.]hh:]mm:]ss[.fffffff]
. O campo horas pode ser maior que 23, mesmo que haja dias. Os campos individuais não precisam ser preenchidos com zeros. Qualquer comando que retorne uma hora ou uma string pode retornar um único hífen -
para indicar um valor "nulo" ou inválido. Comandos que usam COMPARISON ou NAME usam strings simples que podem incluir espaços. Como é usado como delimitador para marcar o final de um comando, os caracteres de nova linha podem não aparecer em nenhum lugar de um comando.
Comandos que não geram resposta:
Comandos que retornam um horário:
Comandos que retornam um int:
Comandos que retornam uma string:
pong
) Os comandos são definidos em ProcessMessage
em "CommandServer.cs".
import socket
s = socket . socket ( socket . AF_INET , socket . SOCK_STREAM )
s . connect (( "localhost" , 16834 ))
s . send ( b"starttimer n " )
import java . io . IOException ;
import java . io . PrintWriter ;
import java . net . Socket ;
public class MainTest {
public static void main ( String [] args ) throws IOException {
Socket socket = new Socket ( "localhost" , 16834 );
PrintWriter writer = new PrintWriter ( socket . getOutputStream ());
writer . println ( "starttimer" );
writer . flush ();
socket . close ();
}
}
O software que implementa Lua pode ser usado como cliente. No entanto, a biblioteca lua io deve estar disponível para uso do script, documentação completa disponível aqui.
require " io "
self . LSEndpoint = " \\ . \ pipe \ LiveSplit " -- Localhost LiveSplit pipe.
self . LSPipe = io.open ( self . LSEndpoint , " w " ) -- Open/start the pipe. Flush is required after every command.
self . LSPipe : write " starttimer n "
self . LSPipe : flush ()
self . LSPipe : close () -- This can be left open as needed.
Implementação do cliente Node.js disponível aqui: https://github.com/satanch/node-livesplit-client
LiveSplit_Build
e UpdateManagerExe
do build GitHub Actions para a nova tag Git.LiveSplit_1.8.21.zip
).UpdateManagerV2.exe
e UpdateManagerV2.exe.config
.update.xml
, update.updater.xml
e aos XMLs de atualização para quaisquer componentes que tenham sido alterados).A Licença MIT (MIT)
Copyright (c) 2013 Christopher Serr e Sergey Papushin
É concedida permissão, gratuitamente, a qualquer pessoa que obtenha uma cópia deste software e dos arquivos de documentação associados (o "Software"), para negociar o Software sem restrições, incluindo, sem limitação, os direitos de usar, copiar, modificar, mesclar , publicar, distribuir, sublicenciar e/ou vender cópias do Software e permitir que as pessoas a quem o Software seja fornecido o façam, sujeito às seguintes condições:
O aviso de direitos autorais acima e este aviso de permissão serão incluídos em todas as cópias ou partes substanciais do Software.
O SOFTWARE É FORNECIDO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DE QUALQUER TIPO, EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS DE COMERCIALIZAÇÃO, ADEQUAÇÃO A UM DETERMINADO FIM E NÃO VIOLAÇÃO. EM HIPÓTESE ALGUMA OS AUTORES OU DETENTORES DE DIREITOS AUTORAIS SERÃO RESPONSÁVEIS POR QUALQUER RECLAMAÇÃO, DANOS OU OUTRA RESPONSABILIDADE, SEJA EM UMA AÇÃO DE CONTRATO, ATO ILÍCITO OU DE OUTRA FORMA, DECORRENTE DE, OU EM CONEXÃO COM O SOFTWARE OU O USO OU OUTRAS NEGOCIAÇÕES NO SOFTWARE.