![Stories in Progress](https://badge.waffle.io/LiveSplit/LiveSplit.png?label=in progress&title=In Progress)
LiveSplit is a timer program for speedrunners that is both easy to use and full of features.
Game Time and Auto Splitting: LiveSplit will automatically detect if Game Time and/or Auto Splitting is available for a game and lets you activate it in the Splits Editor. Game Time reads directly from an emulator or PC game, and you can use it by switching to Game Time under Compare Against.
Video Component: With the Video Component, you can play a video from a local file alongside your run. The video will start when you start your run and stop whenever you reset. You can also specify at what point the video should start at.
SpeedRunsLive Racing: In LiveSplit, you are able to start and join races on SpeedRunsLive within LiveSplit itself. The timer automatically starts when the race begins and automatically writes “.done” whenever you complete the race. Also, you are able to compare your current run with the other runners during the race, as long as they use LiveSplit as well.
Comparisons: In LiveSplit, you are able to dynamically switch between multiple comparisons, even mid-run. You can either compare your run to comparisons that you define yourself or compare it to multiple automatically generated comparisons, like your sum of best or your average run. While racing on SpeedRunsLive, comparisons for the other runners are automatically generated as well.
Dynamic Resizing: LiveSplit can be resized to any size so that it looks good on stream. As LiveSplit’s size is changed, all of its parts are automatically scaled up in order to preserve its appearance.
Layout System: Users can modify every part of LiveSplit’s appearance using layouts. Every user has the ability to add or remove parts along with being able to rearrange and customize each part of LiveSplit.
Sharing Runs: Any run can be shared to websites such as PBTracker, AllSpeedruns, Congratsio and Twitter. Splits can also be distributed using Splits.io and imported from a URL. You can also share a screenshot of your splits to Imgur or save it as a file. Your Twitch title can be updated as well based on the game you are playing. Additional websites will be supported in the future.
OBS Plugin: The LiveSplit plugin for OBS (Open Broadcaster Software) allows users to easily use LiveSplit in their streams, including putting LiveSplit over a background or a game capture without the need to chroma key.
Gamepad Support: You can easily use gamepads, steering wheels, foot pedals, special mouse keys for controlling LiveSplit if you want to. You don’t need to simulate keyboard keys to use them. It just works.
Component Development: Anyone can develop their own components that can easily be shared and used inside LiveSplit. Additional components that will be released can be found in the Components Section.
We need your help!
You can browse the Issues to find good issues to get started with. Select one that is not already done or in progress, assign yourself and drag it over to "In Progress".
- Fork the project
- Clone your forked repo:
git clone https://github.com/YourUsername/LiveSplit.git
- Create your feature/bugfix branch:
git checkout -b new-feature
- Commit your changes to your new branch:
git commit -am 'Add a new feature'
- Push to the branch:
git push origin new-feature
- Create a new Pull Request!
LiveSplit is written in C# 5 with Visual Studio and uses .NET Framework 4.0. To compile LiveSplit you can get any version of Visual Studio that supports .NET Framework 4.0, these include:
- Visual C# 2010 Express
- Visual Studio 2010
- Visual Studio 2013 Express for Windows Desktop
- Visual Studio 2013 Community Edition
- Visual Studio 2013
- Visual Studio 2015 Preview
Preferably you should either get a full version of Visual Studio 2013 or the Community Edition if you don't want to pay for Visual Studio.
Simply open the project with Visual Studio and it should be able to compile and run it without any further configuration.
- LiveSplit has a dependency on XSplit in order to work. If you are getting errors that say it can't find "VHMediaCOM", this is an XSplit thing. I suggest installing the free version of XSplit so the dependencies are registered on your computer.
- Could not build Codaxy.Xlio due to sgen.exe not being found. Open LiveSplit\Libs\xlio\Source\Codaxy.Xlio\Codaxy.Xlio.csproj in order to edit where it looks for this path. Look for <SGen...> where it defines the attribute "ToolPath". Look on your computer to find the proper path. It is typically down some path such as "C:\Program Files (x86)\Microsoft SDKs\Windows\x.xA...". Find the version you want to use and bin folder with sgen.exe in it and replace the path in the .csproj file.
- No submodules pulled in when you fork/clone the repo which causes the project not to build. There are two ways to remedy this:
- Cloning for the first time:
git clone --recursive git://repo/repo.git
- If already cloned, execute this in the root directory:
git submodule update --init --recursive
If you implemented an Auto Splitter and want to add it to the Auto Splitters that are automatically being downloaded by LiveSplit, feel free to add it to the Auto Splitters XML. Just click the link, click the icon for modifying the file and Github will automatically create a fork, branch and pull request for you, which we can review and then merge in.
The MIT License (MIT)
Copyright (c) 2014 Christopher Serr and Sergey Papushin
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.