Tobias admin


Last Active
Registered, Administrator
  • Re: How to Get Room Properties if all I have is the room name?

    @xblade724, you have a valid point, yes. I would like Photon to have a simple solution for your case but so far, we can't help, aside from combining PUN and Chat.

    The "Realtime" server structures, which we use for PUN, are deliberately limiting what they "send around". There are many game servers (running the actual games) and they only have to update the Master Servers about what's going on. To let players have the room lists while being in a room, we would have to send (in worst case) all room lists to all servers and keep everything in sync. This won't scale and or would be expensive.

    Alternatively, we could enable you to run another connection (two CCUs per client). One to play and one that gets the room lists while you do (which would be new). You would use more CCUs that way and .. as far as I know, the "Realtime" CCUs are more expensive than the "Chat" CCUs.

    Also, we don't even want to pass messages while clients use the Master Server, as those have other tasks and players should move on to the Game Servers (which is part of the scaling strategy). Due to this, you can't message "friends" (a.k.a. anyone you ever want to). If you want this, our scaling tech for this looks like Chat. It's just very different to do in large number of players (and we hope you get thousand's of CCUs)...
  • IPv6 for Unity iOS Exports

    Apple now requires iOS apps to support pure IPv6 connections.
    We tested PUN v1.75 and it supports IPv6, including the "Best Region" setting.

    If you use the Photon Cloud, you only have to make sure your PUN version is up to date.
    If you run a Photon Server, you need to use a recent 4.x server.

    Test All Builds

    Unity's support for IPv6 begins with 5.3.4p4. They posted about adding IPv6 support.

    Several versions of Unity do not successfully support IPv6, so you should test each build.

    If you get a client-side error like this, your client needs an update;
    Connect() to 'x.x.x.x' failed: System.Net.Sockets.SocketException: Network is unreachable in a IPv6 network.

    Test Procedure

    Read "Test for IPv6 DNS64/NAT64 Compatibility Regularly" to learn how to test IPv6 support easily.

    We do this for PUN before release.
    Make sure there is not some other plugin failing!

    Handling Rejections

    We know that some apps got rejected, despite using PUN v1.75 or newer.

    If your app gets rejected, please get in touch with the Apple review team. Point out that you're using PUN and that we and you both tested the networkcode versus their own test procedures.

    Explicitly point to their own test-description page.

    Apple suggests:
    If the iOS application is successful in working across the macOS NAT64 test environment, then the next step is to submit a bug report. We ask developers to use the Apple Developer Bug Report web page - to submit the bug report. The bug report is to indicate that there is some compatibility issue between the app and the App Review test environment. In the bug report, the developer provides evidence that the iOS application worked successfully across the macOS NAT64 test environment by including a packet trace to show the success of the connection process.

    Note that the bug report is not an indication as to where the problem lies, but the fact that the iOS app works in the test environment and not in App Review is an indication that the app / App Review interaction needs further review. Once the bug report is submitted, there issue is then assigned to investigation by an App Review group. Once a bug report is assigned to App Review, the next thing is to follow up with the bug report by communication with App Review - “”. While the email inquiries may not always get a response - all of the correspondence is viewed.

    Cloud and Server

    The Photon Cloud can not provide public IPv6 addresses in the short term. However, Apple's requirement is only that clients can cope with IPv6 addresses in their network, if that provides "IP translation", as described in their article.

    For anyone using Photon Server (OnPremise), this means, you can likely continue to run it as IPv4 service.
    If you want to setup a true IPv6 server, we have some docs for that.

    Get Photon Unity Networking in the Asset Store.
  • Re: IPv6 for Unity iOS Exports

    @shinobu: Did you do the testing as described in Apple's document and it worked? Did you appeal the reject at Apple saying that??
    Despite all tries, we have no proper route to Apple and no insight into their testing yet. It's a mess and we're just tiny, struggling with a giant.

    I'm sorry we can't really help. The docs by Apple are all we can go by.
  • Re: I need UNITY photon pun+ free 1.75 download

    You should really use version control, to avoid issues like these.
    We normally don't provide older versions but as this is an emergency:
  • Re: Custom type cannot be serialized even after registration.

    It's currently not supported in the DotNet clients to serialize a custom Type in a generic Dictionary.
    You should be able to use a Hashtable.
    Both could be overhead you want to avoid. Custom types have overhead and a Dictionary, too. At least for networking, it makes sense to avoid this as much as possible, so using arrays, etc. is preferred - at least, if you send this multiple times per sec.