Closed Athanasius closed 3 years ago
FTR: EDMC already records 'current body' name (not ID) on ApproachBody
, and forgets it on either SuperCruiseEntry
or LeaveBody
(going above orbital cruise altitude). So adding that is easy.
BodyID
is similarly available in ApproachBody
data, so we can also track and add that if available.
NB: Despite ApproachBody
using Body
as the key, we'll use BodyName
in the schema, it's less ambiguous.
From discussion on Discord:
Location
logging in on a body on-foot gives both BodyID and Body(Name).ApproachSettlement
event which has BodyID
and BodyName
.I suppose you could cache the bodyid and bodyName to crosscheck status.json
I suppose you could cache the bodyid and bodyName to crosscheck status.json
But the worry is that we'll miss something that should update/clear those, or they'll be wrong.
OK, if Body(Name) from journal events matches with Body(Name) from Status.json then I guess we can trust the BodyID ... but on the other hand you're almost certain to have had a Scan of some sort to match up BodyID and Name before then so you could look up the ID yourself ?
We only store body data if it has biology of geology so wouldn't be able to do the lookup when getting data from EDDN
Its sounding too complicated, having to look back in history and double check it. Recipe for different tools to do it different ways.
Its sounding too complicated, having to look back in history and double check it. Recipe for different tools to do it different ways.
As discussed,
Add to the description field the rules for adding BodyID/BodyName, such as:
"A codex entry generated between Touchdown and Liftoff should have the BodyID and Body from the touchdown event sent in the BodyID and BodyName field of the schema"
etc
<schema name>-README.md
in the schemas/
directory.The README should:
From LCU ... if you embark in a taxi and immediately log off, when you log back in you're still in the taxi, and you get a ApproachSettlement
event. But as you're still in it you can't possibly trigger a CodexEntry until you disembark the other end.
LCU No Fool Like One Canonn R&D: Quit before landing puts you in the taxi and gives approach settlement LCU No Fool Like One Canonn R&D: Quit after landing is the same LCU No Fool Like One Canonn R&D: Logged out on foot in the hanger and got approach settlement followed by Location
LCU No Fool Like One
has requested we allow, optinally, BodyID and BodyName through on the codexentry schema. This data won't always be pertinent (there are codex discoverables in space), but where it is, and known, it should be allowed.This means they'll be 100% optional fields, although we can/will document that senders should (or even must) add them for codex entries on body surfaces.
Is there any way in which, e.g. EDMC, could think a player is on/near a Body, and then the player get into space in range to scan a non-Body item for a codex entry? I'm assuming all such would be too far from any body to feasibly get to without using SuperCruise, and we can 'forget' current body on SC entry, then set them again from SuperCruiseExit/ApproachBody later.