ThomasJRyan / dk64_lib

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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 map to an obj

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

for map_num, geometry_map in enumerate(rom.geometry_tables):
    geometry_map.save_to_obj(f'{map_num}.obj')

To-do

  • Extract texture data and convert to appropriately formatted images
  • Extract models and convert to objs
  • Extract audio and convert to some sort of audio file
  • Extract everything else

About

License:GNU General Public License v3.0


Languages

Language:Python 100.0%