Releases: lootlocker/unity-sdk
Releases · lootlocker/unity-sdk
LootLocker_UnitySDKv6.4.0
Features
- Epic and Google Play Player Lookup - The Lookup method now supports using these new platform ids when looking up LootLocker Players.
Bug Fixes
- ListCatalogItemsV2 now properly uses the supplied catalog key.
- When a new play session is started and a player is logged in using any of the StartSession methods that player will be the default for subsequent requests even if there was a "default" from previous sessions.
- Fixed problems around parameter handling for path and query parameters.
- Fixed stability issue in which an exception thrown in a callback method would make LootLocker rerun the request constantly.
Full Changelog: v6.3.0...v6.4.0
LootLocker_UnitySDKv6.3.0
Features
- 📣 Broadcasts 📣 - We’re excited to launch Broadcasts, a new LootLocker feature that helps you connect with your players more directly than ever. With Broadcasts, you can schedule and deliver localized messages to players across one or more of your games. Each broadcast can include text, images, actions, and custom key–value pairs. Read more here: https://lootlocker.com/blog/preview/introducing-broadcasts-a-new-way-to-reach-your-players
- Session Optionals - Together with the broadcast feature we're also launching session optionals. When starting a session you can from now on optionally pass in meta information to set for the session. To begin with, the only existing value is what timezone the session is on, which will be used when interacting with broadcasts (if no value is set, then UTC will be used).
- Time Zone converter - We added a utility class to convert between IANA timezones and Windows Timezones to use with our broadcast feature.
Deprecations
- ListCatalogItems now has a v2 version that you will need to migrate to. All that has changed is that the new version uses "offset based pagination". This means that instead of a
Countand aCursoryou send inPerPageandPagevariables.
Full Changelog: v6.2.0...v6.3.0
LootLocker_UnitySDKv6.2.0
Features
- More Connected Accounts - We have added support for Epic, Playstation, Twitch, and Discord to our Connect Account methods so your players can connect their accounts across those platforms.
- Simple asset filtering - We've added methods to fetch assets with customizable return data. This is a signigicant performance improvement for everyone who uses the asset system in their games.
Bug Fixes
- Files now works for UGC methods
- We have made a small fix to the token refresh and the retry logic internally to the LootLocker SDK
Deprecations
- We have now removed a set of previously deprecated methods and types.
Notice
The automated building of the SDK indicates issues with building to Android, Linux, and WebGL. After investigations we have concluded that this is an issue with the build system. If you experience problems in this area, please reach out.
Full Changelog: v6.1.0...v6.2.0
LootLocker_UnitySDKv6.1.0
Features
- We've added Playstation Network v3 support to the SDK
Deprecations
- We've refactored the Playstation authentication flow so instead of needing to first verify the player and then starting a session we have baked the two steps together into one call. So use
VerifyPlayerAndStartPlaystationNetworkSessioninstead of theVerifyIDandStartPlaystationNetworkSessionmethods.
Full Changelog: v6.0.0...v6.1.0
LootLocker_UnitySDKv6.0.0
Features
- Epic IAPs - LootLocker now has support for Epic In App Purchases 🪙🎉
- Friends - Our new Friends system adds new capabilities to your LootLocker powered game. Read more here: https://docs.lootlocker.com/players/friends-and-followers
- Increment Score - Leaderboards now support the incrementation of scores as a single operation.
- Querying Scores - You can now use the new QueryScore method to check which rank a score would achieve if submitted.
- Simple Asset Listing - Add a simplified asset listing method with optional return data to greatly speed up asset listing when not all data is wanted.
- Last Seen - Session responses now include a value
last_seenwhich holds the last time the player registered a session (prior to the current session) - Progression IDs - All progression responses now have the progression id in the response.
- Delete Character - Add support for deleting a character
BugFixes
- Fixed automatic session refreshes
- Fixed so that WhiteLabelLoginAndStartSession works in a multi user context
Full Changelog: v5.3.0...v6.0.0
LootLocker_UnitySDKv5.3.0
Features
- Google Play Games Services Authentication - We have added support for Google Play Games Services authentication.
- Discord Authentication - We have added support for Discord authentication.
- Convenience methods - We've added some convenience methods for managing player state and player data. We also added a convenience method to GetOtherPlayersClassLoadoutByUid
- Metadata Upsert - We've added support for the "upsert" operation in the meatadata feature: Upsert means "if the key does not exist, create it. if it exists, update the value".
Fixes
- Allocate string lists in http client once instead of each update
Full Changelog: v5.2.0...v5.3.0
LootLocker_UnitySDKv5.2.0
Features
- LootLocker Extension revamp - The LootLocker extension has received a much needed overhaul and is now better than ever. Among other improvements, you can now use the extension directly to change the LootLocker settings. Find it in Window / LootLocker / Manage.
- LootLocker Log Viewer - Along with the updated management extension we introduce the LootLocker Log Viewer. This is a much improved experience in using LootLocker. You can continue using the output log as before. But the new Log Viewer adds nicely rendered and color coded logs with summaries for errors and even links to further reading where applicable. Find it in Window / LootLocker / Log Viewer.
- [Breaking Change] Remote Sessions no longer require the environment id and the title id as inputs. Instead, the SDK fetches these from the backend behind the scenes
- Game Info - We've added a method
GetGameInfowhere you can fetch data about the game as it is configured in LootLocker. - Certificate Handler override - You can now use the method
LootLockerSDKManager._OverrideLootLockerCertificateHandlerto override the default Unity certificate handler. This is to be able to fix tls issues - Default Loadout has been added to class types
Full Changelog: v5.1.0...v5.2.0
LootLocker_UnitySDKv5.1.0
Features
- Multiple user management methods - Methods to manage multiple users have been added to LootLockerSDKManager. Use for example
GetDefaultPlayerUlidandSetDefaultPlayerUlidto manage current default user andClearAllPlayerCachesto clear all local state.
Bug Fixes
- A change to the api for remote sessions broke the feature. The SDK is now updated to use the new api contract.
Full Changelog: v5.0.0...v5.1.0
LootLocker_UnitySDKv5.0.0
Features
- Multi user support 👥 - This version of the SDK sees a major and central feature update in giving the SDK support for multiple users 🎉. This enables a few advanced use cases such as LootLocker supported local multiplayer and user selection/switching. Additionally this will help you build good flows for our account linking feature.
- Remotely Authenticated Connected Accounts 🔗 - We've updated our Connected Accounts feature to better support link flows in more complex scenarios. You can now use auth.game to link accounts to the player generically, without needing to use the dedicated
connectmethods. This will supercharge your players' ability to play across devices and platforms. - Currency Multipliers 🪙 - Wallets now support the new
modifiersproperty, adding full support for the new currency multipliers feature to your game. - Custom notifications 📣 - The SDK now also supports reading and filtering for custom notifications: that is notifications defined by and sent by your game or game admins. Use this to notify your players of asynchronous rewards that happen in your server, to send out news, and much more.
- Response Context - All responses now contain a context structure containing data about the request. So far, this will contain the time that the request was sent as well as the ulid of the player it was "sent by".
- Refactored HTTP Stack - Four months ago we let the refactored web stack out into the wild as a beta feature. We are now confident in the capabilities of this new tech. Nothing should be changing for you as a user except a more stable and consistent platform. If you run into problems that you think are related to this change, then you can disable the new stack using the define
LOOTLOCKER_LEGACY_HTTP_STACK. If you do, then please reach out to us with a report of the error.
Bug Fixes
- Steam store notifications can now be used in the notifications lookup functionalities.
- We now URL Encode all query and path parameters
- Various fixes to out in house json library
Full Changelog: v4.0.0...v5.0.0
LootLocker_UnitySDKv4.0.0
Features
- Player name lookup - We've added a method
LookupPlayerNamesByPlayerNameswhich lets you look up player data using a player's name. - Added other player progression lookup method
GetOtherPlayersProgressionsthat lets you look up the progressions for another player. - Add lookup key for Twitch Drops
Deprecations
- This version of the SDK also sees a spring cleaning of previously deprecated methods:
- Methods
StartSteamSession,VerifySteamID&VerifySteamIDare removed, you should be usingVerifyPlayerAndStartSteamSessioninstead. - The method
GetPlayerInfois removed. UseGetCurrentPlayerInfoinstead. - The method
GetOtherPlayerInfois removed. UseListPlayerInfoinstead. - The full legacy progression support is removed from the SDK and you should use the "new" progression system instead. This means that methods
SubmitXPandGetXpAndLevelhave been removed. - The methods for character actions have been removed (since interface was renamed from character to class). This affects methods
CreateCharacter,ListCharacterTypes,ListPlayerCharacters,GetCharacterLoadout,GetOtherPlayersCharacterLoadout,UpdateCharacter,SetDefaultCharacter,EquipIdAssetToDefaultCharacter,EquipGlobalAssetToDefaultCharacter,EquipIdAssetToCharacter,EquipGlobalAssetToCharacter,UnEquipIdAssetToCharacter,UnEquipIdAssetToCharacter,GetCurrentLoadOutToDefaultCharacter,GetCurrentLoadOutToOtherCharacter,GetEquipableContextToDefaultCharacter. GetAssetInformationwith a string assetId has been removed because the signature of the method has changed, useGetAssetInformationwith an integer id instead.UpdateKeyValuePairByIdForAssetInstancessignature has changed. Use the one with 4 parameters instead:(int assetInstanceID, int keyValueID, string value, string key, Action<LootLockerAssetDefaultResponse> onComplete)- Likewise, support for the legacy purchase system has been removed and thereby the methods
NormalPurchaseCall,RentalPurchaseCall,IosPurchaseVerification,AndroidPurchaseVerification,PollOrderStatus,BeginSteamPurchaseRedemption. - And finally, the support for the legacy trigger system has been dropped meaning methods
TriggerEventandGetTriggeredEventshave been removed.
- Methods
Continuous Integration
- Updated CI tests now run LootLocker Backend locally
Full Changelog: v3.8.0...v4.0.0