Skip to content
/ YARG Public
forked from YARC-Official/YARG

Yet Another Rhythm Game inspired off of Rockband, Guitar Hero, Clone Hero, or similar.

License

Notifications You must be signed in to change notification settings

jtanan44/YARG

 
 

Repository files navigation

Warning

YARG is not done yet! Expect incomplete features and bugs!


👉 Disclaimer

We DO NOT encourage, advocate, or promote PIRATING of songs, or of anything else. This game's intended use is for you, the player, to play songs that you already own. This means, ripping songs of a game YOU OWN for YOURSELF for PERSONAL USE, or downloading creative commons/public domain songs off of the internet.

YARG has nothing to do with pirates. It stands for "Yet Another Rhythm Game."

📥 Downloading and Playing

An official installation video is available here.
A community made one is available as well, here.

Windows:

  1. Click here to view all releases.
  2. Download the lastest zip file by clicking on the "Assets" dropdown and then clicking on YARG_vX.X.X.zip.
  3. Extract the contents of the zip file by right clicking it and pressing "Extract All..."
  4. Click "Extract".
  5. Open the extracted folder and double-click YARG.exe (if you don't have file extensions on, it is called just YARG)
  6. You may get a "Windows protected your PC" error. This is because not many people have ran the program before, so Windows does not know if it is harmful or not. Click on "More info" and then "Run anyway" to run YARG anyways. If you don't trust me, please feel free to scan the folder with an anti-virus. Please note that some anti-viruses may have the same problem as Windows.
  7. Once you load in, click on "SETTINGS"
  8. Then, click on "Open Song Folder Manager"
  9. Next, click on "Add Folder." A new text box should pop-up. This is where your songs will come from.
  10. Choose your song folder. You can browse folder by click on the B.
  11. Once you've chosen your folder, click on "Select Folder". Please be sure that the folder has at least one song in it.
  12. Next click on "ADD/EDIT PLAYERS".
    1. Click on "Add Player"
    2. Then click on the device you will be playing with.
    3. Click on the dropdown and select what type of instrument you will be playing (i.e. "Five Fret", "Microphone", etc.)
    4. Depending on the input type, you may have to bind keys. To do this, click on each button and press the key of choice on your controller.
  13. Finally, click on "QUICK PLAY". YARG will cache all of the files into a yarg_cache.json file in the folder you chose. Doing this may take a while depending on the amount of songs you have. If you ever add more songs, be sure to go to "SETTINGS" and then click on "Refresh Cache". This will add the new songs into "QUICK PLAY".
  14. Have fun!

🔨 Building

Warning

If you would like to build the game yourself, please follow these instructions.

If you don't follow these instructions, YOU WILL NOT BE ABLE TO RUN THE GAME.

  1. Make sure you have Blender installed. This is for loading models, even if you don't plan on editing them.
  2. Make sure you have Python (3.10) installed. This is required to downloading dependencies.
  3. Clone the repository.
  4. Open the command prompt at the root of the directory, and type in:
    1. pip install requests
    2. python InstallLibraries/install.py. This may take a bit. Wait for the command prompt to say "Done!" before closing. This installs all needed dependencies for you.
  5. Open it in Unity version 2021.3.21f1 (LTS)
  6. Load in without entering safe mode.
  7. (You may need to) click on NuGet on the menu bar, then click on Restore Packages.
  8. You're ready to go!

✍️ Contributing

If you want to contribute, please feel free! Please read this first.

🛡️ License

YARG is licensed under the MIT License - see the LICENSE file for details.

🧰 External Licenses

Some libraries/assets are packaged with the source code have licenses that must be included.

Library License
NuGet for Unity MIT
Unity Standalone File Browser MIT
Concentus.OggFile Ms-PL
Discord GameSDK Licenseless
Lucide ISC

Please note that other libraries are not packaged within the source code, and are to be install by NuGet.

BASS is the audio library for YARG. It has it's own license for release.

📦 External Assets and Libraries

Note

YARG uses GuitarGame_ChartFormats as a "standard." The end goal is to get everything listed in that documentation to work without issue. This is currently not the case, but we are getting closer to that goal everyday!

Link Type Use
Unbounded Font Combo/Multipier Meter
Barlow Font UI Font
Material Symbols Icons UI Icons
Lucide Icons UI Icons
PolyHaven Assets Textures and Models
PlasticBand Reference Controller Support Info
GuitarGame_ChartFormats Reference File Format Documentation
NuGet for Unity Library NuGet Packages in Unity
EliteAsian's Unity Extensions Library Utility
Unity Standalone File Browser Library "Browse" Button
FuzzySharp Library Search Function
ini-parser Library Parsing song.ini Files
DryWetMidi Library Parsing .mid Files
TagLibSharp Library Finding Audio Metadata
Minis Library MIDI Input for Unity
Concentus Library Using .opus files
Concentus.OggFile Library Reading .opus Files
Discord GameSDK Library Discord Rich Presence

💸 Donate

Some people have expressed interest in donating. This is an open-source project and therefore donating is not required. If you do want to still help out, spread the word or contribute!

About

Yet Another Rhythm Game inspired off of Rockband, Guitar Hero, Clone Hero, or similar.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 81.8%
  • ShaderLab 14.6%
  • HLSL 2.5%
  • Other 1.1%