p3bamboo

Panda3D BAM file parser library


Keywords
panda, panda3d, panda3d-game-engine, python, tools, toontown, toontown-online
License
BSD-3-Clause
Install
pip install p3bamboo==1.0.3

Documentation

p3bamboo

PyPI version

p3bamboo is a Python library that gives you full access to a Panda3D BAM file's inner structure.

Getting Started

Simply install p3bamboo using pip:

python -m pip install p3bamboo

Loading a BAM file is very simple:

from p3bamboo.BamFile import BamFile

bam = BamFile()

with open('myModel.bam', 'rb') as f:
    bam.load(f)

Writing out a BAM file is also easy:

with open('newModel.bam', 'wb') as f:
    bam.write(f)

To automatically deserialize BAM objects, you must register your own custom BAM object types. For example, to register an object type named Texture:

from p3bamboo.BamFactory import BamFactory
from myproject.Texture import Texture

BamFactory.register_type('Texture', Texture)

If you register your object types properly and load a BAM file afterwards, you'll be able to access your objects using bam.object_map.