This project is read-only.

Get the server distributable objects only I need

Oct 24, 2009 at 4:10 PM


I just read your latest code and I find the new distribution type GetAllDistributedObjects has been added. 

I am thinking about some special situations:

  1. If the server holds more than one scenes or worlds, how can I get the distributable objects on the server in one world? In other words, how can I query the server objects only I want?
  2. I found your Host Update logic is missing. I was trying to add it but I found it is difficult to do. I don't think the server distributable objects are the Real Runtime objects, they are not the same as the objects runs in the client, they only hold the distributable properies. What do you think about it? Holding the serverside client which handles the logic maybe is a solution...
Oct 28, 2009 at 11:40 AM


1. you cannot explicitly query for specific objects from distribution server, you get allways all, the distribution process should be transparent..

2. there is the client update and server update. You can specify the host update logic just with a comparison of client&server != null, or maybe other simple techniques..



Apr 18, 2010 at 5:35 PM
Edited Apr 18, 2010 at 5:36 PM

If you have a lot of tanks shooting at each other in a large area then the amount of bandwidth being used up with your library becomes a problem.

I too support a way to query for certain objects.  Maybe a method to retrieve only DistributableObjects with properties set to a certain value.

I admire your work and your idea of auto managing objects.  Great job!

Apr 20, 2010 at 12:42 PM

If you distribute absolute coordinates of tank shootings then of course (with/without of this library) you get high bandwidth. One of the way to dramatically drop the kbps is to just distribute just the velocity vector or even better acceleration vector. If a shooting is always moving with constant speed, you shouldn't send anything over wire..



Apr 21, 2010 at 1:58 AM

That is very true.  I was referring to only updating tanks within a certain area.  If you have a lot of activity going on around the client but not close to the client then isn't it best practice to filter the objects based on certain properties?

So, basically, a way to narrow the update region of the DistributedSession.  Limit what clients are updated.

Apr 21, 2010 at 9:36 AM
Edited Apr 21, 2010 at 9:40 AM

interesting. Right now there isnt any 'part' distribution of all distributed objects.. Maybe as you said it would help to filter those objects by your logic, e.g. an object would have a property named 'EnableUpdate' which you investigate and if true (is 'around' your client), you update this object in your main update method.. otherwise there the object is not updated thus no distribution process at all.