calculating endpoints

Hey everyone. I’m having a problem calculating end points. Actully, I’m not sure how you do it. I have this object thats flying around so I need to get it’s starting postion (whitch I can get) and it’s calculated ending point. I’m doing this cause the server has to pass the start and ending points to everyone so they know. Server not being run by panda (python still) though so not sure what to add to get it. The server does know where the object is and when to move it, but does not know when the object has hits something to destory it. We don’t want any of the calculations on client side to make sure its not being tampered with.

Well, if i understood your problem right, you actually don’t need anything from the client.
In your configuration it looks like the server knows at all times the position of any objects in the game (including missiles or bullets) so the server is the one that knows when a target was hit and the server is the one that should tell the client it was hit. So you calculate (and decide) at the server level when and if an object was “hit” and then you pass it on to the client/clients so they update it.
Or you can use distributed nodes within panda and need not worry about how to process all the stuff from scratch at the server level.

How though? The server not running the game for say and only serving the clients by accepting what the clients can and can not do.

Does panda/python let you compare collision with out having to load models and having to check them that way? I mean if we can get the end line postion for our objects we can check to see if someone is in the way that way, but we have no way of checking the map/walls collision in this way unless we can somehow check the model to see if it passes into something.

I am not sure I understand. If the server part is “only serving the clients by accepting what the clients can and can not do” it means you are relying on the clients to check for any ingame events such as collisions. In the first post you said you don’t want to rely on the clients so there will be no tampering.
Anyway, to answer the new question, you can run a “server”-type process in panda and let that proces handle the game logic without having to render anything on screen. I think it loads the models logically, but if there’s no rendering you don’t really mind that. Someone correct if I am wrong, i am just speculating in regard to what’s loaded and what not.

Search the forum for “distributednode” and see how Panda’s implementation of networking works from those examples.
And let us know how it works, I am always interested in such developments.

By the way, what are you using for the server code? You said python. Did you write something yourself? Are you using some open-source projects that is fit for that? Share! :slight_smile:

Thank you radu. Sorry if I am being a little confusing. I’m not really into the code myself. Adr is doing most of the coding, but I wanted to help him out the best I can.

Yea thats the problem. Right now we’re relaying on clients to report collision on their side atm sadly. We’re trying to get rid of that the best we can using the server so the client it self is just “junk” for say.

I’ll take a look at this distributednode on the fourm and see whats that about. Sounds like something we need.

We’re using python and some C++ for the server code. The c++ allows us to put all the active user’s profiles into ram storage to have faster access for the users. No, I’m not writing it by my self, adr is the one doing that, I’m just helping the best I can. Right now hes working on a p2p safty code, so we can even off load some of the work from the server to client using a hash checker to lower bandwidth but still have all the security fun. (w/e that means lol)

He said we can’t share just yet; its a big mess of code with out comments. He said after he gets this hash check down we may share it, but he said its nothing a lot of other users haven’t done or panda can do all ready.