EDCD / EDDI

Companion application for Elite Dangerous
Other
444 stars 81 forks source link

Station name recorded by `CommunityGoal` event doesn't match `Docked` event. #2322

Closed Darkcyde13 closed 2 years ago

Darkcyde13 commented 2 years ago

What's Wrong (please be as specific as possible)

Expected

StationDetails() to provide details for all stations.

Observed

StationsDetails() fails to provide details for stations with single quotes in the name.

Steps to reproduce

  1. Check details of a station using StationDetails() and use a station with single quotes in the name.

Configuration

My Investigation

Investigation Notes

I've just been doing some of the CG in the Summerland system, and EDDI is telling me I have "one mission at" but doesn't voice the station name.

Looking into it, I'm pretty sure it's StationDetails() failing to correctly parse the station of "Henry O'Hare's Hanger" which has two single quotes in it.

Running a quick test of {dump(StationDetails("Henry O'Hare's Hanger", "Summerland").name)} and {dump(StationDetails("Somerville Terminal", "Summerland").name)} results in "void" and "Somerville Terminal" respectively.

EDDI Logs

N/A

Player journals

N/A

Tkael commented 2 years ago

While an interesting hypothesis, the station name is being parsed correctly. image

Your test fails because because the station name doesn't match the spelling from EDSM.

You wrote: Henry O'Hare's Hanger The EDSM name: Henry O'Hare's Hangar (with a rather than e in Hangar).

The name as given by the journal CommunityGoal entry and recorded in the mission entry matches your spelling:

{ "timestamp":"2022-02-19T11:11:24Z", "event":"CommunityGoal", "CurrentGoals":[ { "CGID":710, "Title":"Take up arms against Darkwater Inc!", "SystemName":"Summerland", "MarketName":"Henry O'Hare's Hanger", "Expiry":"2022-02-24T06:00:00Z", "IsComplete":false, "CurrentTotal":81239214429, "PlayerContribution":66148208, "NumContributors":3694, "TopTier":{ "Name":"Tier 6", "Bonus":"" }, "TopRankSize":10, "PlayerInTopRank":false, "TierReached":"Tier 3", "PlayerPercentileBand":10, "Bonus":120000000 }, { "CGID":711, "Title":"Colonia Bridge Project Phase Four - Alcor", "SystemName":"Alcor", "MarketName":"Macdonald Settlement", "Expiry":"2022-02-24T06:00:00Z", "IsComplete":false, "CurrentTotal":12889475, "PlayerContribution":8, "NumContributors":2744, "TopTier":{ "Name":"Tier 3", "Bonus":"" }, "TopRankSize":10, "PlayerInTopRank":false, "TierReached":"Tier 1", "PlayerPercentileBand":100, "Bonus":60000 } ] }

However, the Docked entry (which is what EDSM uses to source station names) uses the other spelling:

{ "timestamp":"2022-02-18T09:55:05Z", "event":"Docked", "StationName":"Henry O'Hare's Hangar", "StationType":"Coriolis", "Taxi":true, "Multicrew":false, "StarSystem":"Summerland", "SystemAddress":972566792555, "MarketID":128043008, "StationFaction":{ "Name":"Summerland Patron's Party", "FactionState":"War" }, "StationGovernment":"$government_Patronage;", "StationGovernment_Localised":"Patronage", "StationAllegiance":"Empire", "StationServices":[ "dock", "autodock", "commodities", "contacts", "exploration", "missions", "outfitting", "crewlounge", "rearm", "refuel", "repair", "shipyard", "tuning", "engineer", "missionsgenerated", "flightcontroller", "stationoperations", "powerplay", "searchrescue", "stationMenu", "shop", "livery", "socialspace", "bartender", "vistagenomics", "pioneersupplies", "apexinterstellar", "frontlinesolutions" ], "StationEconomy":"$economy_Service;", "StationEconomy_Localised":"Service", "StationEconomies":[ { "Name":"$economy_Service;", "Name_Localised":"Service", "Proportion":1.000000 } ], "DistFromStarLS":598.675645, "LandingPads":{ "Small":17, "Medium":18, "Large":9 } }

I'm afraid this is an FDev bug where the spelling of the station name is not consistent across journal events.

Darkcyde13 commented 2 years ago

Gah! Please accept my apologies, I didn't notice that typo, even after looking over it several times.

Tkael commented 2 years ago

It's not really your fault. The journal events aren't consistent.