- Python 99.4%
- Just 0.6%
|
|
||
|---|---|---|
| yarg_rh | ||
| .gitignore | ||
| generate_song_info.py | ||
| Justfile | ||
| LICENSE | ||
| pyproject.toml | ||
| README.md | ||
This is an Archipelago implementation for the open source, plastic band rhythm game, YARG!
This is private fork by Spenser which both changes how the AP world works and adds his his personal collection of songs from the official Guitar Hero/Rock Band games. This includes all songs from:
- Rock Band
- Rock Band 2
- Rock Band 3
- Green Day Rock Band
- Rock Band 4
- Lego Rock Band
- Rock Band Blitz
- Rock Band AC/DC
- The Beatles Rock Band
- Guitar Hero
- Guitar Hero 2
- Guitar Hero 3
- Guitar Hero Warriors of Rock
- Guitar Hero World Tour
- Guitar Hero 5
- Guitar Hero Smash Hits
- Guitar Hero Metallica
- Guitar Hero Van Halen
As well as most/all the DLC from each game. Rock Band 4 has no DLC available and the other Rock Bands may have gaps.
AP world Changes
The AP world has been practically entirely rewritten, both to refactor and also to change how the game plays to my preference. The code is simpler and formatted to my liking, and there's actually unit tests now.
But, the bigger change is that playing with this fork is quite different from the original:
- Goal is now based on obtaining a certain number of stars when playing songs.
- There are per-difficulty modifiers to make it so harder songs have less of their stars in logic, and to disable higher difficulties entirely.
- You can choose whether how stars are counted:
- Per Song: Play the song with any instrument.
- Per Instrument: Play the song with a specific instrument.
- Bandasanity: Play the song with ALL enabled instruments.
- Options to choose the number of starting instruments and songs.
- The logic for choosing starting songs is smarter now to ensure that the starting instruments chosen have enough tracks for a starting setlist.
- Options to include or exclude specific songs and artists.
- See Song Filtering below
Song Fitering
There are four YAML-only options you can use to include or exclude specific songs and artists from the song selection. These are all applied after filtering your songs by the enabled setlists and instruments options, but are applied in the order they're listed below:
include_songs: These songs will be included in the song pool. Songs must be specified in one of two ways:"<artist> - <song>"to include the song from any source. Ex. "Weezer - Say It Ain't So""<artist> - <song> from <source>"to specify the source of the song. Ex. "Strokes - Reptilia from Rock Band"
exclude_songs: These will not be added to the song pool. Must be specified the same asinclude_songsinclude_artists: A mappping of the artist name to the mimmum number of songs you want from them. Songs listed ininclude_songsapply to this count.exclude_artists: A list of artists to not include any songs from in the song pool.
Complete example
The following YAML snippet is an example of properly specifying the four options:
include_songs:
[
"Avenged Sevenfold - Bat Country from Rock Band 2 DLC",
"Electric Six - Gay Bar from Rock Band 2 DLC"
]
include_artists:
{
"Queens of the Stone Age": 2,
"The Who": 1,
"System of a Down": 2,
}
exclude_songs:
[
"Rick Springfield - Jessie's Girl"
]
exclude_artists:
[
"Dragonforce",
"Joe Satriani",
"Steve Vai",
"Yngwie Malmsteen's Rising Force",
]
Setup
- Download the YARC Launcher from https://yarg.in/
- Inside the YARC Launcher download "YARG Nightly" and the "YARG Official Setlist"
- Download the YARGAPClient from https://github.com/energymaster22/YARGAPClient/releases/latest
- Download Archipelago from https://github.com/ArchipelagoMW/Archipelago/releases/latest
- Set up Archipelago
- Download the YARG.apworld from https://github.com/energymaster22/YARGArchipelago/releases/latest
- Double click yarg.apworld to install it into Archipelago
- Select "Generate Template Options" from within Archipelago to get a default YAML
- Edit YARG.yaml to your liking and put it in your "Players" folder (should be one folder up from the "Templates" folder the previous step opened)
- Select "Generate" from within Archipelago
- Host your outputed multiworld either on https://archipelago.gg/ or locally
- Launch the YARGAPClient
- Click "Archipelago" on the main menu to open the login screen
- Input the host address, port and slot name and press connect! (Game ID should be left blank if not playing on a fork) (Leave blank if unsure)
Gameplay
- Your goal in YARG AP is to find and complete your goal song!
- The goal song may or may not be known depending on yaml settings.
- Go into "Quickplay"
- All of your collected songs will appear at the top in an "AP Songs" catagory
- Play the songs that appear there to get checks for your multiworld!
- When you get your goal song it will appear in an "AP Goal Song" catagory along with details on what you still need.
- Collect the rest of the YARG Gems in the multiworld to fully unlock the goal song.
- Play that song to finish the seed!
Current Notes
"Star Power Bonus" items grant 25% Star Power upon collection
If a song does not support your current instrument, or you otherwise cannot complete the song, you can use a bot player to clear it
Common Problems
My songs are not loading!
-
This can be caused by a few things. First make sure that you have downloaded the setlists from the YARC launcher.
-
Sometimes YARG needs to rescan of your library, to do so, go to Settings> Songs and click "Scan songs" up at the top
-
Other times YARG forks do not find the YARC setlists automatically. This is a slightly more involved fix:
- Open the YARC Launcher
- Scroll all the way down the left panel
- Click the Settings button on the bottom left
- Note the directory under "File Management"
- In the YARGAPClient go to Settings> Songs
- Click "Add New Folder"
- Click "Browse" on the new entry
- Navigate to the folder you saw in the YARC Launcher settings
- Within the YARC install folder selct the "Setlists" folder
- Click "Scan Songs"