Jump to content

  • Log In with Google      Sign In   
  • Create Account

sync area partitioning


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
5 replies to this topic

#1 Delfi   Members   -  Reputation: 106

Like
0Likes
Like

Posted 30 September 2012 - 10:01 AM

What are you guys using to partition areas into sync areas based on players? i need to partition my players.. so that basically i prepare sync data for these areas and just pust the updates to people in one areas, now what are the most popular approaches?

Thanks.
Projects: Top Down City: http://mathpudding.com/

Sponsor:

#2 hplus0603   Moderators   -  Reputation: 5693

Like
0Likes
Like

Posted 30 September 2012 - 12:17 PM

What you call "sync areas," most games call "zones."

Another popular approach (for MMOs) is to send updates for players that are further away, but still visible, less often.

If you have a large outdoors area, you may want to slice it into blocks, and send update data for all neighboring blocks plus the block the player is in.

enum Bool { True, False, FileNotFound };

#3 Delfi   Members   -  Reputation: 106

Like
0Likes
Like

Posted 03 October 2012 - 02:18 PM

I asked for a suggestion on which algorythm to use to partition the world into these zones based on where players are, i understand the concept but not what algorythm is generally used to calculate these zones.
Projects: Top Down City: http://mathpudding.com/

#4 hplus0603   Moderators   -  Reputation: 5693

Like
0Likes
Like

Posted 03 October 2012 - 06:03 PM

For continuous worlds: Grids, hash grids, or quad trees.

Or, if you have separate zones, just say: "One server process == one level geometry == one area." Worked for EverQuest, and for City of Heroes, and a lot of other games.

enum Bool { True, False, FileNotFound };

#5 Delfi   Members   -  Reputation: 106

Like
0Likes
Like

Posted 07 October 2012 - 03:38 PM

Has anyone considered a implementation of this? the graphics look promising:

http://www.sciencedirect.com/science/article/pii/S0305054801000338

Posted Image
Projects: Top Down City: http://mathpudding.com/

#6 hplus0603   Moderators   -  Reputation: 5693

Like
0Likes
Like

Posted 07 October 2012 - 10:04 PM

Yes, I did a lot of work on Voroni based partitioning. It's a mechanism that works OK for statically partitioned maps, but any attempt to build reactive systems (that "move capacity") based on that mechanism is unlikely to be very successful. The reason is that the Voroni cells change shape in not entirely local ways as you introduce or move nodes around (as each cell depends on all the other cells around it.)

Also, finding the cell for a particular point is O(sqrt(num-nodes)) in Voronoi maps, but O(log(num-nodes)) in quad trees, and O(1) for grids and hash grids.

enum Bool { True, False, FileNotFound };




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS