Skip to content

Releases: nwn-dotnet/Anvil

Release 8193.34.23

30 Jan 00:42
Compare
Choose a tag to compare

Added

  • Added ANVIL_ENCODING environment variable for specifying a custom encoding when converting native strings from nwserver.
  • Added EncodingService for changing the server encoding at runtime.
  • NUI: Added StrRef support with NuiBindStrRef and NuiValueStrRef types.
  • Events: Added OnDoorSetOpenState event.
  • Events: Added OnObjectUse event.
  • Extensions: Added TryParseObject extension for parsing object ID strings.
  • NwCreature: Added GetInitiativeModifier,SetInitiativeModifier,ClearInitiativeModifier methods.
  • NwCreature: Added IsDMAvatar property.
  • NwCreature: Added IsFlanking method.
  • NwDoor: Added DoorOpenState property.
  • NwRuleset: Added NwDomain ruleset table and replaced constant usages with table references.
  • NwServer: Added IsActivePaused property.
  • NwServer: Added IsTimestopPaused property.

Package Updates

  • Microsoft.CodeAnalysis.CSharp: 4.3.1 -> 4.4.0
  • NWN.Core: 8193.34.7 -> 8193.34.10
  • NWN.Native: 8193.34.4 -> 8193.34.5
  • LightInject: 6.6.1 -> 6.6.3
  • Newtonsoft.Json: 13.0.1 -> 13.0.2
  • NLog: 5.0.5 -> 5.1.1
  • Paket.Core: 7.1.5 -> 7.2.0
  • NWNX: fe195ec -> 2692ecb

Changed

  • Events: OnSpellAction Domain and Feat is now nullable.
  • Events: OnSpellInterrupt Domain and Feat is now nullable.
  • Events: OnSpellSlotMemorize Domain is now nullable.
  • System.Random usages now use the System.Random.Shared instance, instead of individual instances.

Fixed

  • Fixed an issue where a GameObject or Player could become stuck in a hash-based collection when it became invalid.
  • NwPlayer: IsDM now correctly returns true when a DM is possessing a creature. Use ControlledCreature.IsDMAvatar for the prior behaviour.

Release 8193.34.22

08 Nov 22:44
Compare
Choose a tag to compare

Package Updates

  • NLog: 5.0.4 -> 5.0.5

Changed

  • OnSpellCast: Item, Spell and TargetObject can be null.
  • NwItem: Clone() now preserves the item's Droppable flag. An optional parameter is provided to keep the old behaviour.

Release 8193.34.21

23 Oct 19:41
Compare
Choose a tag to compare

Added

  • NwAreaOfEffect: Added Radius property.

Package Updates

  • NWNX 8faa9d4 -> fe195ec

Changed

  • OnSpellCast: Caster and TargetObject now correctly use NwObject as the event data type.

Fixed

  • Fixed a server crash when a module or area attempted to cast a spell.
  • Fixed an edge case where a deleted player's TURD would not be deleted.

Release 8193.34.20

08 Oct 01:52
Compare
Choose a tag to compare

Added

  • CollectionExtensions: Added IList AddRange extension.
  • NwCreature: Added IsBartering property.
  • NwObject: Added TryGetUUID method.
  • NwObject: Added SerializeToJson method.
  • NwStore: Added BuyStolenGoods, MarkDown, MarkDownStolen, MarkUp, WillNotBuyItems, WillOnlyBuyItems properties.

Package Updates

  • LightInject: 6.5.1 -> 6.6.1

Changed

  • Exposed Json engine structure.

Fixed

  • VirtualMachine: Fixed an issue where ObjectSelf would not be correctly assigned.

Release 8193.34.19

24 Sep 19:35
Compare
Choose a tag to compare

Added

  • Events: Added OnLoadCharacterFinish event.

Release 8193.34.18

18 Sep 20:16
Compare
Choose a tag to compare

Fixed

  • Fix an InvalidOperationException being thrown when checking player for equality.

Release 8193.34.17

18 Sep 19:38
Compare
Choose a tag to compare

Added

  • NwCreature: Added SittingObject property.
  • NwArea: Added LoadScreen property.
  • ResourceManager: Added CreateResourceDirectory.

Fixed

  • NwBaseItem: Fixed ItemClass returning a type name instead of the item class name.
  • Fixed a rare compile issue when using ToNwObject caused by exposed native types.

Release 8193.34.16

02 Sep 23:05
Compare
Choose a tag to compare

Added

  • Events: Added OnDebugPlayVisualEffect, OnDebugRunScript, OnDebugRunScriptChunk events.
  • NwGameObject: Added AnimationState.
  • Effect: Added Effect.VisualEffect(VisualEffectTableEntry, bool, float, Vector3, Vector3) overload.

Package Updates

  • NWN.Core 8193.34.6 -> 8193.34.7
  • LightInject 6.4.1 -> 6.5.1
  • NLog 5.0.1 -> 5.0.4
  • NWNX 5ade7de -> 8faa9d4

Changed

  • SchedulerService: Use PriorityQueue to improve main server loop performance.

Release 8193.34.15

13 Aug 22:17
Compare
Choose a tag to compare

Added

  • ItemProperty: Added SubTypeTable.

Fixed

  • Fixed CalculateValidItemsForProperty returning false for base items using column 0.

Release 8193.34.14

12 Aug 21:24
Compare
Choose a tag to compare

Added

  • NuiText: Added Border and Scrollbars properties.
  • ItemProperty: Added properties for referencing 2da data.
  • ItemProperty: Added Create() factory method overload using the new table class types.
  • NwGameTables: Added ItemPropertyTable, ItemPropertyItemMapTable, ItemPropertyCostTables, ItemPropertyParamTables

Changed

  • BREAKING CHANGE: TwoDimArrays must now be initialized via NwGameTables.GetTable.

Fixed

  • Fixed a server crash when using TwoDimArray after the native array structure was evicted from the 2da cache.
  • Fixed updating the weight of a equipped item with NwItem.Weight not correctly updating creature weight and encumbrance.
  • Fixed NwBaseItem.ArmorCheckPenalty returning an unsigned integer.