Skip to content

Latest commit

 

History

History
228 lines (156 loc) · 5.39 KB

CHANGELOG.md

File metadata and controls

228 lines (156 loc) · 5.39 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[v3.3.1]

Fixed

  • Fixed error occuring when disconnecting from a lobby when you were previously a host in the game session.

[v3.3.0]

Added

  • LNetworkUtils.OnNetworkStartCallback - This event will run when the server/client starts up.

Changed

  • Minor Internal Refactoring

[v3.2.1]

Added

  • Support for LobbyCompatibility; this will ensure that the server and clients are using the same version of this API.

Fixed

  • Fixed IsConnected not working properly.

[v3.2.0]

Changed

  • Improved error messages.
  • Changed internal backend to be more optimal and only use Networking and Serialization when necessary.

Fixed

  • Fixed SendOtherClients not sending to the server.
  • Fixed LNetworkUtils.AllConnectedClients not including the server.

[v3.1.1]

Fixed

  • Fixed Shutdown error for UnnamedMessageHandler.
  • Fixed LNetworkVariable update error when the variable has not yet been created on the client.

[v3.1.0]

Added

  • Added LNetworkVariable - replaces LethalNetworkVariable.
    • Added LNetworkVariableWritePerms enum to control the write permissions of the variable.
    • Added UpdateOwner method to update the owner of the variable.
    • Added Dispose method to dispose of the variable.

Fixed

  • Fixed clients not sending events/messages/variable updates to other clients.

[v3.0.3]

Fixed

  • NGO ConnectedClients should only be accessed on the server error.

[v3.0.2]

Fixed

  • Some built-in types not serializing properly.
  • NGO InvalidOperationException during disconnecting if a LethalNetworkVariable is used.

[v3.0.1]

Fixed

  • InvalidOperationException: Invalid binary data stream error.

[v3.0.0]

Added

  • LNetworkMessage
    • Simplifies sending/receiving messages between the server and clients by using a single class instead of multiple classes
    • Replaces LethalServerMessage and LethalClientMessage
  • LNetworkEvent
    • Simplifies sending/receiving events between the server and clients by using a single class instead of multiple classes
    • Replaces LethalServerEvent and LethalClientEvent
  • Added LNetworkUtils

Changed

  • Reworked the entire API
    • Now uses Unity's new CustomMessagingManager to send messages
    • This allows for vanilla compatibility, though it is not recommended
    • Added LNetworkMessage
    • Added LNetworkEvent

Deprecated

  • The LethalClientMessage and LethalServerMessage classes
    • Use LNetworkMessage instead
  • The LethalClientEvent and LethalServerEvent classes
    • Use LNetworkEvent instead
  • The LethalNetworkVariable class
    • Currently, there is no replacement for this class. If you need to use it immediately, this class still will work but will receive no updates

[v2.1.7]

Added

  • ClearSubscriptions method for messages & events

[v2.1.7]

Changed

  • Added warning when using incorrect build - only for devs

Fixed

  • Incompatibility with latest (preview) LLL versions

[v2.1.6]

Changed

  • Reverted Serialization Changes from v2.1.5

Fixed

  • Network Variable ownership ignored when joining a lobby
  • Null Variables breaking loading into a server

[v2.1.5]

Changed

  • Serialization of NetworkObjects/Behaviours
    • Should now support collections

Fixed

  • Error when setting a Network Variable's value before joining a lobby.

[v2.1.4]

Added

  • NuGet Package Tags

Fixed

  • Actually fixed issues with re-hosting.

[v2.1.3]

Changed

  • Increased Harmony Patch priority

[v2.1.2]

Changed

  • Minor internal refactoring.
  • Better error messages.

[v2.1.1]

Fixed

  • Issue with Network Variables causing error when re-hosting

[v2.1.0]

Added

  • Ability to create network messages and events with a method to run instead of having to subscribe separately.

Changed

  • Minor internal refactoring.

Fixed

  • Issue with networking Network Variables

[v2.0.2]

Added

  • Stack-traces to identifier errors.

[v2.0.1]

Fixed

  • Extensions were not accessible.
  • Identifiers were not mod-specific.

[v2.0.0]

Added

  • Ability to create Network Variables specific to a Network Object.
  • [PublicNetworkVariable] Attribute

Changed

  • Network Variables
    • Ownership
      • By default, the server is now the owner.
      • Using the [PublicNetworkVariable] Attribute, you can allow any client to modify the variable.
      • Client-owned variables can only be made by creating one specific to a Network Object.
        • A great choice is PlayerControllerB
  • Internal Refactoring

Removed

  • LethalNetworkVariable.SetOwnership()
    • Removed in favor of the newly reworked Network Variable ownership system.
  • [LethalNetworkProtected] Attribute
    • Removed in favor of the newly reworked Network Variable ownership system.

Fixed

  • Errors when re-hosting a server

[v1.1.3]

Changed

  • Updated NuGet Package License

[v1.1.2]

Changed

  • Updated Changelog

[v1.1.1]

Changed

  • Internal GitHub Workflow Shenanigans

[v1.1.0]

Changed

  • Backend NetworkHandler Rework
    • May not be compatible with v1.0.0

[v1.0.0]

Added

  • Network Messages
  • Network Events
  • Network Variables
  • Network Utils/Extensions