Skip to content
This repository was archived by the owner on Jan 18, 2022. It is now read-only.

GDK for Unity Alpha Release 0.2.1

Compare
Choose a tag to compare
@jamiebrynes7 jamiebrynes7 released this 15 Apr 14:48
· 365 commits to master since this release
8ba0b57

This release contains a new feature module for building interest queries in a user-friendly way and usability improvements to the Player Lifecycle Feature Module in additional to a number of bug fixes and other, smaller features!

Keep giving us your feedback and/or suggestions! Check out our Discord, our forums, or here in the Github issues!

For more information, have a browse through our detailed release notes below! 🎉


Breaking Changes

  • Removed clientAccess from the AddPlayerLifecycleComponents signature. We now construct the client access attribute within the helper.

Added

  • Added a static helper in the EntityTemplate class to construct worker access attributes. See the API docs for more info.
  • Added an optional callback as an argument to the RequestPlayerCreation method in SendCreatePlayerRequestSystem. This callback is invoked upon receiving a response to a player creation request.
  • Added a new Query-based interest helper module, com.improbable.gdk.querybasedinteresthelper.
    • InterestTemplate provides functionality to ergonomically add, replace and clear queries from an Interest component.
    • InterestQuery reduces boilerplate code required to construct interest queries.
    • Constraint contains static methods to easily create constraints for an interest query.
  • Added a Improbable.Gdk.Core.Collections.Result<T, E> struct to represent a result which can either contain a value T or an error E.
  • Added Scripting Define Symbol DISABLE_REACTIVE_COMPONENTS. Using this symbol will disable all reactive components and systems.
  • Added a WorkerFlagReader which you can subscribe and Require. This allows you to:
    • Add callbacks for changes to worker flags.
    • Read the value of worker flags.

Changed

  • The player lifecycle module now dynamically queries for PlayerCreator entities, and sends requests to a random one each time. This removes the reliance on a hardcoded PlayerCreator Entity ID.
  • Removed the Type suffix from player lifecycle schema types.
  • RedirectedProcess.RunAsync() now takes a CancellationToken? as a parameter. This token can be used to cancel the underlying process.
  • Updated the Unity version to 2018.3.11

Fixed

  • Fixed an issue where player creation requests could retry infinitely without logging failure.
  • Fixed an issue where if you called RedirectedProcess.Command(...) in a non-main thread, it would throw an exception.
  • Fixed an issue where having the same name for a schema package and a schema component would lead to generating invalid code.

Internal

  • Tools package now uses PackageManager API instead of parsing manifest.json.
  • Updated default snapshot to have more than one PlayerCreator entity.
  • Fixed package dependencies.
  • Worker flag changes are propagated to the ViewDiff.
  • Exposed GetWorkerFlag(string name) on the View.