Gadvia:Guides/Extracting game files

From Rhythm Game Wiki
Jump to navigation Jump to search

Prerequisites

[edit | edit source]

Required items:

  • an Android device with the game installed,
  • an USB Cable,
  • a computer or laptop.

Required software:

Getting the APK files

[edit | edit source]
  1. Enable USB debugging on your Android device. If you do not know how to do that, read this guide from developer.android.com.
  2. Connect your device to the computer using an USB cable. Choose "Android Auto" on your device if prompted.
  3. Open a terminal on your computer.
  4. Run the command adb shell pm path com.hgca.uma. You should get an output similar to this:
    $ adb shell pm path com.hgca.uma
    package:/data/app/~~6cSX1IHn2iEGpQNOGSEkmg==/com.hgca.uma-u4heOeiO-Z4gD1SMy7kOVA==/base.apk
    package:/data/app/~~6cSX1IHn2iEGpQNOGSEkmg==/com.hgca.uma-u4heOeiO-Z4gD1SMy7kOVA==/split_UnityDataAssetPack.apk
    package:/data/app/~~6cSX1IHn2iEGpQNOGSEkmg==/com.hgca.uma-u4heOeiO-Z4gD1SMy7kOVA==/split_config.arm64_v8a.apk
    

    These are the paths to the game's .apk files.

  5. Using the paths from the output of the previous command, copy the files to your computer one by one using the commandadb pull <sourcePath> <destinationPath>. For example:
    adb pull /data/app/~~6cSX1IHn2iEGpQNOGSEkmg==/com.hgca.uma-u4heOeiO-Z4gD1SMy7kOVA==/base.apk base.apk
    

    This command will copy the base APK file from the mobile device to the computer and save it as base.apk. Repeat this command three times with different paths to extract all of the APK files from the game.

Extracting most of the assets from APK files

[edit | edit source]

Most of the game's assets are inside the split_UnityDataAssetPack.apk, however if you want to, you can also extract the other two APK files.

  1. Change the extension of the file that you want to extract from .apk to .zip.
  2. Open the .zip file with any archiving program and extract the contents of it to a directory of your choice. You will be able to see some of the files, however most assets will still be hidden behind Asset Bundles.
  3. Open AssetRipper.
  4. On the top bar, choose File > Open Folder and select the directory with the extracted files.
  5. After AssetRipper is done loading everything, choose Export > Export all Files on the top bar, and choose a directory for all of the extracted assets.
  6. Wait until AssetRipper finishes extracting, and you are done! Most of the assets should be available in the selected directory.

Some of the assets are unable to be extracted with AssetRipper using this method. These assets include:

  • Chart files
  • Song list file
  • Lyrics file

The next section will cover extracting some of these files.

Extracting the missing assets

[edit | edit source]

Some of these missing files can be extracted using AssetRipper if they are opened individually. For example, the chart file located inside the /assets/bin/Data/293c9b06cc505f448949507b64e7a17c asset bundle in the split_UnityDataAssetPack.apk, can be extracted by selecting File > Open File instead of File > Open Folder. This section of the guide will help you extract those assets.

  1. Find the asset bundle file that contains the asset you want. Asset bundle files are files with no extension, and 32-character-long names which contain only numbers 0-9 and lowercase letters a-f. The simplest way to find the wanted asset bundle is to search for some text that appears in the asset. For example, to find a chart file, try searching for the song name. On Linux, you can use a tool such as KFind to search for text in the binary files.
  2. Once you have successfully located the asset bundle, open AssetRipper.
  3. On the top bar, choose File > Open File and select the asset bundle with the extracted files.
  4. After AssetRipper is done loading everything, choose Export > Export all Files on the top bar, and choose a directory for all of the extracted assets.
  5. Wait until AssetRipper finishes extracting, and you are done! The selected asset bundle should have its content extracted to the selected directory.

Files that cannot be extracted

[edit | edit source]

Unfortunately, even this method cannot extract all of the assets. These "unextractable" assets include:

  • Song list file
  • Lyrics file

The cause of this issue is currently unknown.

While you cannot cleanly extract these files, you can still somewhat read the contents of the assets using a text editor such as Notepad++ or Kate. Since both the lyrics file and the song list file contain a mostly text, you can read the majority of it.