ff-meli / OrchestrionPlugin

Simple BGM management plugin for XivLauncher
MIT License
12 stars 47 forks source link

Automatic BGM information updating #13

Closed lmcintyre closed 3 years ago

lmcintyre commented 3 years ago

Resolves #2 with automatic BGM updating. The sheet it uses as a source is located here and will be maintained by myself. I've already fixed a lot of song names, locations, and resolved incorrect song names. I am usually available and get comments sent straight to my e-mail so I'd like to think I will update it swiftly.

Because Title Edit uses this sheet with the same updating system, I thought why not PR to the actual BGM plugin. On startup, the sheet is fetched in csv form from the above Google sheet, parsed, and saved as the new csv file if it parses correctly. The included csv has been modified to be parseable by the same code, as a backup.

The third column in the sheet is for additional comments or information about a track, so that has been added to the interface on a new line and is also searchable. Screenshot_10566

The only issues here are that in pursuit of full documentation, some songs display badly: Screenshot_10564 when the window is expanded: Screenshot_10565

I don't see this as much of an issue, but I can attempt to find a better solution if you'd like, assuming you like this idea in general. Thanks for reading.

(As a side note, the plugin is also now compatible with the LivePluginLoader)

ff-meli commented 3 years ago

Thank you!

I'll try to test this out soon - I haven't had much time lately to work on things (or to play the game at all, really), but it'd be nice to get this in.

I might tweak the behavior at some point later, but at a glance I think this should be fine.

Krude commented 3 years ago

Would be nice to have a "[✓] Automatically update songlist on start" option in the settings for this, in case you want to use your own / a modified songlist and not have it overwritten every time.

ff-meli commented 3 years ago

Merging this into a wip branch so I can work on it and some of the other pending changes (hopefully this doesn't break github)