JsonSerializationException when loading data fileError
Failed to call hook 'cmdPortal' on plugin 'Portals v2.0.5' (JsonSerializationException: Additional text found in JSON string after finishing deserializing object.) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000d9] in <8fe7f8665ff548909c2f26d557e5093a>:0
at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00053] in <8fe7f8665ff548909c2f26d557e5093a>:0
at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <8fe7f8665ff548909c2f26d557e5093a>:0
at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in <8fe7f8665ff548909c2f26d557e5093a>:0
at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <8fe7f8665ff548909c2f26d557e5093a>:0
at Oxide.Core.Configuration.DynamicConfigFile.WriteObject[T] (T config, System.Boolean sync, System.String filename) [0x00049] in <4452f821def6406d834e4149849fe7ea>:0
at Oxide.Core.DataFileSystem.WriteObject[T] (System.String name, T Object, System.Boolean sync) [0x00007] in <4452f821def6406d834e4149849fe7ea>:0
at Oxide.Plugins.Portals.SaveData[T] (T data, System.String filename) [0x0002c] in <a15384174c2f41ddbe10d9f24e0a5976>:0
at Oxide.Plugins.Portals.cmdPortal (BasePlayer player, System.String cmd, System.String[] args) [0x001a2] in <a15384174c2f41ddbe10d9f24e0a5976>:0
at Oxide.Plugins.Portals.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x001c2] in <a15384174c2f41ddbe10d9f24e0a5976>:0
at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <9affce1cd15c4ec183941adef8db1722>:0
at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <4452f821def6406d834e4149849fe7ea>:0
at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <4452f821def6406d834e4149849fe7ea>:0
"SetDestination" can only be called on an active agent that has been placed on a NavMesh.
Anyone know how to fix this error?
Looks like your oxide/data for the plugin is corrupt. You'd either need to try to fix it manually or wipe it while the plugin is unloaded and start fresh.
wulf hi i am getting this aswell i have removed the plugin and removed the data file and oncethe pugin is reloaded in i get the same message wethere or not its / portal entrance or /portal exit all thoe it save`s to the json file
here is the error
 Failed to call hook 'cmdPortal' on plugin 'Portals v2.0.5' (JsonSerializationException: Additional text found in JSON string after finishing deserializing object.)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000d9] in <8fe7f8665ff548909c2f26d557e5093a>:0 
  at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00053] in <8fe7f8665ff548909c2f26d557e5093a>:0 
  at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <8fe7f8665ff548909c2f26d557e5093a>:0 
  at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in <8fe7f8665ff548909c2f26d557e5093a>:0 
  at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <8fe7f8665ff548909c2f26d557e5093a>:0 
  at Oxide.Core.Configuration.DynamicConfigFile.WriteObject[T] (T config, System.Boolean sync, System.String filename) [0x00049] in <4452f821def6406d834e4149849fe7ea>:0 
  at Oxide.Core.DataFileSystem.WriteObject[T] (System.String name, T Object, System.Boolean sync) [0x00007] in <4452f821def6406d834e4149849fe7ea>:0 
  at Oxide.Plugins.Portals.SaveData[T] (T data, System.String filename) [0x0002c] in <8b27664033854f90ae710a52229cb5f1>:0 
  at Oxide.Plugins.Portals.cmdPortal (BasePlayer player, System.String cmd, System.String[] args) [0x001a2] in <8b27664033854f90ae710a52229cb5f1>:0 
  at Oxide.Plugins.Portals.DirectCallHook (System.String name, System.Object& ret, System.Object[] args) [0x001c2] in <8b27664033854f90ae710a52229cb5f1>:0 
  at Oxide.Plugins.CSharpPlugin.InvokeMethod (Oxide.Core.Plugins.HookMethod method, System.Object[] args) [0x00079] in <9affce1cd15c4ec183941adef8db1722>:0 
  at Oxide.Core.Plugins.CSPlugin.OnCallHook (System.String name, System.Object[] args) [0x000d8] in <4452f821def6406d834e4149849fe7ea>:0 
  at Oxide.Core.Plugins.Plugin.CallHook (System.String hook, System.Object[] args) [0x00060] in <4452f821def6406d834e4149849fe7ea>:0​

here is the portal json

[ { "ID": "test", "Entrance": { "Location": { "_location": "1223.881 2.154198 -880.4193" } }, "Exit": { "Location": { "_location": "1232.364 0.0932305 -871.2501" } }, "OneWay": true, "TeleportationTime": 5.0, "RequiredPermission": "portals.use" }]​
sorted this buy removeing true from the string on line 497

private void SaveData(T data, string filename = null) => Interface.Oxide.DataFileSystem.WriteObject(filename == null ? DataFileName : $"{DataFileName}/{filename}", data);
no more errors