Kanda Foundation 0.8.0
Loading...
Searching...
No Matches
Changelog

[0.8.0] - 2025-01-16

Breaking Changes

  • The Kanda Cloud Room Server endpoints now require a UnityGameServerConfiguration
  • Kanda Cloud 3.31.0 is required for dedicated servers to work correctly

Added

  • Support for Logout using the Kanda Cloud client
  • Support for configuring Room Servers to use custom Unity Cloud settings
  • App service overrides, allowing the VoiceService to be replaced by other packages
  • Support for joining dedicated servers using Secure Websockets (WSS)

Changed

  • The dedicated server distribution tool now allows you to create or update a Multiplay Build Configuration

Fixed

  • Replace call to Obsolete method in LoadContentSceneClientSystem
  • Warnings from ValidatorSetup
  • Use KandaLog.WriteManaged for potentially long logs in managed code to prevent truncation errors
  • The Create New Scenario tool and GracefulStringEnumConverter now correctly serializes enums with custom names

[0.7.0] - 2024-12-09

Breaking Changes

  • UserSettings have been renamed to LocalPlayerSettings and moved to Kanda.Foundation.Settings.Player namespace
  • UserSettingsKeys have been renamed to LocalPlayerSettingsKeys
  • ConnectionSettings have been renamed to LifecycleSettings

Added

  • Upgraded package unity version to Unity 6 (6000.0)
  • Upgraded to latest entities, physics and netcode packages
  • Support for Attribute fields using GracefulEnumConverter
  • Added PlayerId from Unity Core Services to support using Unity Lobby Service in high-level packages built on top of Kanda SDK

[0.6.4] - 2024-12-06

Added

  • Kanda Sdk/Tools/Session Quick Host & Join for running multiplayer dev sessions on LAN and relay
  • Support for logging variable-length managed strings with KandaLog.WriteManaged
  • Validator to set up physics layers and URP render features for rendering UIs on top
  • Validator for Unity Cloud services being correctly linked
  • Validator for changing the default Kanda Cloud SDK project ID
  • Platform device mocking is now automatically disabled in builds

Changed

  • Documentation for setting up Unity Services
  • Default NetCode config now uses NetworkTickRate of 30, matching the SimulationTickRate

Fixed

  • AsyncUtils.FireAndForget now uses KandaLog.WriteManaged to capture full stack traces
  • Platform switching logic in the server distribution tool to ensure correct compile flags are set
  • Scripting backend validator now considers all target platforms
  • NetCode config validator now correctly sets IsGlobal flag on added config
  • Additional error handling for KandaCloudServerSessionJoiningStrategy
  • Improved support for logging in editor scripts with KandaLog

[0.6.3] - 2024-12-03

Added

  • Support for setting player ID via LocalPlayerInfoService
  • Getter methods that validate if a property has been set yet for LocalPlayerInfoService

Changed

  • Better naming for server build distribution window
  • Direct property access in LocalPlayerInfoService has been marked as obsolete

Fixed

  • Proper validation and discovery of NetCode config in projects

[0.6.2] - 2024-11-28

Fixed

  • Provides better handling when using Vivox on Linux, which is not supported
  • An error where Netcode world references lingered after being disposed
  • An error where dedicated servers waited indefinitely for content activation

[0.6.1] - 2024-11-26

Added

  • Utilities to create sessions and rooms

Changed

  • Extended cloud client data models to support joining sessions

[0.6.0] - 2024-11-25

Added

  • Offline, lobby and LAN sessions will now search for a valid local UDP port in a given range

Changed

  • Default connection strategy for relay from DTLS to UDP, for more reliable sessions
  • Cloud data enums to "fail gracefully", returning to defaults when an enum type is unknown
  • LAN sessions now require a port as well as IP when connecting

Fixed

  • Finding local IP so that Android devices can now host LAN sessions

[0.5.1] - 2024-11-20

Added

  • Editor window to create scenarios on Kanda Cloud
  • Ability to mute yourself with VoiceService
  • Utilities for filtering sessions in lobby and scenario creator editor

Changed

  • Renamed Kanda Cloud AppIdentifier to SdkProjectId for clarity

Fixed

  • Warnings for some deprecated methods
  • Added missing legacy AppleIpad platform to TargetPlatform for backward compatibility

[0.5.0] - 2024-11-18

Added

  • Preloading and progressive streaming of content scenes

Changed

  • Content scenes no longer activate automatically
    • Set ConnectionSettings.WaitForContentActivation to false to load content scene whenever it's ready.

[0.4.7] - 2024-11-15

Added

  • Support for Callback on UserSettings
  • RoomContainer.IsLocked field
  • SelectedRoomName field to LocalPlayerInfoService

Changed

  • Moved CloudApiResponseUtilsTests to Tests/Runtime directory

[0.4.6] - 2024-11-13

Added

  • A utility function to throw an exception if a given web request failed

Fixed

  • Player not being spawned in the lobby

[0.4.5] - 2024-11-11

Added

  • Data models and endpoints related to lobby functionality
  • Utility for using clipboard on Standalone
  • Utility for checking connection

[0.4.3] - 2024-11-08

Added

  • A global default netcode config.
  • A simple toggle in ConnectionSettings.cs which allows vivox to be disabled.

Changed

  • Changed CSharpier settings so printWidth is 120. All code is also re-formatted.
  • Updated CI tools, disabling automatic link generation and code comment stripping

[0.4.2] - 2024-11-05

