Weekly Changelog
This is where you will find our log of changes to the APIs, SDKs, the Console and any other services LootLocker provides.
LootLocker Unreal SDKs now support Unreal Engine 5.3 🎉
- Fixed an issue where the price on assets could be hidden by mistake in a situation where it should be shown.
- A bug was fixed which had caused duplicate white label users to be created. The duplicate users have been removed, but this means some white label users who changed their password, might have the wrong password on their user now.
- Users will be asked to confirm their game name on game deletion as an extra precaution
- Meta/Oculus - Added support for authentication using Meta/Oculus
- Last active authentication - You can now query the SDK through GetLastActivePlatform() to see which authentication method was last used on this device
- Heroes - The SDK now supports interaction with the hero feature.
- List Player Characters - A new method to list all the characters that a player has
- Improved error messages - We are revamping how we deal with error messages (See https://docs.lootlocker.com/reference/error-codes) and the SDK now supports this structure. This means that the old Error data (response.Error) has been deprecated, the same data now lives inside the field response.errorData.message. Along with it, you now have the new fields code, doc_url, request_id, and trace_id for improved ability to find the fix for your problem.
- Multiple Google Platforms - Google sign in now supports signing in from different google platforms.
- Last active authentication - You can now query the SDK through GetLastActivePlatform() to see which authentication method was last used on this device
- Meta/Oculus - Added support for authentication using Meta/Oculus
- Obfuscation - The SDK now obfuscates sensitive data before logging
- List Player Characters - A new method to list all the characters that a player has
- Replace the game key with the Session Token in custom headers
- Support for UE 4.24 and up - LootLockerServerSDK now supports all Unreal versions from 4.24 to 5.2
- Asset instance progressions - You can now use progressions on asset instances
- Diagnostics data added to request headers.
- Guest player lookup now uses the correct search term
- Hero methods use the correct HTTP methods
- HTTP Client is only created once
- Our new pricing is released, and you can now see it in the console! You can read more about it here: https://lootlocker.com/blog/new-pricing-2023
- You can once again delete Server API keys in the console.
- The colors for the player list environment pill now follow the same color scheme as the rest of the console.
- Fixed an issue where Data Entities couldn’t be deleted
- We have improved the performance and reliability of session registration for Sign in with Apple and Google Sign In.
- You can now choose which of your Asset Image Types to use as a thumbnail in the LootLocker Console! Go here to set it up: https://console.lootlocker.com/assets/settings/image-types
- A large rework of Player Storage has been completed this week, resulting in much better performance and stability. We did have a few issues immediately surrounding the launch of this as some of you might have noticed. These have been resolved and everything is running smoothly now!
- Fixed issue where promoting asset candidates with thumbnails attached, would not work for some games.
- Added the ability to mark an Asset Image Type as thumbnail, resulting in thumbnail images being returned in the Admin API.
- We have introduced Access Control which allows you to control which users have access to which features. This is a feature that has been requested by many of you and we are happy to finally be able to provide it. You can find it in the Game Settings page. You can also read more about it here: https://lootlocker.com/blog/access-control
- Updated the side menu for Assets, moving Contexts from Game Settings to the Asset menu
- Improved the Add Asset menu, making it possible to create Contexts when creating new Assets
- Users can update their name in settings
- Added support for Access Control
Our documentation has seen various updates and improvements these last few weeks, including:
- Updated screenshots for the Web Console
- Updated and improved examples for both Unreal Blueprints, C++ and Unity
- We have added a section on getting help: https://docs.lootlocker.com/support/getting-help
- Fixed an issue related to White Label Login, where enabling “Block Unverified Players” would not function correctly, causing player to not be prevented from logging in. It now works as intended.
- Apple Game Center Authentication - We've added support for authentication using Apple Game Center, for more information check out: https://docs.lootlocker.com/players/authentication/apple-game-center 🍏
- Instance Progressions - We've added a new feature called instance progressions: your asset instances can now have their own progressions 🎉
- Add more validation when setting player names
- Google session requests now use the correct request object
- Add support for asset instance progressions
- Implement support for multiple Google Sign-in platforms
- Player Files Examples added
- Add more validation when setting player names
- Fix an issue with 'Other character' methods
- Removed unnecessary warning logs
- We stomped out an oddly shaped bug that would cause a few endpoints to return completely empty responses in some cases. 🐛
- Rejoice! The Last Seen property on players have made a return and can now be relied upon again 📆
- Fixed an issue with player file revisions not listing properly
- New examples for Player Files
- Added support for asset instance progressions
- Added support for asset instance progressions
- Added support for asset instance progressions
- The web console has seen a lot of behind the scenes improvements this week, which will result in a more stable and performant experience for you.
- Corrected issue where inactive assets were not filtered out when granting an asset to a players inventory.
- Fixed an issue where searching in the player list would not return correct info on exact matches.
- Fixed a bug related to rendering drop tables in game merging, causing the entire page to crash.
- Fixed an issue where sometimes game merging would report with no changes even if there were changes to merge.
- Fixed a bug with progression tiers incorrectly counting the next step and points
- Multiple types of OAuth2 Client ID’s can now be configured for Google Sign In in the platform settings.
- AngularJS removed - the console now runs only on React/NextJS.
- Character Classes had a facelift from AngularJS to React.
- Fixed an issue with switching environment on Asset pages.
- Fixed an issue with ordering of assets on the Asset page.
Release v1.2.2
- Apple Game Center: The SDK now supports using Apple Game Center as authorization system.
- New samples for using the fresh progressions system.
- Expired sessions will now automatically try to refresh if there is a refresh token.
- Fixes for
GetPlayerStorage
. - Fixes for incisistent line endings warnings.
- Google Sign In now supports multiple types of OAuth2 Client ID’s.
- You can now delete your own games. Find it in Game Settings.
Release v1.2.0
- Fixed the build errors of namespace Plastic not existing. We have moved to using an internal JSON library which you can find here: This removes the reliance on Newtonsoft all together. Please be vigilant for any bugs or errors that are caused by JSON parsing in the next few weeks and let us know.
- Released small UI revamps for Segments, Heroes and Missions
- We have removed the Metrics page from the Web Console. It was part of our legacy feature set and most of the numbers were inaccurate
Released v1.1.48
- Adds possibility to get persistent storage as dictionary
- Adds ability to update public key values for a player
- Makes client side timeout limit configurable
- Fixed the Newtonsoft compiler errors when adding the SDK to Unity
- Adds safeguard to avoid uploads of null files
- Fixed an issue with the player pages, where players from Google and Epic Games would break the frontend.
- Fixed an issue where Asset ULIDs would show up as changes in Game Merge, when it shouldn’t
- Fixed an issue where creating a context, but using the default complexity, would set the wrong complexity in the backend. Issue is resolved and data has been updated for existing games which encountered this issue.
- Epic Sign In - Added methods StartEpicSession and RefreshEpicSession, for more information go to our documentation
- All LootLocker Responses now have an Error property (if there is an error) that is a cleaned up version of the FullTextFromServer property
- Epic Sign In - Added methods StartEpicSession and RefreshEpicSession, for more information go to our documentation
- Added a method to register a progression without adding points to it
- Added a client side rate limiter to avoid being blacklisted due to improper usage
- Fixed an issue where starting sessions for Google and Epic required you to send development_mode in the request, this is no longer the case
- Messages, Mission settings, asset rarirites, context settings and DLCs have had a facelift from old Angular to new React
- Asset filters now auto-open when you add a new one
- You can now require players to have unique names in your game. Change it in your games settings
- Fixed an issue with adding lootboxes to assets
- Added support for Epic Games Sign in
- If you have Unique Player Names enabled in your games settings, you will now receive an error if you try to set a name that is already taken
- The old progressions system has been hidden from the user interface.
- We’ve colour coded the sidebar to make it more identifiable when you’re in staging and live. Stage mode remains green, and Live presents as Orange. Let us know what you think!
- Leaderboards will now warn you if you try to create one with a conflicting key
- Fixed an issue where clicking save on Image Types would create multiple
- Fixed an issue allowing collectables to be created in Live mode
- Fixed an issue with the validation of Max Title and Max Summary lengths
- Fixed an issue with collectables sometimes returning an error
- Fixed an issue allowing triggers to be created in Live mode
- Fixed an issue with Nintendo icon on players
- We’ve decided to turn on player verification for all new games, for Steam and PlayStation sessions. This means all sessions created for these platforms will need to be verified before the session can start. If you want to have this enabled for your existing game, please reach out on our discord or on email.
- Fixed an issue where some errors were not being returned correctly when starting guest and steam/psn/android sessions. It should be easier to figure out what an error is now.
- The SDK will now automatically resolve and use the domain API if the domain key is set
- The SDK will now store and automatically use the Apple and Google refresh tokens if not done manually
- The SDK now supports Enter Play Mode Options allowing you to speed up your development process
- The SDK will now now relies on a newer version of Newtonsoft
- The SDK will no longer silently discard requests with an expected body that is null
- Player and Asset Reports now have a message instead of a text
- Requests are now allowed to timeout
- Local session data is now cleared upon ending a session and deleting a player
- It is now possible to request user verification by email for White Label Users
- The SDK now automatically resolves and uses domain API if the domain key is set
- StartSteamSession now sets the correct platform
- Fixed Critical WhiteLabel bug that caused white label sessions to fail for old Unreal projects
- Google Sign In - Game API now supports starting player sessions using Google ID tokens
- Fixed an issue making it impossible to clear leaderboards
- We still have a known issue where the UI won't show success when clearing leaderboards, but it does work
Your asset page has had an overhaul! With an updated design more in line with the rest of the web console, you’ll also find some stability improvements. We’re not perfect however, and if you find something not working as it should, you still have access to the legacy page for now.
- Overhauled Progression System: We're excited to give you a new feature. Learn more under Progressions.
- Platform keys and other sensitive information are now behaves like a password input, with toggleable visibility, except the first four characters are visible for easy identification.
- Assets in the asset list and grid views are now able to be filtered by their context type eg. Soft Currency Package, Feature Unlocks, or any of your custom contexts.
- You can now see player file revisions in the Player files section and revert to previous versions of the file.
- Overhauled Progression System: We're excited to give you a new feature. Learn more under Progressions.
- Deprecated Platform selector: No need to set the platform here, instead you should use the appropriate StartSession method for your platform.
- Deprecated legacy API keys (that don't start with dev or prod): If you're on one of those, generate new keys and use those instead
- Clarified descriptions
- Added method to update player files
- Added method that allows a player to delete themselves
- Added a single method combining WhiteLabel Login and Start Session -> WhiteLabelLoginAndStartSession
- Added methods to handle heroes with variations
- Avoid logging sensitive information, especially outside the editor
- Fixed bug that broke White Label login
- Overhauled Progression System: We're excited to give you a new feature. Learn more under Progressions.
- Deprecated Platform selector: No need to set the platform here, instead you should use the appropriate StartSession method for your platform.
- Deprecated legacy API keys (that don't start with dev or prod): If you're on one of those, generate new keys and use those instead
- Clarified descriptions
- Added method to update player files
- Added method that allows a player to delete themselves
- Added a single method combining WhiteLabel Login and Start Session -> WhiteLabelLoginAndStartSession
- Updated LootLockers logging system and allowed for more granular control of what's logged.
- Obfuscate sensitive information in logs
- GetOtherPlayerXPAndLevel is no longer broken
- The SDK now registers as initialized even when manually initialized
- The SDK now logs errors as errors ;)
- EndSession will no longer throw an error if no session exists
- Fixed bug that broke White Label login
- Overhauled Progression System: We're excited to give you a new feature. Learn more under Progressions.
- Added an endpoint for updating Player Files.
- Overhauled Progression System: We're excited to give you a new feature. Learn more under Progressions.
- Added an endpoint for updating Player Files.
- Overhauled Progression System: We're excited to give you a new feature. Learn more under Progressions.
- Added an endpoint for updating Player Files.
- Added an endpoint for reverting to previous revisions of Player Files.
- Leaderboards now tell users if they are on the wrong environment (stage/production) when trying to view a particular leaderboard.
- Fixed an issue where it wasn’t possible to save White Label Platform settings if you had enabled player verification
- Added endpoint to allow players to delete themselves. This lets iOS games comply with updated requirements from Apple.
- Added an endpoint for getting player persistent storage for multiple players
- Fixed a bug causing players on the guest platform without names to not be returned in the lookup endpoint.
- Added an endpoint for getting player persistent storage for multiple players
- Fixed a bug causing players on the guest platform without names to not be returned in the lookup endpoint.
Release: v1.1.43 of the Unity SDK - https://github.com/LootLocker/unity-sdk/releases/tag/v1.1.43
- Fixed a bug with the LootLocker Samples using the wrong assembly definition file
- Added a namespace for LootLocker samples to remove warnings when installing
- Uploading files to players will now return those files when listing a players files in all APIs
- Users are now able to add scores to players in leaderboards
- Metadata added to scores in leaderboards is now visible, and updatable
- You can now block white label users from leaderboards if they haven't verified their email
- When creating an Asset we now remember the last Context used, making it easier to create multiple Assets in a row with the same Context
- Improved Player list pagination positioning for better visibility
- Improved API Key descriptions for clarity
- Fixed issue when adding scores to generic leaderboards
- Fixed issue where refund button was cutoff in some scenarios
- Fixed issue where it wasn't possible to delete messages
- Fixed an issue where you wouldn't be shown the MFA recovery code after enabling it
- Fixed an issue where it wasn't possible to use MFA recovery codes
- Added a new function to include metadata when uploading a score; LootLockerSubmitScoreMetadata("leaderboardID", "score", "metadata")
- Player names will be returned when a new game session is registered (if the user has set a name)
- Requesting a verification email for white label users now works again, and can be requested with the users email, and not just ID like before
- Improved error message when trying lookup a player on playerID, but sending a string
- Improved errors when sending invalid version number in session registration
- Improved error message when trying lookup a player by playerID, but sending a string
- Fixed issue with price calculator price using incorrect formatting
- Fixed issue where images were covering up some text
- Fixed a few broken links in the getting started section. Thanks to Discord user @LegendarySwordsman2 for reporting this!
- Deprecated leaderboard functions that uses leaderboardID -> use the same functions but with leaderboardKey instead
- Updating LootLocker will no longer remove the API-key and LootLocker settings
- Fixes for the Unity asset-store
- Brand new merging interface rebuilt in React for viewing and selecting changes from your staging environment to your live.
- Fixed a bug where the action button on the asset list would sometimes be half way cut off.
- Fixed a bug causing Player Storage to silently fail to save if the value was above 260 characters, but below 15000. The actual length limit is now 1500 characters.
- LLPlayerRank(), LLPlayerScore() now returns their correct values
- We added an brand new endpoint for listing players for your game, which should be much faster for games with large player bases than the old search endpoints "recent" option.
- Fixed an issue where creating a context would not respect
user facing
anddetachable
- Fixed an issue where creating a context would not respect
user facing
anddetachable
- Added the option to clear an entire leaderboard of all of it's data from the leaderboards page.
- Added support for multiple API keys. You can now create multiple API keys for your game
- We now show the variation ID for each variation, on the asset page
- Player name lookup endpoint now also returns players who don't have a name set
- Fix issue with starting session for games using a string in the value for
development_mode
- Player name lookup endpoint now also returns players who don't have a name set