Are you using the fluid movemnts? That would help some, so you don’t “instantaneously” move to fast around the area.


Hopefully you’ll release that server side code too :wink:


Not sure which you’re referring to: my collision handler has fluid detection enabled, and I’m using the DistributedSmoothNode to smooth out the apparent movement of the remote players.

But the internet is what it is, and ~250 ms is only an average. If one particular packet arrives late, say 500 ms after it was delivered, then you won’t hear about my starting position until I’m already at my ending position, and there’s no way to avoid you seeing me “pop” across the screen. It’s just a reality of internet-based games. You can reduce this effect by increasing the delay between the time you hear about an effect and the time you see it, which makes it more forgiving for late packets; or you can reduce it by decreasing the run speed, which makes errors less obvious.

Of course. :slight_smile:



A FPS game for LAN only?? Lets see which one it might be…
Maybe a certain dev just forgot the needed latency calculations, that are needed for the internet? Bad developer - no cookie, hehe! :wink:

Anyway, I cant get it running on Ubuntu 9.04 - FF plugin installed - loaded and then just the red start button. Unfortunatly I have no clue where to put the linux plugin… Also installed rbd’s package but still no change. Guess me and linux arent compatible, hehe


If you installed the panda3d-runtime package, it should work. What happens when you click that red start button?
Also, try this on the commandline:
cd ~/.panda3d/hosts/r*/p3dcert && env LD_LIBRARY_PATH=. ./p3dcert a b
What happens then?


Nothing happens when clicking the start button, besides the “clicked” animation.

Regarding the command I get:
Speicherort »file:///home/magus/cd%20~/.panda3d/hosts/r*/p3dcert%20&&%20env%20LD_LIBRARY_PATH=.%20./p3dcert%20a%20b%20« konnte nicht angezeigt werden

Translated, it cant show the location and I guess that means panda isnt installed (correctly)?


Uh, no, I meant you should open a terminal and copy&paste that command there.


Well, technically the same reply in the the terminal:
bash: cd: /home/magus/.panda3d/hosts/r*/p3dcert: No such file or directory


Uninstall the Firefox add-on. You don’t need it with rdb’s package, and I think it’s causing you trouble.



drwr, is the source ever going to be released, or is it too ugly?

I would like to learn how to make a server and client code, and this seems like a big jump in the right direction.


I haven’t had much time to clean up the source code yet, but I have no objections with sharing it, such as it is. I’ll send a PM.



David would you please send it to me as well? (I feel a row of ppl would be pleased to see that code, ugly or not it would actually be)


OK, I’ll just post the link publicly, since so many people are interested. :slight_smile:




great, I see a cool bunch of stuff to study with inside - thankyou David


Hm, this is very complicated. David, do you have any recommendations for a game server guide with python? I guess there aren’t any that specifically reference panda3d. I don’t know anything about networking. How did you learn how to do this? Haha, do I have to enroll at Carnegie Mellon?


This distributed object server is very specific to Panda3d and is indeed complex. In a nutshell:

DistributedObjects are replicated across the network. If I create a chair DO on my client, all clients will get a copy of that with the parameters I set.

These parameters, and how they are communicated, are in the .dc files.

ServerRepository is responsible for communication only, no game logic.

All serverside game logic will also be in the form of clients, the ClientAI. The purpose of these ClientAIs is to manage things in your gameworld that clients should not have direct control over.

Panda provides a lower level network system as well which is not as complicated. You can also go with a generic python network approach as well.


Okay so it’s just a website full of your personal photos?