tpill90 / battlenet-lancache-prefill

CLI tool to automatically prefill a Lancache with Battle.Net games
https://tpill90.github.io/battlenet-lancache-prefill/
MIT License
72 stars 10 forks source link

[Feature] Support for "pre-release content" #114

Closed darki73 closed 1 month ago

darki73 commented 4 months ago

Going through the BlizzTrack, i've noticed that some products have the bgdl type of version. Given the fact that Season 9 of Overwatch 2 is coming in roughly 50 hours and they do indeed make the minor version of semver they use for the game version match the season, i've noticed that bgdl is indeed 2.9.0.0.

Here are some of the example links:

  1. Overwatch 2 - https://blizztrack.com/view/pro?type=bgdl
  2. World of Warcraft (Retail) - https://blizztrack.com/view/wow?type=bgdl

Just guessing that bgdl is shorthand for background download, which i assume means "pre-release content".

So if you will have time, this might be a nice feature to implement as it will allow user to truly pre-cache some of the Blizzard games.

tpill90 commented 1 month ago

Hi Ivan,

Sorry to get back to you so late on this.

Long story short... the way Battle.Net's has its pre-release content setup it isn't as simple as switching out a version number. I've dug deep into this twice to see what I could figure out, and both times I've come out empty handed. The way that they have their CDN setup is incredibly confusing and very difficult to poke through, its endless MD5 hash after MD5 hash with very little human readable info. Which makes it very hard to know if you're making any progress at all.

The other aspect of this that I considered is the risk of breaking something in the codebase while working on this. The code is completely stable and I wouldn't want to potentially affect that for a small gain in occasionally preloading content.

I think the best solution here would be to setup a cron job (or other scheduled job) that runs frequently to pickup the update when it releases. It won't be perfect, but it could be pretty close if run on an hourly schedule or so.

tpill90 commented 1 month ago

Related issue from last time I looked at this, has a bit more discussion : #77