njthomson / SrvSurvey

A new to help Commanders in planet based opperations
GNU General Public License v3.0
34 stars 1 forks source link

JsonSerializationException "Error getting value from 'displayName' on 'SrvSurvey.game.BioSpecies'." at 20-9-2024 #122

Closed S-K-Tiger closed 17 hours ago

S-K-Tiger commented 2 days ago

What happened?

Version

1.1.3.169

Exception message

Newtonsoft.Json.JsonSerializationException: Error getting value from 'displayName' on 'SrvSurvey.game.BioSpecies'.

Exception stack

Newtonsoft.Json.JsonSerializationException: Error getting value from 'displayName' on 'SrvSurvey.game.BioSpecies'. ---> System.NullReferenceException: Object reference not set to an instance of an object. at SrvSurvey.game.BioSpecies.get_displayName() in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\game\game-types.cs:line 279 at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target) --- End of inner exception stack trace --- at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues(JsonWriter writer, Object value, JsonContainerContract contract, JsonProperty member, JsonProperty property, JsonContract& memberContract, Object& memberValue) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType) at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType) at Newtonsoft.Json.JsonSerializer.Serialize(JsonWriter jsonWriter, Object value, Type objectType) at Newtonsoft.Json.JsonConvert.SerializeObjectInternal(Object value, Type type, JsonSerializer jsonSerializer) at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Type type, Formatting formatting, JsonSerializerSettings settings) at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting, JsonSerializerSettings settings) at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting) at SrvSurvey.canonn.CodexRef.prepBioRef(Dictionary`2 codexRef, Boolean reset) in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\net\CodexRef.cs:line 175 at SrvSurvey.canonn.CodexRef.init(Boolean reset) in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\net\CodexRef.cs:line 35 at SrvSurvey.Main.b__11_2() in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\Main.cs:line 243

Relevant log output

15:39:28: SrvSurvey version: 1.1.3.169, isAppStoreBuild: False
15:39:28: New log file: %appdata%\SrvSurvey\SrvSurvey\1.1.0.0\logs\srvs-20240920_153928.txt
15:39:28: dataFolder: %appdata%\SrvSurvey\SrvSurvey\1.1.0.0
15:39:28: Removing old log file: %appdata%\SrvSurvey\SrvSurvey\1.1.0.0\logs\srvs-20240824_141350.txt
15:39:28: Loaded settings: {
  "preferredCommander": null,
  "lastCommander": "Vicar Tineamica",
  "lastFid": "F7026584",
  "watchedJournalFolder": "C:\\Users\\<USER>\\Saved Games\\Frontier Developments\\Elite Dangerous\\",
  "hideJournalWriteTimer": false,
  "targetLatLong": {
    "lat": 0.0,
    "long": 0.0
  },
  "targetLatLongActive": false,
  "autoShowBioSummary": true,
  "autoShowBioPlot": true,
  "autoShowPlotFSS": true,
  "autoShowGuardianSummary": true,
  "autoShowRamTah": true,
  "autoShowPlotSysStatus": true,
  "skipGasGiantDSS": true,
  "skipRingsDSS": true,
  "skipLowValueDSS": true,
  "skipLowValueAmount": 3000000,
  "autoTrackCompBioScans": true,
  "skipAnalyzedCompBioScans": true,
  "autoRemoveTrackerOnSampling": true,
  "useExternalData": true,
  "autoLoadPriorScans": true,
  "skipPriorScansLowValue": false,
  "skipPriorScansLowValueAmount": 1000000,
  "showCanonnSignalsOnRadar": true,
  "useSmallCirclesWithCanonn": true,
  "hideMyOwnCanonnSignals": true,
  "focusGameOnStart": true,
  "focusGameOnMinimize": true,
  "enableGuardianSites": true,
  "enableEarlyGuardianStructures": false,
  "disableRuinsMeasurementGrid": false,
  "disableAerialAlignmentGrid": false,
  "hidePlottersFromCombatSuits": true,
  "hideOverlaysFromMouse": true,
  "autoShowFlightWarnings": true,
  "highGravityWarningLevel": 1.0,
  "plotterOpacity": 50.0,
  "formMainLocation": "0, 0",
  "formLogsLocation": "0, 0, 0, 0",
  "formAllRuinsLocation": "0, 0, 0, 0",
  "formRuinsLocation": "0, 0, 0, 0",
  "formBeaconsLocation": "0, 0, 0, 0",
  "formMapEditor": "0, 0, 0, 0",
  "formRamTah": "0, 0, 0, 0",
  "mapShowNotes": true,
  "blinkTigger": 134217728,
  "blinkDuration": 3000,
  "processScreenshots": false,
  "addBannerToScreenshots": true,
  "deleteScreenshotOriginal": false,
  "useGuardianAerialScreenshotsFolder": true,
  "screenshotSourceFolder": "C:\\Users\\<USER>\\OneDrive\\Afbeeldingen\\Frontier Developments\\Elite Dangerous",
  "screenshotTargetFolder": "C:\\Users\\<USER>\\OneDrive\\Afbeeldingen\\Frontier Developments\\Elite Dangerous\\converted",
  "rotateAndTruncateAlphaAerialScreenshots": true,
  "screenshotBannerColor": "Yellow",
  "screenshotBannerLocalTime": false,
  "aerialAltAlpha": 1200.0,
  "aerialAltBeta": 1550.0,
  "aerialAltGamma": 1600.0,
  "idxGuardianPlotter": 0,
  "migratedAlphaSiteHeading": false,
  "inferColor": "102, 255, 255",
  "inferTolerance": 25,
  "inferThreshold": 0.002,
  "dataFolder1100": true,
  "pubCodexRef": 6,
  "pubDataSettlementTemplate": 39,
  "pubDataGuardian": 39,
  "processIdx": 0
}
15:39:28: Reading PlotterPositions from: %appdata%\SrvSurvey\SrvSurvey\1.1.0.0\plotters.json
15:39:28: Program.repositionPlotters: 0, rect{X=0,Y=0,Width=0,Height=0}
15:39:28: Reading PlotterPositions from: %appdata%\SrvSurvey\SrvSurvey-1.1.3.169\plotters.json
15:39:28: Watching folder: C:\Users\<USER>\Saved Games\Frontier Developments\Elite Dangerous\
15:39:28: Watching file: C:\Users\<USER>\AppData\Local\Frontier Developments\Elite Dangerous\Options\Graphics\DisplaySettings.xml
15:39:28: setFocusED: got Zero!
15:39:28: isMigrationValid: True, dataFolder1100: True
15:39:28: Using settlementTemplates.json from pubData
15:39:28: Reading settlementTemplates.json: %appdata%\SrvSurvey\SrvSurvey\1.1.0.0\pub\settlementTemplates.json
15:39:28: SiteTemplate.Imported 13 templates
15:39:28: Using humanSiteTemplates.json app package
15:39:28: Reading humanSiteTemplates.json: %appdata%\SrvSurvey\SrvSurvey-1.1.3.169\humanSiteTemplates.json
15:39:29: HumanSiteTemplate.Imported 28 templates
15:39:29: updatePubData ...
15:39:29: pubDataSettlementTemplate - local: 39, remote: 39, hadNoPubFolder: False
15:39:29: Updating bio-criteria ...
15:39:29: Downloading bio-criteria.zip ...
15:39:29: https://raw.githubusercontent.com/njthomson/SrvSurvey/main/data/bio-criteria.zip => %appdata%\SrvSurvey\SrvSurvey\1.1.0.0\pub\bio-criteria.zip
15:39:29: pubDataGuardian - local: 39, remote: 39
15:39:29: updatePubData - complete
15:39:29: Loaded 517 ruins, 30 beacons, 155 structures
15:39:29: CodexRef init (reset: False, last downloaded: 739.148,652 days ago) ...
15:39:29: loadCodexRef: preparing from network ...
15:39:31: loadCodexRef: complete
15:39:31: prepBioRef: (re)building from whole CodexRef ...
15:39:31: Newtonsoft.Json.JsonSerializationException: Error getting value from 'displayName' on 'SrvSurvey.game.BioSpecies'.
 ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at SrvSurvey.game.BioSpecies.get_displayName() in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\game\game-types.cs:line 279
   at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
   --- End of inner exception stack trace ---
   at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues(JsonWriter writer, Object value, JsonContainerContract contract, JsonProperty member, JsonProperty property, JsonContract& memberContract, Object& memberValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
   at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType)
   at Newtonsoft.Json.JsonSerializer.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
   at Newtonsoft.Json.JsonConvert.SerializeObjectInternal(Object value, Type type, JsonSerializer jsonSerializer)
   at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Type type, Formatting formatting, JsonSerializerSettings settings)
   at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting, JsonSerializerSettings settings)
   at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting)
   at SrvSurvey.canonn.CodexRef.prepBioRef(Dictionary`2 codexRef, Boolean reset) in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\net\CodexRef.cs:line 175
   at SrvSurvey.canonn.CodexRef.init(Boolean reset) in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\net\CodexRef.cs:line 35
   at SrvSurvey.Main.<Main_Load>b__11_2() in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\Main.cs:line 243
15:39:31: isFirewallProblem?
Newtonsoft.Json.JsonSerializationException: Error getting value from 'displayName' on 'SrvSurvey.game.BioSpecies'.
 ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at SrvSurvey.game.BioSpecies.get_displayName() in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\game\game-types.cs:line 279
   at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
   --- End of inner exception stack trace ---
   at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues(JsonWriter writer, Object value, JsonContainerContract contract, JsonProperty member, JsonProperty property, JsonContract& memberContract, Object& memberValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
   at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType)
   at Newtonsoft.Json.JsonSerializer.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
   at Newtonsoft.Json.JsonConvert.SerializeObjectInternal(Object value, Type type, JsonSerializer jsonSerializer)
   at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Type type, Formatting formatting, JsonSerializerSettings settings)
   at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting, JsonSerializerSettings settings)
   at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting)
   at SrvSurvey.canonn.CodexRef.prepBioRef(Dictionary`2 codexRef, Boolean reset) in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\net\CodexRef.cs:line 175
   at SrvSurvey.canonn.CodexRef.init(Boolean reset) in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\net\CodexRef.cs:line 35
   at SrvSurvey.Main.<Main_Load>b__11_2() in D:\a\SrvSurvey\SrvSurvey\SrvSurvey\Main.cs:line 243
15:40:10: Opening link: (length: 13885)
https://github.com:443/njthomson/SrvSurvey/issues/new?template=crash-report.yml&title=JsonSerializationException+%22Error+getting+value+from+%27displayName%27+on+%27SrvSurvey.game.BioSpecies%27.%22+at
S-K-Tiger commented 2 days ago

Also of potential note: The system clock was set to UTC but Windows thought the times where UTC+2. I also removed my name in the logs.

njthomson commented 1 day ago

Thank you @S-K-Tiger for reporting this - I will have a fix out soon.

njthomson commented 17 hours ago

@S-K-Tiger please try the latest build from: https://github.com/njthomson/SrvSurvey/releases

Let me know if it gives you grief again.