Distributing a Game with panda 1.6.2

I’ve started exploring the systems available for distributing a panda3d game to others, and unfortunately I now have some questions.

pdeploy looks like it’s going to be a very big help in this department, but I also gather from looking at questions people have put on the forums and from the note in it’s entry in the manual that it isn’t ready to use yet. Is it likely that it will be ready in Panda3D 1.7.1, and if so, is there any ball-park time frame for when that might be available? If not, or you don’t want to say, that’s fine.

I’m using Panda3D 1.6.2, and I don’t seem to have a packp3d utility in my bin folder, but I do have packpanda, so I think that’s my best bet. The manual mostly talks about packp3d and not packpanda, so I was wondering if I could get some help learning how to use it. Here are some immediate questions:

What sort of file/folder structure is acceptable? Right now I have a structure that looks like this:

project folder
  -code folder
     -All .py files for game
  -images folder
     -All images
  -models folder
     -All eggs and bams
  -sound folder
     -All wav files

Do I need the .py file that launches the game to have a specific name?

I notice that packp3d needs to be told that I’m using openAL. Does packpanda need to be told that as well, and how do to I tell it?

I am loading one egg file as egg data so that I can get vertex location information from it using this code:

MarkerEgg = EggData()

If this file is converted to bam, will this still work? If not, how do I prevent this file from being converted to a bam?

Do I need to remove the .egg extension from all my code that loads models?

Could I simply distribute the result of packpanda with the download of the panda3D runtime installer, have the user install panda3D runtime, and then they would be able to double click on the result of packpanda to run the game? Is that how that works? If so, is there a simple utility I could use to make an “installer” that will just run the panda3D runtime installer and create shortcuts to the packpanda result, or a little baby .exe that runs the game with panda3d runtime, or something?

I’ve been thinking about this as well recently.

Can’t answer most of your questions - but I can tell you I did remove the .egg extension from my code that was loading models. (I did some test distrib creations using packpanda and noticed the problem right away :slight_smile: )

On packpanda, it will leave egg files there unless you explicitly remove them. I haven’t tried pdeploy yet. Like you, I’ve gathered that it needs a bit more work.

I’d also like to try py2exe. I know when toontown was first available it used this. The demo of the Vampyre story game I downloaded also seems to use this. But this the thread I could find with a script to use for that:

panda3d.org/forums/viewtopic … 8262f52d57

haven’t looked at it in detail yet. is it way out of date?

You could try looking at the 1.6.2 version of the manual for assistance with packpanda. This can be downloaded from the download page, along with the 1.6.2 version of Panda.


I didn’t realize that old manuals were available like that. It took me a few minutes to find the downloads under the “other” section, but I did find it so I’ll have a look.