Skip to main content

Azur Lane asset downloader and extractor

Project description

Azur Lane Asset Downloader and Extractor

This tool automatically downloads the newest assets directly from the game's CDN servers and allows extraction of Texture2D files as PNG images.

Upgrade Notice

From 2.x / no version number to 3.x+

When upgrading from versions 2.x or with no version number, the project has to be newly set up. To retain all current data the following folders can be copied to the new folder of the project:

  • config: Only user_config.yml is required, the rest can be deleted.
  • ClientAssets or directory set in asset-directory of the config: Contains all currently downloaded assets, version information und update logs used for extraction. Highly recommend to transfer to the new project folder.

Setup

Before installation, Python 3.11 or newer needs to be available on the system. It is recommended to set the project up using venv or a similar virtual environment manager. The project can be installed using pip:

pip install azlassets

Alternatively, to install the newest version from the repository (requires git on the system):

pip install git+https://github.com/nobbyfix/AzurLane-AssetDownloader.git

Usage

There are three scripts to manage the assets:

  • obb_apk_import: Importing assets from obb/apk/xapk files
  • downlader: Downloading assets from the game server
  • extractor: Extract PNGs from the assets

These can be executed using py -m <scriptname> on Windows or python3 -m <scriptname> on Linux/macOS (will be shortened to py[thon3] going forward, use the appropriate version for your system). Detailed usage will be explained in the following sections.

1. Import files from xapk/apk/obb

While this is not necessary, this step is recommended if you want all game assets available and not spam the game update server with errors of missing files on the first download.

The obb_apk_import.py supports all game clients (EN, JP, CN, KR, TW) and multiple forms of importing the assets. The recommended and easiest way is by downloading the .xapk from one of many Google Play Store app distributors (like APKMirror or APKPure). You can find them by searching for the package name, which are as follows:

  • EN: com.YoStarEN.AzurLane
  • JP: com.YoStarJP.AzurLane
  • KR: kr.txwy.and.blhx
  • TW: com.hkmanjuu.azurlane.gp

Alternatively if you already have the game installed, for example on emulators, you can copy the obb file onto your system and use it instead of the xapk. On Android it can be found in the folder /storage/emulated/0/Android/obb/[PACKAGE_NAME]/.

Since the CN client is not distributed through the Google Play Store, there is no xapk/obb file for it, but you can find the android download link on the website which will download an apk file (not xapk like the others). Alternatively, the APK is installed in the folder /data/app/com.bilibili.azurlane-1/ on android (Note: Root access is required to access this folder).

You can then execute the script by passing it the filepath to the xapk/apk/obb:

py[thon3] -m obb_apk_import [FILEPATH]

2. Settings

The config/user_config.yml file provides a few settings to filter which files will be downloaded (and later also extracted). The options download-folder-listtype and extract-folder-listtype can be set to either "blacklist" or "whitelist". Depending on this it will filter by the top-level folder names (subfolders are not supported) or top-level filenames (files inside top-level folders or lower cannot be filtered) set in download-folder-list and extract-folder-list. This allows to cut down the download and extraction times by skipping unneeded assets.

3. Download new updates from the game

All assets normally distributed via the in-app downloader can be downloaded by simply executing:

py[thon3] -m downloader [CLIENT]

where CLIENT has to be either EN, CN, JP, KR or TW. You can check which files have been downloaded or deleted using the difflog files in ClientAssets/[CLIENT]/difflog.

4. Extract all new and changed files

The asset extraction script supports extraction of all newly downloaded files and single asset bundles. The newly downloaded assets can be extracted by executing:

py[thon3] -m extractor [CLIENT]

where CLIENT is again one of EN, CN, JP, KR or TW. The extracted images will then be saved in ClientExtract/[CLIENT]/ Since only Texture2D assets are exported, it's not desired to try to export from all assetbundles (See settings section).

A single assetbundle can be extracted by passing the filepath to the script:

py[thon3] -m extractor -f [FILEPATH]

5. Enjoy the files

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

azlassets-3.4.4.tar.gz (23.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

azlassets-3.4.4-py3-none-any.whl (25.3 kB view details)

Uploaded Python 3

File details

Details for the file azlassets-3.4.4.tar.gz.

File metadata

  • Download URL: azlassets-3.4.4.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for azlassets-3.4.4.tar.gz
Algorithm Hash digest
SHA256 8ba512fe2c70e590a660d4b0d41a41fc1cde3d503c040a2f122b4bb756be01a6
MD5 d0de964b841d78c2420c0c31f1340768
BLAKE2b-256 6da9b897e12ef201dba2662b0d5625000962dd46e77e5b7d10c86ba0d7900169

See more details on using hashes here.

Provenance

The following attestation bundles were made for azlassets-3.4.4.tar.gz:

Publisher: publish.yml on nobbyfix/AzurLane-AssetDownloader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file azlassets-3.4.4-py3-none-any.whl.

File metadata

  • Download URL: azlassets-3.4.4-py3-none-any.whl
  • Upload date:
  • Size: 25.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for azlassets-3.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d0b237f2545c4f71f9c410babb2b2c1952983496eb8f0281ca2600ada5766846
MD5 3a76c32090180db7a92e5930f02e351e
BLAKE2b-256 e8a9c5330b45386fb4a2b33f48117ac3bf6127a5e907167c6ef1dc906e97d467

See more details on using hashes here.

Provenance

The following attestation bundles were made for azlassets-3.4.4-py3-none-any.whl:

Publisher: publish.yml on nobbyfix/AzurLane-AssetDownloader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page