MCPcopy Index your code
hub / github.com/Ryex/Dungeondraft-GoPackager

github.com/Ryex/Dungeondraft-GoPackager @v2.0.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.0.4 ↗ · + Follow
524 symbols 1,619 edges 43 files 42 documented · 8%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Dungeondraft-GoPackager

Dungeondraft Packer, Unpacker, and Editor

GUI and Command-line utilities to pack, unpack, and edit custom assets, and tags for Dungeondraft

Contribute translations on Crowdin

Features

  • Pack custom asset packs
  • Set or generate a package ID
  • Unpack packaged asset packs (useful to combine multiple packs or edit tags)
  • View assets and tags of packed or unpacked packages
  • Edit tags of individual assets in an unpacked package
  • Edit tag sets
  • Edit metadata for Walls and Tilesets (custom color, tileset name, etc.)
  • Generate tags from the folder structure of the package
  • Generate thumbnails for assets in an unpacked package
  • ~20 seconds for 42K thumbnails!
  • GUI or CLI interface. Automate your workflow!

Installation

You can either install the precompiled binaries available on the release page

Binaries are available for all major platforms:

Or, if you have Go installed you can go install them yourself

go install github.com/ryex/dungeondraft-gopackager/cmd/dungeondraft-packager
go install github.com/ryex/dungeondraft-gopackager/cmd/dungeondraft-packager-cli/

GUI

Version 2.0 of Dungeondraft-GoPackager comes with a nice GUI!

Simply enter a path to, or browse for, your packed .dungeondraft_pack or unpacked package folder to get started!

CLI Usage

Show Help

dungeondraft-packager[-cli][.exe] -h

Unpack Assets

dungeondraft-packager-cli[.exe] unpack <input-path> <destination-path> [flags]

The assets contained in the .dungeondraft_pack file will be written to a folder the same name as the package under the dest folder.

Pack Assets

dungeondraft-packager-cli[.exe] pack <input-path> <destination-path> [flags]

The assets in the input folder (provided there is a valid pack.json) will be written to a <packname>.dungeondraft_pack file in the destination directory.

New pack.json

dungeondraft-packager-cli[.exe] generate (gen) pack --name=STRING --author=STRING <input-path> [flags]

A valid pack.json with a new id and the provided values will be created in the input directory (-O overwrites an existing pack.json).

If You Have Issues

If you have issues like the packager not picking up files, try passing in the --log-level=info or --log-level=debug flags to get info and debug output. Then, makes sure there isn't a structural problem with your package folder.

If you can't find the problem file an issue with the --log-level=debug debug output.

Extension points exported contracts — how you extend this code

TagFilter (Interface)
(no doc) [6 implementers]
internal/gui/tag_filters.go
SetFilterFunc (FuncType)
(no doc)
pkg/structures/set.go
Signed (Interface)
(no doc)
pkg/ddimage/ddimage.go
Bound (Interface)
(no doc) [1 implementers]
internal/gui/bindings/bindings.go
FileInfoFilterFunc (FuncType)
(no doc)
pkg/structures/files.go
Unsigned (Interface)
(no doc)
pkg/ddimage/ddimage.go
ExternalBound (Interface)
(no doc)
internal/gui/bindings/bindings.go
Integer (Interface)
(no doc)
pkg/ddimage/ddimage.go

Core symbols most depended-on inside this repo

Set
called by 52
internal/gui/bindings/bindings.go
Show
called by 37
internal/gui/pack_json.go
Add
called by 33
pkg/structures/set.go
Size
called by 33
pkg/structures/set.go
Tags
called by 28
pkg/ddpackage/ddpackage.go
Get
called by 25
internal/gui/bindings/bindings.go
Disable
called by 24
internal/gui/widgets/widgets.go
Info
called by 22
pkg/ddpackage/ddpackage.go

Shape

Method 338
Function 110
Struct 63
Interface 7
TypeAlias 4
FuncType 2

Languages

Go100%

Modules by API surface

internal/gui/widgets/widgets.go49 symbols
pkg/structures/files.go47 symbols
pkg/ddpackage/ddpackage.go40 symbols
internal/gui/bindings/bindings.go37 symbols
pkg/ddimage/ddimage.go29 symbols
internal/gui/widgets/toggle.go28 symbols
internal/utils/utils.go24 symbols
pkg/structures/tags.go22 symbols
internal/gui/tag_filters.go22 symbols
internal/gui/layouts/layouts.go22 symbols
pkg/structures/set.go20 symbols
pkg/ddpackage/unpack.go16 symbols

For agents

$ claude mcp add Dungeondraft-GoPackager \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page