https://github.com/Bioruebe/godotdec
An unpacker for Godot Engine package files (.pck)
https://github.com/Bioruebe/godotdec
extractor godot-engine unpacker
Last synced: 4 months ago
JSON representation
An unpacker for Godot Engine package files (.pck)
- Host: GitHub
- URL: https://github.com/Bioruebe/godotdec
- Owner: Bioruebe
- License: bsd-3-clause
- Created: 2019-01-21T05:25:18.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-03-16T00:26:39.000Z (over 2 years ago)
- Last Synced: 2025-05-12T02:13:16.320Z (about 1 year ago)
- Topics: extractor, godot-engine, unpacker
- Language: C#
- Homepage:
- Size: 43 KB
- Stars: 198
- Watchers: 5
- Forks: 17
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: changelog.txt
- License: LICENSE
Awesome Lists containing this project
README
# godotdec
An unpacker for Godot Engine package files (.pck)
### Usage
`godotdec [] []`
###### Options:
| Flag (short) | Flag (long) | Description |
| ------------ | ----------- | ------------------------------------------------------------ |
| -c | --convert | Convert certain engine-specific file types (textures, some audio streams) to standard formats. |
### Technical details
Godot Engine's package format is specified as:
| Value/Type | Description |
| ---------- | ------------------------------------------------------------ |
| 0x43504447 | Magic number (GDPC) |
| 4 x Int32 | Engine version: version, major, minor, revision |
| 16 x Int32 | Reserved space, 0 |
| Int32 | Number of files in archive |
| | ----- Begin of file index, for each file the following data is stored ---- |
| Int32 | Length of path string |
| String | Path as string, e.g. res://actors/Enemy/enemy.atex |
| Int64 | File offset |
| Int64 | File size |
| 16 bytes | MD5 |
| | ----- Begin of file contents ----- |
The source code of the .pck packer can be found [here](https://github.com/godotengine/godot/blob/master/core/io/pck_packer.cpp)
### Limitations
- This tool is designed to extract assets. If you are interested in the scripts of a game, check out [Godot RE Tools](https://github.com/bruvzg/gdsdecomp)
- MD5 checksum is not used to verify extracted files
- Format conversion is only supported for .png, .ogg
- Modified engine versions may use a custom package format, which godotdec does not support
### Remarks
No reverse engineering has been used to write this tool.
I released it as a helper for artists to search games for unlicensed use of their assets. It is not meant to encourage extraction with the sole purpose of using assets in your own products without permission of the copyright holder.
Remember: don't steal assets from other people's games. Respect copyrights. And don't protect your own games - it's unnecessary effort.