What's new in Photon 5 (Beta)
- PlayerTTL and EmptyRoomTTL are added as well-known room properties that can be set (or changed) after room creation.
- Room flags are added during room creation:
- "Delete Null Properties": properties with null values will be deleted on the server.
- "Broadcast Properties Change": the client who calls SetProperties will also receive PropertiesChanged event.
- "CheckUserOnJoin", "SuppressRoomEvents", "PublishUserId" and "DeleteCacheOnLeave" (also called "CleanupCacheOnLeave") are now room flags. Used to be request parameters or well-known room properties.
- New "GetGameList" operation in SQL lobby (also called "GetCustomRoomList" or "GetRoomList", not to be confused with the GetGameList WebRPC or PUN Classic's GetRoomList).
- Configurable limits for rooms' events cache.
- Configurable limits for lobbies.
- Additional security for SQL lobbies by protecting matchmaking filters (SQL queries) from SQL injection.
- More performance counters. Find their list here.
- JoinRandomRoom allows you to have multiple "chained" comma separated SQL filters (up to 3).
- JoinRandomRoom allows you to create a room if no match is found.
Serialization Protocol V1.8
The server now supports serialization protocol version 1.8 which should be the default for latest client SDKs.
NameServer has been there on the Photon Cloud for a while now. We decided to bring it to the self-hosted Photon Server in v5. It is now the preferred way to deploy Photon.
NameServer is useful to configure your different deployed regions or clusters. So load balancing is done at another level. This has been used and appreciated by our Enterprise customers.
Facebook And Steam Authentication
Custom authentication on the NameServer in v5 brings two out-of-the-box providers, previously available on the Photon Cloud only: Facebook and Steam. This is also another feature used and appreciated by our Enterprise customers.
New Server Error Codes
- The server now returns the UserId, as expected, in all cases as a result of the authentication operation. In case the UserId is not set by the client or auth provider, a GUID generated on the server is returned. In v4, the server did not return a UserId in this case.
- Also, during authentication, in case the Nickname is not set by the authentication provider, the server will not return anything. In v4, the server returned a null Nickname in this case.
- The server now will not allow the same actor to be added to the same interest group multiple times. This was possible in v4 and it resulted in receiving the same event sent to that interest group by that actor multiple times.
- Ther server now supports session tokens and as a result, the quick rejoin feature works as expected.
- MMO project.
- StarDust test console client.
- Switched from Secure Channel (SChannel) to OpenSSL in certificates format and configuration for secure listeners.
- Authentication in v5 should be done on the NameServer and no longer on the MasterServer. Although it's still available on the MasterServer, we will deprecate that in the future. Having Steam and Facebook as authentication providers built-in on NameServer gives you another reason to move it there.