Skip to content

sc2ad/TournamentAssistant

 
 

Repository files navigation

THIS README IS INCOMPLETE! FEEL FREE TO HELP ME ADD TO IT!

TournamentAssistant

A program designed to make it easier to coordinate tournaments for the VR rhythm game Beat Saber

Contents:

  • How to install the plugin
  • How to coordinate a match
    • Basic
    • With stream sync
  • How to host a server
    • Windows
    • Linux
      • Bash script (TBA)
      • Terminal only
      • GUI

How to install the plugin

  • Download the latest version of the .dll from the repository or from your tournament coordinators (e.g. Beat The Hub discord).

  • After downloading the .dll open your steam client, right-click BeatSaber, goto manage, and click Browse local files. Screenshot 2021-02-03 141715 Screenshot 2021-02-03 141735 Screenshot (12)

  • After that, a window with the game files should open, when it does, open the location where you downloaded the .dll (Downloads folder by default) and drag n' drop it into the plugins folder. Screenshot 2021-02-03 142206 Screenshot 2021-02-03 142227 Screenshot (13)

  • After doing that, you should be good to go. If you encounter any issues, feel free to ask for help on BSMG or ask your tournament coordinators.

How To Coordinate a Match

  • Download the latest release build (TournamentAssistantUI.exe) from Releases

Usage

  • Run TournamentAssistantUI.exe
  • Enter the server address/port in the “Host IP” box
  • Enter your username in the “Username” box and click Connect
  • Click on the desired players’ names so that they become highlighted and then press the blue “Create Match” button
  • When in the Match Room, paste the desired song link or key into the “Song URL” box
  • Click “Load Song” and wait for a the song to load (If you look closely, you’ll notice the button itself is the progress bar)
  • Select your desired characteristic (standard, one saber, etc.), difficulty (easy-expert+), and modifiers (no fail, faster song, etc.)
  • Click the “Play Song” button

With Stream Sync (Optional)

  • Instead of clicking the “Play Song” button, click “Play Song (With Dual Sync)”
  • You will see a green box highlighting one of your monitors. Be sure the streams you want to sync are visible insdie that monitor
  • Note: If the matches are streamed to a central channel (as for most tournaments) you will have to use that channel for Sync. Do not sync by pulling up the players' individual streams

How to Host a Server

Windows

  • Download and extract the latest TournamentAssistantCore-windows.zip

  • Run TournamentAssistantCore.exe Screenshot 2021-01-09 172000

  • After a window similar to the screenshot above appears, you can close it and there should be a new file named serverConfig.json in the server directory. Screenshot 2021-01-09 173840

  • In this file, add your server address. It will need to be a domain name, direct IP addresses are not supported. Don't forget to remove the brackets Screenshot 2021-01-09 173306

  • You can also add a server name and password. Screenshot 2021-01-09 174423 Screenshot 2021-01-09 174953

  • Once thats done, you can save the changes and run TournamentAssistantCore.exe again. Screenshot 2021-01-09 175806

  • If the address got verified and port got opened, congratulations, you have just created your own server.

  • If the address got verified but port could not be opened, you will need to open the selected port in your router settings manually.

  • If the address failed to verify and port got opened successfully and you made sure that there aren't any spelling mistakes or that the domain is pointed at the correct IP (keep in mind that DNS entries take up to an hour to be created/changed) seek help on discord.

Linux

Bash script

TBA

Terminal only

I'll be using Arch Linux with neovim in this example. I won't provide screenshots here since I'll be assuming that you know what you're doing. If you don't, then I would recommend the GUI guide below.

  • Make a new directory where you want to save the server files and cd to it:mkdir TournamentAssistantCore && cd TournamentAssistantCore

  • Download the latest TournamentAssistantCore-linux using wget: wget https://github.com/MatrikMoon/TournamentAssistant/releases/download/0.4.1/TournamentAssistantCore-linux. This example command is for the version 0.4.1, if a new version has been released please replace the url with the new one

  • Make TournamentAssistantCore-linux executable using chmod +x /path/to/TournamentAssistantCore-linux.

  • Run TournamentAssistantCore-linux using ./TournamentAssistantCore-linux. After ~5 seconds close it with ctrl + c.

  • Open your terminal editor of choice and edit the configuration file: nvim serverConfig.json. You can use the screenshots from Linux GUI setup as a reference. Don't forget to remove the brackets.

    • Add your server address. It will need to be a domain name, direct IP addresses are not supported.
    • You can also add a server name and password.
  • Run TournamentAssistantCore-linux using ./TournamentAssistantCore-linux again.

  • If the address got verified and port got opened, congratulations, you have just created your own server.

  • If the address got verified but port could not be opened, you will need to open the selected port in your router settings manually.

  • If the address failed to verify and port got opened successfully and you made sure that there aren't any spelling mistakes or that the domain is pointed at the correct IP (keep in mind that DNS entries take up to an hour to be created/changed) seek help on discord.

GUI

I'll be using Arch Linux with KDE DE in this example

  • Download the latest TournamentAssistantCore-linux. I'd recommend using your home directory, just so you don't have to deal with sudo.
  • Make TournamentAssistantCore-linux executable using your file manager of choice or using chmod +x /path/to/TournamentAssistantCore-linux. (In the screenshot I am using nautilus) Screenshot_20210203_092620 Screenshot_20210203_092821
  • Open terminal and run ./TournamentAssistantCore-linux. If you saved the executable somewhere else you will have to either specify the path to it ./path/to/TournamentAssistantCore-linux or cd into the directory and then run ./TournamentAssistantCore-linux.

Do not doubleclick the executable, it will run headless and you won't be able to turn it off without killing the process in the terminal or rebooting.

in this example I have TournamentAssistantCore-linux in a subfolder in my home directory Screenshot_20210203_103524

  • Now press ctrl + c to close TournamentAssistantCore-linux and use your text/code editor of choice to edit the serverConfig.json configuration file. (In the screenshots I am using VS Code) Screenshot_20210203_105623

  • In this file, add your server address. It will need to be a domain name, direct IP addresses are not supported. Don't forget to remove the brackets.
    Screenshot_20210203_105340

  • You can also add a server name and password. Screenshot_20210203_105417 Screenshot_20210203_105453

  • After you finish configuration, save the file, open terminal and run ./TournamentAssistantCore-linux again. Screenshot_20210203_111845

  • If the address got verified and port got opened, congratulations, you have just created your own server.

  • If the address got verified but port could not be opened, you will need to open the selected port in your router settings manually.

  • If the address failed to verify and port got opened successfully and you made sure that there aren't any spelling mistakes or that the domain is pointed at the correct IP (keep in mind that DNS entries take up to an hour to be created/changed) seek help on discord.

TODO

Please help me improve this readme!

Contributing

Pull requests are welcome! Feel free to dm me on discord if you have any questions or concerns!

License

MIT

About

A program designed to make it easier to coordinate tournaments for the VR rhythm game Beat Saber

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 99.7%
  • Other 0.3%