Skip to main content

DK64 Lib

A library for extracting data from a Donkey Kong 64 ROM

Installation

pip install dk64-lib

Examples

Text data

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

for text_line in rom.text_tables[0].text_lines:
    print(text_line.text)

# WELCOME TO THE BONUS STAGE!
# HIT AS MANY KREMLINGS AS YOU CAN! PRESS a_button TO FIRE A MELON.
# KEEP THE TURTLES SPINNING BY FEEDING THE SNAKES MELONS. PRESS a_button TO FIRE A MELON.
# LINE UP FOUR BANANAS TO WIN THE JACKPOT! PRESS a_button TO SPIN AND STOP THE REELS.
# RELOAD!
# HURRY!
# ...

Geometry data

Export every supported asset type to organized folders:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.export_all("dk64_export")

Export every map to GLB for Blender-friendly textured geometry:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.export_geometries("dk64_export/geometries")

Export every map to OBJ with MTL files and PNG texture assets:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.export_geometries("dk64_export/geometries", geometry_format="obj")

Export every map to separate glTF, binary, and PNG files:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.export_geometries("dk64_export/geometries", geometry_format="gltf")

Export every map to DAE with PNG texture assets:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.export_geometries("dk64_export/geometries", geometry_format="dae")

Export a single map as textured OBJ:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.geometry_tables[0].save_to_obj("0.obj")

Export a single map as textured GLB or glTF:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.geometry_tables[0].save_to_glb("0.glb")
rom.geometry_tables[0].save_to_gltf("0.gltf")

Export a single map as textured DAE:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.geometry_tables[0].save_to_dae("0.dae")

Export a legacy geometry-only OBJ:

from dk64_lib.rom import Rom
rom = Rom("Donkey Kong 64 (USA).z64")

rom.geometry_tables[0].save_to_obj("0.obj", include_textures=False)

To-do

  • Expand textured geometry export format coverage and texture-state accuracy
  • Extract models and convert to objs
  • Extract audio and convert to some sort of audio file
  • Extract everything else

Release files for dk64-lib 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dk64-lib 0.2.1
File Size Uploaded
dk64_lib-0.2.1.tar.gz 101.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dk64-lib 0.2.1
File Interpreter ABI Platform
dk64_lib-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 172.3 kB

Release files / dk64_lib-0.2.1.tar.gz

Download URL dk64_lib-0.2.1.tar.gz
Size 101.5 kB
Tags Source
SHA-256 checksum
How to use checksums
caff65945769ff46eede7cd1007772dbf564add5d255d78b063713c58a2c1fcd
BLAKE2b-256 checksum
How to use checksums
e8b592165b6595fdebb667e6fe5b3a18664b39fcb359c87c354ad1b7f0f9283e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 30, 2026.

Transparency log

Release files / dk64_lib-0.2.1-py3-none-any.whl

Download URL dk64_lib-0.2.1-py3-none-any.whl
Size 70.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2f3ed43f138001603e296131fb8dfc387a8d0db281eb3c77a942c49c9f0a8f23
BLAKE2b-256 checksum
How to use checksums
875b0251021b5c5f3c11e9df4d303281345aa58e4552d0dd85386d37d10ca2d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page