Seamless worlds, revisited

Options
fzzzt
edited January 2012 in Photon Server
Hello,

I'm evaluating Photon for a new project underway. So far it seems pretty slick, nice work. It also seems our work on the authentication server and terrain loading may still be useful, which is nice.

We are going to have a seamless world, though, and as yet I haven't figured out if this is something supported by Photon out of the box or will need to be written from scratch. I found a thread, "Seamless world. Possible?", that asked this same question two years ago and someone stated that there is no concept of zones in Photon. From the MMO Island example in Unity it seems that this is still correct (just one terrain), so I am thinking the grids in the grid demo don't have anything to do with this, and are just for show, or event calculation.

Is this the case? We would need to write our own loading mechanisms and somehow modify the "grid" part to notice events and items in nearby zones?

Comments

  • Tobias
    Options
    You are right: The Island demo shows a possible "seamless world" implementation and the grid is used to visualize what happens under the hood.

    The "MMO" server application from the SDK basically does interest management: A client sets it's position and how far it can "see" and the server selects the updates of players close-by. This is done by grids to simplify the "visibility" selection per peer, which otherwise could take a lot of performance. All this is done to avoid a client getting updates from all players in the whole world (which would be too much).
    Please note: The MMO solution is one way to implement interest management, items and basic MMO entities. It's not a complete solution but meant as blueprint and basis to extend and customize to your requirements and game. Of course this is more work on the developer's side but it gives much better results. A general out-of-the-box solution either has limits to workaround or too much complexity in most cases.

    Photon is pretty flexible and can be modified on a very low level. In principle, you could implement anything on top of operations, responses and events, which are the basic stepstones for communication between servers and clients. The MMO solution is complex but built for performance and flexibility.

    Let us know how you do and if we need to help.