Added

  • Standard physics layers for use in downstream packages

[0.4.1] - 2024-10-31

Added

  • Helper class for Physics related tests

[0.4.0] - 2024-10-15

Added

  • Support for Unity Relay sessions
  • Light theme for project validator

Changed

  • Refactored app lifecycle service to use "session strategies" for each hosting mode

Removed

  • Application template sample which is no longer supported

[0.3.1] - 2024-10-09

Added

  • Project settings validator to check Unity configurations
  • Voice chat support using Unity Vivox

Changed

  • When starting the app, any scene will now bootstrap "offline" NetCode worlds

[0.3.0] - 2024-09-29

Changed

  • Changed package name to io.kanda.foundation

[0.2.0] - 2024-09-26

Added

  • Support for mocking (imitating) devices in the editor

Changed

  • Updated CI tools, allowing for local docs generation
  • Renamed EnvironmentSettings to PlatformSettings
  • Renamed PlatformDevice.OculusQuest to PlatformDevice.AndroidOpenXr

[0.1.6] - 2024-09-23

Changed

  • The underlying implementation of KandaLog to use Unity Logging package which can be used in Burst compiled systems.

[0.1.5] - 2024-09-10

Changed

  • Removes AppSettingsService in favor of registering settings directly, making it easier to follow by example in downstream packages.

[0.1.4] - 2024-09-09

Added

  • VisionOS as a supported platform.
  • A way to determine if a platform device is XR-compatible.

Fixed

  • Conditional compile flags for code that depends on Unity Multiplay to prevent compilation errors on non-standalone platforms
  • Comment out test framework scaffolds to prevent them being auto-referenced in downstream packages

[0.1.3] - 2024-09-02

Fixed

  • An issue where CI tools would distribute temporary files in package

[0.1.2] - 2024-09-01

Fixed

  • An issue where the framework scaffolds would be auto-referenced and included in upstream packages

[0.1.1] - 2024-09-01

Fixed

  • An issue where Application Template sample did not compile due to missing assembly def
  • A broken code block in app lifecycle docs

[0.1.0] - 2024-08-29

Added

  • Support for Local Area Network (LAN) sessions
  • A sample project demonstrating scenes and app navigation
  • An editor tool to distribute Unity GSH server builds
  • AppEvents as a way to signal to downstream systems
  • Client disconnect monitoring, invoking an AppEvent if disconnected
  • Client timeout monitoring, invoking an AppEvent if server is unreachable
  • Server player monitoring, reporting to GSH the current player count at regular intervals
  • Unity Cloud Diagnostics integration, enabled by default when visiting Unity Services settings
  • Documentation for new features

Changed

  • Various cleanup and refactoring of existing systems
  • Documentation updates for changed features

Fixed

  • Prevent duplicate content scenes from being loaded if reconnecting
  • An issue where dynamic scene loading would cause NetCode Ghost Collection system to throw an error

[0.0.1-preview.12] - 2024-08-21

Added

  • A managed component for getting LocalPlayerInfoService
  • A system to add LocalPlayerInfo component to client connection entity at runtime

Changed

  • Documentation for content scene loading
  • ConnectionService now uses EntityWorldService to ensure correct worlds are targeted
  • Move selected content scene from AppLifecycleService to LocalPlayerInfoService
  • Update tests to match changes

Fixed

  • Content scene loading now works in app builds and servers

[0.0.1-preview.11] - 2024-08-19

Changed

  • Minor updates for documentation pages

Fixed

  • Tries to fix formatting on Getting Started documentation page

[0.0.1-preview.10] - 2024-08-19

Added

  • Kanda Cloud Client for interacting with Kanda Cloud services
  • User settings service for persisting runtime values between app runs
  • Connection service for connecting to servers and listening to connections from clients
  • Documentation for new features

Changed

  • Updates AppLifecycleService join session flows to use Kanda Cloud
  • Documentation for existing features

Fixed

  • Ensures servers listen for connections on the given port

[0.0.1-preview.9] - 2024-06-26

Added

  • Integrations for server-hosted sessions on UGS
  • Additional settings providers for environment selection and UGS settings
  • UGS wrappers for dependency inversion
  • Local player info service for tracking local player data
  • Convenience methods in platform info service to determine editor, server and player
  • AsyncUtils to easily handle timeouts and fire-and-forget tasks

Changed

  • IKandaSettings no longer require implementing setting of unset values.

[0.0.1-preview.8] - 2024-06-26

Added

  • Test framework for automated testing.
  • Automated testing guideline.
  • Tests to cover 80%+ of package.

[0.0.1-preview.7] - 2024-06-23

Fixed

  • Nested content scenes load requests no longer loads duplicate scenes.
  • Clean up the documentation pages.

[0.0.1-preview.6] - 2024-06-23

Added

  • A way to additively load content scenes via component or RPC.
  • Additional user manuals for app lifecycle and developer tools.
  • Root-level EditorConfig for consistent code formatting.

Fixed

  • Clean up package namespaces and rename a few modules for clarity.

[0.0.1-preview.5] - 2024-06-03

Added

  • A way to connect to offline sessions.
  • Essential observability and DI tools.

Changed

  • Simplified app settings and Project Settings integration.

[0.0.1-preview.2] - 2024-06-03

Added

  • Added a basic Netcode bootstrap to test working on a package "in context".

[0.0.1-preview.1] - 2024-06-03

Added

  • Set up basic package structure.