reset password
Author Message
Worlder
Posts: 5
Posted 22:15 Mar 17, 2013 |

Please discuss it here.

Currently the packp3d on my end is having some issues connecting to the panda3d servers.

If you have the solution please include any alterations to certain files, environment variables, and the specific commands entered into the cmd to get the computer to successfully pack the python files.

Last edited by Worlder at 22:16 Mar 17, 2013.
Eric Liao
Posts: 158
Posted 22:36 Mar 17, 2013 |

I had having package problem last week, and finally I've got it to work.

Here is a few things I did in order to package and deploy:

1. I change my panda 3D version to 1.8.0
For some reason, I had trouble using 1.7.2 packp3d to download all the changes.
After switching to 1.8.0, this problem got solved.

In order to package correctly, you will also need to define your main python class, if you are not using main.py as main class name by
-m [main.py]

If you have music in your game, you probably also want to include audio package from panda 3d by
-r audio

If you have anything else your game used; for example, map information, you may include the extension name(if you are using txt or something else)
-e txt

Lastly, let packp3d know what is your output name by
-o [yourgame.p3d]

One last thing you want to pay attention is that where you run this command might require you to specify the application_root by
-d [path to your application root] 

Example command may be below:

> packp3d -m main.py -r audio -e txt -o myCoolGame.p3d

Note: If you have more than 1 executable panda python files in the same directories, you may consider remove all others. Otherwise, it will not package correctly.

2. Remember to download panda 3D to test the p3d file you just made from packp3d

After downloading the panda 3D run time and install it, run the following command to test your p3d file

> panda3d myCoolGame.p3d

3. To make your game to be executable by any others who do not have panda 3D installed, you need to use panda deploy application

From this part, you can just follow the command Dr. Kang provided and run it.

Example command may be as following:

Standalone file

> pdeploy -c myCoolGame.p3d standalone

Installer file

> pdeploy -s -N "My Cool Game" -v 1.0.0 -i icon16.png -i icon32.png -i icon48.png -i icon128.png -P linux_amd64 -P win32 -P osx_i386 coolGame.p3d installer

Worlder
Posts: 5
Posted 12:22 Mar 18, 2013 |

What are the directories of your runtime and SDK installations?

Eric Liao
Posts: 158
Posted 12:37 Mar 18, 2013 |

They are both default:

SDK: C:\Panda3D-1.8.0\

Run time: C:\Program Files (x86)\Panda3D

Worlder
Posts: 5
Posted 12:50 Mar 18, 2013 |

So are mine, but the thing still doesn't work. Not even the help option, -h, works. Here is the error traceback.

 

Failed to import direct.p3d.AppRunner
Traceback (most recent call last):
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\direct\p3d\Ap
pRunner.py", line 35, in <module>
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\direct\showba
se\DirectObject.py", line 7, in <module>
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\direct\showba
se\MessengerGlobal.py", line 5, in <module>
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\direct\showba
se\Messenger.py", line 81, in <module>
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\direct\stdpy\
threading.py", line 28, in <module>
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\pandac\PandaM
odules.py", line 32, in <module>
  File "VFSImporter", line 153, in load_module
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\pandac\libp3v
isionModules.py", line 2, in <module>
  File "C:\buildslave\release_rtdist_win32\build\panda3d\built_cmu\pandac\extens
ion_native_helpers.py", line 79, in Dtool_PreloadDLL
ImportError: DLL load failed: The specified procedure could not be found.
Failure on startup.
Last edited by Worlder at 12:54 Mar 18, 2013.
Worlder
Posts: 5
Posted 13:19 Mar 18, 2013 |

Ok I figured out what is wrong.

One needs to run the packp3d in the runtime directory not the bin directory of the sdk.

This time I managed to get the -h option to work.