Based on respectZ/blue-archive-spine
Move to https://github.com/lwd-temp/blue-archive-spine-jp
Blue Archive is a registered trademark of NAT GAMES Co., Ltd. This repo is not affiliated with NEXON Korea Corp. & NEXON GAMES Co., Ltd. All game resources are copyrighted to the respective owners.
- Use this template
- Create
jp
andglobal
branch fromresourceless
- Enable GitHub Actions, manually trigger
Update-Global
andUpdate-JP
at any branch (they will find the right branch, no matter where you trigger them) to get the first update Update-Global
will run daily and fails when no update is available,Update-JP
won't run automatically
Update-JP
Needs to be triggered manually since there isn't a solution to get the latest update json link automatically (maybe there is, but I'm not going to write it now). ba_api
in getModelsJapan.py
needs to be updated manually (through reverse engineering or network capture) when there is a new update.
The update json link is hard coded into the game OBB resources.
We can get LatestClientVersion
from https://prod-noticeindex.bluearchiveyostar.com/prod/index.json
, but how the random hash path (likes r48_2q1alt6gvk5igdsj4hl2.json
) under yostar-serverinfo.bluearchiveyostar.com
is generated?
BA Japan (Yostar) does not have a certain resource path API. And their developers hard code the resource link for a version into the game OBB resources. The game only checks for LatestClientVersion
to see if it's outdated and asks the user to update the game from Google Play to get the latest resource link.
Does this mean the user has to update the game from Google Play every month to get the latest monthly in-game activity? -- Yes, this is what's happening. (BA Japan releases an update at Google Play about every month, while BA Global updates about every three months)
You can extract GameMainConfig
from game OBB and decrypt it. Check the key ServerInfoDataUrl
in GameMainConfig
to get the resource link.
This repo is a fork of respectZ/blue-archive-spine. Some contributors and I modified the code to make it work better.
blue-archive-spine
is a tool to download and view the character arts and animations (Memorial Lobby) of the game Blue Archive.
It's recommneded to use GitHub Actions to download the resources automatically. If you want to download the resources manually, please refer to the original README. Attention: Do not open index.html
locally, all resource must be served with an HTTP server.
This repo is based on the work of @respectZ and @LXY1226 . The original repo doesn't have a license, so I'm not sure if it can be used for any purpose.
Blue Archive is a registered trademark of NAT GAMES Co., Ltd. This repo is not affiliated with NEXON Korea Corp. & NEXON GAMES Co., Ltd. All game resources are copyrighted to the respective owners.
Please notice: some of the following information is outdated. Please refer to the Quick Start section above.
This repo uses UnityPy (instead of unitypack in upstream) to extract files.
For viewing Blue Archive Spines.
Have a look at this branch for resourceless.
- decrunch
- fsb5
- lz4
- Pillow
- astc_decomp
- MSVC++ 14.0 Build Tools with Windows 10 SDK
setup.py build
setup.py install
or
setup.py install --user
py/getModels.py
Downloaded Models located at ./downloaded_resource
Assets (Spine and Audio) located at ./assets
py/generateAudioJson.py
This will download VOC_JP audio instead of playing it directly (cors issue ?)
To play audio directly from BA's server, change py/generateModelsJson.py
_type = 1
to
_type = 0
py/generateModelsJson.py
Just launch index.html
Big Kudos for awesome UnityPack