Here is the time I waited for so long, releasing my game to the community that help during the project!
Here is my website that you will be able to know more about me and the game, download it and also look at the documentation (only in french): http://darkjaff.p3dp.com
In summary, this game has been done during my final project at university. My goal was to do a modern game with a arcade feeling. It’s name is “Silence X”. I did everything myself except the 3D models that I found on the Internet. I hope you will like it, I put my heart at it.
There are project to do a special 3D version with a stereo camera (we have a stereo screen with polarised googles like IMAX at school) and also to do the control with the Wiimote but nothing is sure.
Feel free to comments! Since it’s my first game, all the comment are appreciated. If you want to see the code, just email me to ask me for the password.
I’m planning to do some tutorial on Panda3D when I will have more freetime, so it’s not for the next few months. Oh and if you have question about something in my game, like how to do something or anything, just ask!
A special thanks to Josh Yelon, treeform and bigfoot who help me A LOT!
If you want to make a wiimote control, you have some very easy path for rapid prototyping:
1)Glovepie
Nothing to modify in your game code. Just write a conversion script between wiimote move& buttons and your standard mouse/keyboard key…
Optionaly you can drive from the conversion script some effects on the wiimote (sounds, vibration, lights) and some effects on the screen (mouse move / shake…)
=> setup time for Roaming Ralph : 1Minute
Glovepie + OSC (open sound control).
Need to include an OSC listener in your game code.
This way you can receive any information you want from the glove pie script and act accordingly (wihtout having to translate between keys…)
Only restrictions with glovepie
a) you have to rely on the user to install it properly and start it with your script
b) glovepie does not pool much faster than 40fps . It’s usually enough for most games. just have an impact in cod4 for example…
I don’t read much french, but based on the report, it looks like this was some sort of serious software engineering class - or was it an independent study?
Could you tell me more about what the class was like? I’m trying to write a textbook for a Panda3D class, and I want to know how yours went.
BTW, your game contains some egg.pz files. Packpanda apparently doesn’t handle those correctly. I’ll fix packpanda, but just be aware that your packed game doesn’t work.
For the document, some document are based on the RUP process (Rational Unified process), on OpenUP (Open Unified Process) and other on books that I read on games (The design document). All the architecture graph, I learn them at university. I put all my energy on this project and got an A+ (don’t know if it’s the same system in your country but it means 93%). I’m so happy haha!
I don’t know if I answer your question correctly, if you have more question, don’t hesitate
I checked my packed game and you are right, it seems to crach when the menu launch. Since it’s for a demo and that I will send some application in company very soon, I will put a version without the compiled eggs, so it will be slower but it will work.
Josh, is this going to be corrected in the next version of panda3d?
Compiled version :
DirectStart: Starting the game.
Warning: DirectNotify: category ‘Interval’ already exists
Known pipe types:
wglGraphicsPipe
(all display modules loaded.)
:util(warning): Adjusting global clock’s real time by 9.19347e-006 seconds.
Traceback (most recent call last):
File “.\main.py”, line 16, in
File “.\main2.py”, line 5, in
File “.\lib\Intro.py”, line 21, in init
File “.\lib\MusicPlayer.py”, line 15, in init
AttributeError: type object ‘libpanda.AudioManager’ has no attribute ‘SMSample’
Source one :
DirectStart: Starting the game.
Warning: DirectNotify: category ‘Interval’ already exists
Known pipe types:
wglGraphicsPipe
(all display modules loaded.)
:util(warning): Adjusting global clock’s real time by 8.92197e-006 seconds.
Traceback (most recent call last):
File “main.py”, line 16, in
import main2
File “G:\sx-source\main2.py”, line 5, in
intro = Intro()
File “G:\sx-source\lib\Intro.py”, line 21, in init
self.musicPlayer = MusicPlayer()
File “G:\sx-source\lib\MusicPlayer.py”, line 15, in init
self.introMusic = base.sfxManagerList[0].getSound(“music/introAmbiant.mp3”,0, AudioManager.SMSample)
AttributeError: type object ‘libpanda.AudioManager’ has no attribute ‘SMSample’/