Fix S6 Debugger window throwing error if DebugConfig exists in project but no LocalRMBConfig exists
[5.3.0-9] - 2023-06-16
fix local rmb config not saved in debugger
[5.3.0-8] - 2023-06-15
remove System.Security.Permissions from SDK which cause conflict when using Unity analytics or inapp purchase services
[5.3.0-7] - 2023-06-15
add follower client to access user's followers/following API
[5.3.0-6] - 2023-06-15
Added HighScore and LowScore to the ScoreType enum in LeaderboardClient
[5.3.0-5] - 2023-06-13
Fix OnDestroy in BigScreenManager not honouring DisableEndSessionOnClose()
[5.3.0-4] - 2023-06-13
Add UpdateRoomMaxPlayers to BigScreenManager
[5.3.0-3] - 2023-06-12
Added the function DisableEndSessionOnClose() to BigScreenManager
Call this method if you wish to disable the auto shutdown of the session on application quit
Notes:
If you are using this your actor should handle the session shutdown logic
By default a session with no active host will shutdown after 3mins
[5.3.0-2] - 2023-06-08
Add GetRoomsByUserFilter to BigScreenManager
[5.2.0-3] - 2023-06-05
A "Debug" named parameter in CreateSession and CreateSessionAsync that will trigger the debug option in lobby-service (false by default) was added
[5.2.0-2] - 2023-05-23
rename ClientManager.GetRoomsByFilterAsync to ClientManager.GetRoomsByUserFilter
change function signature for ClientManager.GetRooms which now accepts pagination options and returns response data that includes pagination for next page of data.
create room no longer fails if there is no free task in the lobby's pool. This is no longer consider as an error in the SDK. The BigScreenManager will continue to poll for rmb bus info indefinitely until it receives proper bus info. Therefore, the game should destroy the room if it does not want to continue to wait for bus info.
[5.1.0-4] - 2023-05-05
Changed
change the return type of the actor info endpoint to a class that has default for better discoverability
[5.1.0-3] - 2023-04-26
Added logic to send live notifications
Added Social Service env paths
[5.1.0-2] - 2023-04-27
Support products with multiple costs
Added CostItemID parameter to Inventory Purchase methods to specify which cost to be used for purchase
Leaving CostItemID blank will default to use the first cost listed in the product definition
[5.0.0-8] - 2023-04-04
update sample code
[5.0.0-7] - 2023-04-04
rename LoginToTwitch to AuthTwitchForGame
rename LoginToTwitchWithDeepLinkCallback to AuthTwitchForGameWithDeepLinkCallback
[5.0.0-6] - 2023-04-04
initialize debugger data without need for debugger window to be enabled
[5.0.0-5] - 2023-04-03
stop auth wait loop when exiting play mode
fix stg/test token-store url
[5.0.0-4] - 2023-03-27
change BigScreenManager.OnDestroy to only clean up session so that it doesn't trigger app quit when the component is destroyed
[5.0.0-3] - 2023-03-24
fix documentation
[5.0.0-2] - 2023-03-24
Restructure the SDk to use top-down approach instead of static class
Namespace StreamSIX renamed to STREAMSIX
Each feature in SDK use its own UnityEngine.Logger which developers can configure to selective disable logs in SDK (see LogHelper.cs)
BigScreen and Client
all login functions in AuthController moved to UserManager
AuthController.Init() is removed. Initialize is done by BigScreenManager.Init() and ClientManager.Init()
BigScreenManager and ClientManager are the main class where all features can be access, including: UserManager, TwitchController, AppleController, Entity, Leaderboard, Inventory
EntityManager is broken up into GameData and UserData
InventoryManager is broken up into InventoryDefinition, UserInventory, and ShareInventory
LeaderboardManager is broken up into CustomLeaderboard and PointsLeaderboard
StreamSIX.Entity.Entity renamed to STREAMSIX.Entity.EntityDef
AuthDeepLink is no longer a MonoBehaviour, deeplink scheme is defined in BigScreen/Client config asset file: BigScreenConfig.DeepLinkApplicationScheme and ClientConfig.DeepLinkApplicationScheme
LocalRMBConfig is no longer a ScriptableObject and developers no longer need to create this asset
Created STREAMSIX Debugger window in Unity Editor to configure target environment, target rmb (remote/local) when running in Editor PlayMode
Events from SDK can be registered in BigScreenManager.EventCallback and ClientManager.EventCallback class. This allows callback setup before initialization
Actor
Version 5 introduce actor as a Unity project (for both rmb and lambda actor)
Extend your mothership/satellite/lambda actor using BaseMothership, BaseSatellite, BaseLambda, which contains access to all features: TwitchManager, Entity, Leaderboard, Inventory, etc
rmb.mothership.Handler renamed to STREAMSIX.Actor.Mothership.MothershipSender
rmb.shared.MothershipHandler renamed to STREAMSIX.Actor.MothershipReceiver
rmb.satellite.Handler renamed to STREAMSIX.Actor.Satellite.SatelliteSender
rmb.shared.SatelliteHandler renamed to STREAMSIX.Actor.SatelliteReceiver
Util.log is replaced by UnityEngine.Debug
STREAMSIX Debugger window in Unity Editor to launch local rmb for debugging locally
Debugger can build actor and upload to the platform (similar to DevPortal)
Upgrade guide for existing bigscreen/client
Remove all SDK packages from project
Change registry scope to "com.streamsix"
Update streamsix-sdk to v5
Remove unity Version control package (this cause conflict with SDK's dependency library)
Restart unity to resolve lib dependency
[4.7.0-4] - 2023-06-23
Added HighScore/LowScore enums
[4.7.0-3] - 2023-06-05
A "Debug" named parameter in CreateSession and CreateSessionAsync that will trigger the debug option in lobby-service (false by default) was added
[4.7.0-2] - 2023-03-24
Fixes
Fix Application.wantsToQuit handler sometimes not quitting application after first attempt
[4.6.0-6] - 2022-12-22
Added BigScreenManager.OnEndSession and ClientManager.OnEndSession which triggers when the session ends. SDK will attempts to connect to RMB 5 times, after which this callback is triggered. This can be used on both the BigScreen and Client side to know when the session is gone. This callback is also triggered when BigScreen end the session explicitly with BigScreenManager.EndSessionAsync.
[4.6.0-5] - 2022-12-12
add GetRooms in ClientManager to retrieve other users' running session
remove change log from SDK
[4.6.0-4] - 2022-11-14
fix sample code, add more comment
[4.6.0-3] - 2022-11-14
update entity client that include functions to ban players
add sample code in QuickStart scene under BanPlayer
[4.6.0-2] - 2022-11-10
add RMB service message to allow BigScreen to push player scores to leaderboard through RMB
update leaderboard client which include function to query points leaderboard
add sample code in QuickStart scene under UpdateLeaderboardScore
[4.5.0-2] - 2022-10-07
Remove duplicate exceptions originally from entity-client
catch exception in keep alive loop
add using clause for reading http response
[4.4.0-2] - 2022-07-14
add inventory manager to setup inventory client
[4.4.0-1] - 2022-06-22
add inventory service config
[4.3.3-1] - 2022-05-19
add actor info to Room data
[4.3.2-1] - 2022-05-10
change MessageBus.SendPlayerInfo to internal, auto calls after client connects to rmb
[4.3.1-6] - 2022-04-29
add user/device info to create room and player join request
[4.3.1-5] - 2022-04-27
avoid setting custom target again once session is created, use cached custom target until session is closed
[4.3.1-4] - 2022-04-25
add bigscreen user info when connecting to mothership
remove userId param from JoinRoom function, userId is retreated from UserManager object
[4.3.1-3] - 2022-04-15
add distribution info to create session
[4.3.1-2] - 2022-04-13
bump auth package version
[4.3.1-1] - 2022-04-11
fix get room by filter so it also handles config setup
[4.3.0-5] - 2022-03-25
add leaderboard client
[4.3.0-4] - 2022-03-22
bump auth package version
[4.3.0-3] - 2022-03-21
bump auth package version, add test config for prod environment
[4.3.0-2] - 2022-03-11
add function to get player count from rmb
[4.3.0-1] - 2022-03-08
add function to resume session, clean up Session class to only get/set/clear session cached in player pref
reenable get player count functions
[4.2.1-3] - 2022-03-01
Update authentication package to fix json deserialization in android build
[4.2.1-2] - 2022-03-01
Update entity client to perserve all types in assembly in android build
[4.2.1-1] - 2022-02-25
Fix compiler issue in standalone mode.
Update authentication package to 1.1.3-1
[4.2.0-4] - 2022-02-15
fix dependency not match
[4.2.0-3] - 2022-02-15
update comment in quick start
[4.2.0-2] - 2022-02-10
update auth package, update basic rmb tag, example now only set auth environment instead of delete all player pref
[4.2.0-1] - 2022-02-04
SDK now handles setting actor peer type on client side. No need to handle message ID 100 on the client anymore. Instead, listen for mManager.MessageBus.RMBOnClientCustomTarget.
[4.1.0-2] - 2022-02-02
Use EntityClient package
[4.1.0-1] - 2022-01-24
Add EntityManager
Support custom actor with ActorType/ActorName in request when creating room
[4.0.0-8] - 2021-12-14
update auth sdk to use latest logging standard headers
update sample
integrate auth sdk
[4.0.0-7] - 2021-12-01
Changed
Calls AssignToPlayerID() in SendPlayerInfo()
[4.0.0-6] - 2021-12-01
Changed
Add logging headers
Fix parsing of player info from message bus
Update test case to verify player data from rmb
[4.0.0-4] - 2021-11-30
Changed
Fix client rmb connect as room
SDK no longer spawn local rmb, only use LocalRMBConfig to connect
Convert message bus request to async
Deserialize player info return from message bus, handles most of the custom target broadcast
[4.0.0-3] - 2021-11-26
Changed
Remove Setup() from BigScreenManager and ClientManager, arguments are added to CreateSession/JoinRoom functions
[4.0.0-2] - 2021-11-25
Changed
Add c# actor config in LocalRMBConfig
Rremove routing parameter from SetCustomTarget, now tracked internally, add custom target handling in example
Change functions that are only used by SDK to internal
Add client manager EndSession
Rename GameManager to BigScreenManager-
BigScreenManager and ClientManager no longer singleton
[4.0.0-1] - 2021-11-23
Added
Merge client-sdk with gs-sdk
Most functions have async counterpart which is the preferred usage
Option to spawn local RMB
EndSession() for ClientManager
Changed
InitService() renamed to CreateSession()
Convert configs to ScriptableObject
Rename namespace to StreamSIX
Convert Messenger events to UnityEvent events. Messenger is removed.
Since EventNames.OnJoinCode no longer exists, get the join code from RoomService.RoomData return from BigScreenManager.CreateSessionAsync