ata4/disunity

An experimental toolset for Unity asset and asset bundle files.

Java

2,698

655 commits

updated Oct 8, 2018

See the code

README

DisUnity

An experimental command-line toolset for Unity asset and asset bundle files written in Java, mostly designed for extraction.

Download

The latest build can be found on the releases page.

A note about the versions

0.3 works best with Unity 3.x and has most of the original extraction features.

0.4 is a somewhat incomplete and untested upgrade to support Unity 4 and 5 and has some of the extraction features of 0.3.

0.5 is a code rewrite to properly support all Unity games from 2 to 5 that also comes with unit tests. Right now, it only supports raw file reading and writing without any object deserialization, therefore it also can't extract any asset data directly.

Usage

disunity <command> [options] <file>

Note: depending on the platform, you may need to run disunity.bat (Windows) or disunity.sh (Linux/MacOS). In case the launch script fails, try java -jar disunity.jar.

Available commands (v0.5)

Asset commands

CommandPurpose
asset blocksList data block offsets and sizes. Could be useful for manual extraction.
asset externalsList asset file dependencies.
asset headerDisplay some information from the file header.
asset objectidsList object identifiers (Unity 5 and higher only).
asset objectsList object data entries.
asset typesDisplay embedded runtime type information.
asset unpackUnpacks raw data blocks from a file. Could be useful for manual extraction.

Asset bundle commands

CommandPurpose
bundle listList bundled files.
bundle infoDisplay some information from the file header.
bundle packPack files into a bundle. Requires a bundle property file.
bundle unpackUnpack files from a bundle.

ata4/disunity

An experimental toolset for Unity asset and asset bundle files.

Java

2,698

655 commits

updated Oct 8, 2018

See the code

README

DisUnity

An experimental command-line toolset for Unity asset and asset bundle files written in Java, mostly designed for extraction.

Download

The latest build can be found on the releases page.

A note about the versions

0.3 works best with Unity 3.x and has most of the original extraction features.

0.4 is a somewhat incomplete and untested upgrade to support Unity 4 and 5 and has some of the extraction features of 0.3.

0.5 is a code rewrite to properly support all Unity games from 2 to 5 that also comes with unit tests. Right now, it only supports raw file reading and writing without any object deserialization, therefore it also can't extract any asset data directly.

Usage

disunity <command> [options] <file>

Note: depending on the platform, you may need to run disunity.bat (Windows) or disunity.sh (Linux/MacOS). In case the launch script fails, try java -jar disunity.jar.

Available commands (v0.5)

Asset commands

CommandPurpose
asset blocksList data block offsets and sizes. Could be useful for manual extraction.
asset externalsList asset file dependencies.
asset headerDisplay some information from the file header.
asset objectidsList object identifiers (Unity 5 and higher only).
asset objectsList object data entries.
asset typesDisplay embedded runtime type information.
asset unpackUnpacks raw data blocks from a file. Could be useful for manual extraction.

Asset bundle commands

CommandPurpose
bundle listList bundled files.
bundle infoDisplay some information from the file header.
bundle packPack files into a bundle. Requires a bundle property file.
bundle unpackUnpack files from a bundle.

Significant stargazers

Jan Tojnar

206 followers · starred Jul 2015

Pekka Enberg

2,027 followers · starred Jan 2016

Albert Vaca Cintora

154 followers · starred Aug 2015

xctan

105 followers · starred Aug 2017