Appearance
Appearance
OrderedDictionary<TKey, TValue>
and OrderedSet<TKey>
have been added. These are intended as replacements for SortedDictionary<>
and SortedSet<>
in most use cases. The ordered collections iterate their members in the order they were inserted in, which makes them usable in share game logic code. The ordered collections are usually 3-5x faster and consume about 10% of the memory of their sorted equivalents.MetaplayClient
is a new class that absorbed a lot of the scaffolding code to manage and update the Metaplay client SDK. This is part of our ongoing work to make the Metaplay SDK easier to use from your game code. MetaplayClient
is optional. We will continue to develop it further as the "happy path" of integrating the Metaplay SDK into your game.ConnectionManager
has been replaced with MetaConnection
and related classes that provide a cleaner interface and more discrete connection error handling. For a good overview on how to adopt the new connection manager, have a look at Connection Management in our dev guide. MetaConnection
. It should make your life easier when dealing with connection edge cases.StringId
class. The new implementation has better performance and well-defined handling of empty values. An empty value is now always represented by the StringId
reference itself being null — the StringId
cannot contain a null nor an empty string. The old ShortStringId
has been removed due to being superseded by the new StringId
. StringId
s where possible.infra-modules
to utilize Kubernetes and Helm Terraform providers to improve the robustness of the code in favor of older null_resource
based resource creation. Choice(IList<T>)
, GetWeightedIndex(IEnumerable<int>)
, GetWeightedIndex(IEnumerable<F32>)
OrderedDictionary
and OrderedSet
. They provide consistent iteration order without the cost of SortedDictionary
/SortedSet
.