Roadmap and current activity

Options
Hello,

I am wondering if there is a roadmap for PUN? Different ideas you could implement:

* Bit compression, delta and other performance boosts
* Something similar to syncvar, used in UNET.
* Hosting a headless server while using PUN (without the hack method of 1 room being a "server")
* Simple solution for LAN games where everything does not have to go through photon cloud.
* Send rates based on proximity. Check if other player is close enough, if is, then increase/decrease send rate.

Unity devs have published a post, plus written on forums what their current status is and what they plan to achieve. The biggest one being the option for dedicated server and implementing host migration. If these features are done and they have many more planned then why should I stick with Photon (if we exclude pricing). If they improve their product then why should I stick with Photon? What are future plans for Photon? Or is it a complete product with nothing new in mind? Only occasional bugfixes and performance increase?

PUN's low level api code is not open source either, while UNET's is. This means if you don't improve your product, your customers can't do it either. I've developed a product, using PUN for couple of months now. But I'm starting to see that if I want to create a game with 64 players in one room then I could have huge bandwidth issues and I cannot optimize the netcode for it to suit my needs. Plus having the option of creating dedicated servers with PUN, so players/clans could cost servers (like in Wolfenstein: Enemy Territory and Quake), would reduce my costs related to PUN. Just add necessary files to server, start up the server with an exe and you're ready to go.

Other thing I have noticed is that many questions on this forum are left unanswered. Mods are not active, at all. Or if they are then they are very selective about the questions, which they answer. What is the reason for it? Are you planning to increase the activity? If so, then how?

Why should I continue using PUN? What guarantees the fact the Photon stays on top in atleast the upcoming 5 years while competition is working hard to make their products better? (forge, unet).

Cheers,
Frosty

Comments

  • Tobias
    Options
    Hi Frosty.
    Thanks for your interest in and input for PUN. That's appreciated and not going unnoticed.

    Your other posts might be difficult to answer or in the domain of "you need to figure this out for your game, sorry". Our time is limited and in some weeks, we have to prioritize bug reports, etc.. The forum is not just for us to answer questions. It's a community: Help others and they will help you, too, if asked politely (and if someone has the same interests).
    That said: I'm sorry our posts did fall through the grid and didn't get any attention. Maybe post a TL;DR summary to clarify things and to make it easier for us/anyone to answer. Make sure to post solutions, too.


    As you noticed, we don't have a fixed roadmap for PUN currently.
    We could write up a lot of ideas and promises, yes. But then "real life" would kick-in and things get delayed and shuffled around until everyone is unhappy, waiting for one or another thing.

    What we can say is this: PUN is never simply done. We can improve stability, performance and usability quite a bit. We noticed SyncVars and think about interest management and better callbacks, etc.. Short term, we are adding a new option for matchmaking to fetch a (sql-like) filtered list of rooms to display.
    The current focus is on subtle things and performance improvements. Some of the newer platforms (WebGL and VR) are especially sensitive in that regard and we want to make sure more demanding games are at home with PUN.


    You seem to focus on the "standalone" market, stressing "in-Unity hosted servers". Those won't happen for PUN.
    The idea for PUN is to have dedicated servers, run by Exit Games or the game developers. There is no need to list random people's servers, support setting them up and updating your server-software when you want it. There is no NAT, no firewall hassle and no relaying for some of the cases (but not all). Also, you don't have to wait for flawless host migration to happen.
    Don't underestimate what a Photon server does in this regard. It's not just relay. Aside from authentication options, matchmaking and the ability to tie-in external servers, there are properties, event caches and a simple form of server-side interest management, to name a few puzzle pieces.

    We got Bolt as product that focuses on in-Unity hosting, LAN games and such. It's a different tool for a different mindset and different requirements.


    Some parts of Photon are closed source. Some of that wraps up our "secret sauce" (especially on the server-side), some of the closed source could be opened but would be hard to fully grasp (and supporting everyone to understand low level networking is hard to achieve).
    Most of PUN isn't closed source. Let us know when you worked through it and implemented new features we should incorporate.
    Unity's LLAPI is not open. It's the HLAPI which you can see. We waded through it and honestly, what you see is only a part of how it works. SyncVars depend heavily on modifications of your builds and afaik, this is deeply tied into the engine / build process.

    So, what guarantees that PUN is the best option in X years from now?
    If there ever was a guarantee for anything in life, it's probably: us. The Photon team is dedicated and knowledgeable and we try to work on the things most of the games need most.
    You can actually be a part of that "us", too: Make good games with PUN and provide feedback and you're in :)


    Have fun!
  • Frosty
    Options
    Hey,

    Thank you for your answer!

    I understand that the service that Photon offers with its server is very powerful. Host migration, guaranteed connection 24/7 etc. I understand why it might seem like I might underestimate that. One of the reasons probably being, that what I am looking for might be another product, such as Bolt.

    You mentioned VR being sensitive in regard of performance. However, here's an idea. If LAN was possible with PUN then wouldn't it increase performance heavily for games which are played over a local network?
    From the standpoint of VR, if there were any games in the future, which were played at tournaments like CS:GO, LoL, Dota then these games would have much less of a bandwidth issue if they could be played locally.
    Speaking of LAN. Why is it not implemented currently? With the current architecture of PUN, would it be even possible to implement LAN capability? Is it because then all of the server-side logic, which is at cloud servers, should be given to the developers so they could run a similar application on their local machines? If that is the case then maybe gives us an option where host migration is not possible on LAN. And all the other features that photon servers provide.

    Cheers,
    Frosty
  • Tobias
    Options
    When you run a game in LAN versus "over the internet", you're not saving performance. You only reduce latency (which is great but it usually doesn't cause stuttering in framerate). So LAN support would not change much for VR, which has simply less time/frame. We have to reduce the amount of memory used and collected by the GC for that.
    To support playing via internet and LAN, you have to code for the bandwidth limits and speeds of the lower spec network. It's not helping if you could move a GB in LAN when you also want your game to work on the net.

    Essentially interest was too low to maintain a "Redistributable Photon Server Package" for LAN support and so we dropped it. You could run Photon Servers in a LAN if there are Windows machines available (a current requirement) but you'd have to get a suitable license to distribute the server for your game. If that becomes a must-have for a great game, mail us to developer@photonengine.com and we can find a solution.
  • Frosty
    Options
    What I meant by performance was actually latency. I guess it really is not that big of a problem if you look at the bigger picture. What I meant by tournaments was that when there are for example 10 vive areas in the same physical location (5vs5) teams, then it would help reduce the latency between these vive players. An example is a tournament.

    Another example is when presenting the game somewhere. I have an upcoming event where I will put 2 players against each other at a big event. And internet connection over there could get really clogged up. This means I would have to get a good speed private network OR if I had an option for lan, online congestion would not be a problem with me.

    Imagine, if 2 people wanted to play LAN at each others place but they did not have online internet connection. They wouldn't be able to play because PUN does not support it.

    Since the demand is not big, as you said, then I believe this will not be planned for future. However, you are saying that I could play LAN the way I described, using Photon Server?
  • Tobias
    Options
    You could play games on a local server (at exhibitions etc), yes. You just need a license for the server in that case.
    Please get in touch about this by mail: developer@photonengine.com