2023-11-10

Author image
Alexander Bergendahl5 min read

This week we have added economy support to our progression system, meaning you can now reward currencies from any progression.

Additionally we have also recently shipped two major updates to our SDKs.

Web Console

Changes

  • Added support for currencies in progression rewards

Admin API

Changes

  • Added support for currencies in progression rewards

Game API

Changes

  • Added support for currencies in progression rewards

Server API

Changes

  • Added support for currencies in progression rewards

Unity SDK

Changes

Unity SDK v2.0.0 Released

v2.0.0 removes a lot of code that has previosly been deprecated, you can read more in our docs about what that means.

  • How you get error information from the SDK has changed. Instead of the fields hasError and Error in each response there is now a field named errorData within which all error information resides. Instead of hasError you use !success, and instead of Error you should use the fields in errorData. The exact replacement is errorData.message.
  • The field "texture" on each response has been removed (it was never used)
  • Dev Mode is deprecated, so is the "support" for deprecated api keys
  • Game ID is no longer needed for White Label Signup
  • When calling Init explicitly with parameters, then platform and onDevelopmentMode are no longer needed. The method now looks like this: bool Init(string apiKey, string gameVersion, string domainKey)
  • void StartSession(string deviceId, Action<LootLockerSessionResponse> onComplete) is removed. If you're using this method you need to switch over to the topical start session methods instead. For example if you were using this to start a session for Android, then you should now use StartAndroidSession instead. If you're unsure of what to use, we recommend Guest or White Label.
  • EndSession no longer takes deviceId as an argument, use void EndSession(Action<LootLockerSessionResponse> onComplete) instead
  • Calling StartWhiteLabelSession with email and password is no longer supported. Instead, we cache the needed information and you should call StartWhiteLabelSession(Action<LootLockerSessionResponse> onComplete). Or even better, replace the separate Login and StartSession calls with using WhiteLabelLoginAndStartSession
  • All leaderboard methods that were using the leaderboard id (integer) have been removed. You should use the methods that take the leaderboard keys instead. The reason for this is that the leaderboard key is independent across environments meaning your code can stay the same when the game releases. Affected methods are:
    • GetMemberRank
    • GetByListOfMembers
    • GetScoreList
    • GetNextScoreList
    • GetPrevScoreList
    • GetScoreListOriginal
    • SubmitScore
  • Starting a LootLocker Session from a White Label Login Token no longer needs a password in the request (LootLockerWhiteLabelSessionRequest)
  • Renamed types (deprecated the old one, use the new one)
    • LootLockerActivateARentalAssetResponse renamed to LootLockerActivateRentalAssetResponse
    • LootLockerGettingCollectablesResponse renamed to LootLockerGetCollectablesResponse
    • LootLockerCollectingAnItemResponse renamed to LootLockerCollectItemResponse
    • LootLockerFinishingAMissionRequest renamed to LootLockerFinishMissionRequest
    • LootLockerGettingAllMissionsResponse renamed to LootLockerGetAllMissionsResponse
    • LootLockerGettingASingleMissionResponse renamed to LootLockerGetMissionResponse
    • LootLockerStartingAMissionResponse renamed to LootLockerStartMissionResponse
    • LootLockerFinishingAMissionResponse renamed to LootLockerFinishMissionResponse
    • LootLockerTriggerAnEventRequest renamed to LootLockerExecuteTriggerRequest
    • LootLockerTriggerAnEventResponse renamed to LootLockerExecuteTriggerResponse
    • LootLockerListingAllTriggersResponse renamed to LootLockerListAllTriggersResponse
  • Renamed methods (deprecated the old one, use the new one)
    • GettingCollectables renamed to GetCollectables
    • CollectingAnItem renamed to CollectItem
    • GettingAllMaps renamed to GetAllMaps
    • GettingAllMissions renamed to GetAllMissions
    • GettingASingleMission renamed to GetMission
    • StartingAMission renamed to StartMission
    • FinishingAMission renamed to FinishMission
    • PollingOrderStatus renamed to PollOrderStatus
    • ActivatingARentalAsset renamed to ActivateRentalAsset
    • TriggeringAnEvent renamed to ExecuteTrigger
    • ListingTriggeredTriggerEvents renamed to ListAllExecutedTriggers

Bug Fixes

  • The SDK will no longer cause editor versions newer than 2021 to lose their External Tools section in Preferences

Unreal SDK

Changes

Unreal SDK v3.0.0 Released

v3.0.0 removes a lot of code that has previosly been deprecated, you can read more in our docs about what that means.

  • How you get error information from the SDK has changed. Instead of the field Error in each response there is now a field named ErrorData within which all error information resides. Instead of Error you should use the fields in errorData. The exact replacement is errorData.Message. Additionally the field ServerCallStatusCode has been replaced with the field StatusCode.
  • void StartSession(const FString& PlayerIdentifier, const FAuthResponseBP& OnStartedSessionRequestCompleted) is removed. If you're using this method you need to switch over to the topical start session methods instead. For example if you were using this to start a session for Android, then you should now use StartAndroidSession instead. If you're unsure of what to use, we recommend Guest or White Label. Along with this the configuration of Platform in LootLockers config file is removed.
  • DevelopmentMode is deprecated, so is the "support" for deprecated api keys. If you're using an api key that does not start with dev_ or prod_ you need to migrate from the api key you're using to a new one for continued development. You can do that here. Remember that if you have released versions of your game that are using the old API key those will continue working as long as you do not remove the old API key from the console. If you don't have released versions however we recommend that you do remove the old API key.
  • Renamed methods (deprecated the old one, use the new one)
    • GetAllKeyValuePairsToAnInstanceForAssetInstance renamed to GetAllKeyValuePairsForAssetInstance

Stay up to date.

Join our newsletter and get these posts sent directly to your inbox.