EDCD / EDDI

Companion application for Elite Dangerous
Other
448 stars 82 forks source link

Odyssey: Enhancements for exobiology activities #2212

Open drhead opened 3 years ago

drhead commented 3 years ago

What happens now

Planets with biological surface signals (meaning the presence of exobiology targets) are not called out as mapping candidates, and overall the application doesn't offer much help for exobiology activities.

What I'd like to happen

Call out planets with more than 2 biological surface signals (usually tenuous atmosphere landables with mild temperatures that usually contain several exobiology targets) as mapping candidates, or as bodies worth doing exobiology on. There should also be voice lines to assist while scanning, if that is possible.

How it can happen

Call out planets with biological signals on scan:

My choice of threshold for notability is subjective, and may be subject to change. I chose "more than two signals" because there appears to be a very distinct separation between landable bodies with life, where they are either planets with extreme conditions and one or two signals (usually bacteria colonies only), or more rarely they are planets with 5-7 signals and mild conditions. Given the relative difficulty of finding bacteria colonies and the general high time investment compared to the reward, I personally think the latter are the only worthwhile candidates for sampling.

If species of plants scanned are reported in the journal, it would also be nice to have it count off species sampled: "Five out of ten species have been sampled." The UI does report how many species are on the planet when you do a detailed surface scan.

It would also be helpful to call out the genetic diversity minimum range for a species upon the first sample (if the journal reports it), since the range is different for each category (some organisms only require 150m of space between samples while others require as much as 1km).

EDDI Version

4.0.1-b1

Tkael commented 3 years ago

We don't receive journal information about the biological signals on a planet until after it has been mapped. Likewise, 3rd party databases like EDSM do not publish such information via their API. I'm afraid this leaves us without sufficient data to recommend bodies for mapping on the basis of their exobiology.

Tkael commented 3 years ago

From where are you sourcing generic diversity minimum range requirements?

drhead commented 3 years ago

From where are you sourcing generic diversity minimum range requirements?

The range requirements are listed in the codex.

drhead commented 3 years ago

We don't receive journal information about the biological signals on a planet until after it has been mapped. Likewise, 3rd party databases like EDSM do not publish such information via their API. I'm afraid this leaves us without sufficient data to recommend bodies for mapping on the basis of their exobiology.

It may actually be possible to estimate whether a body should have biological signals on it based on its conditions, but this would require more data. All of the planets I have found with large amounts of life have been landable tenuous atmosphere worlds with daytime surface temperatures somewhere above 210K (I suspect the actual rule would be planets where your suit doesn't warn you of extreme temperatures), and when they were moons of gas giants all other tenuous atmosphere landables had similar levels of life. This is still anecdotal, though.

Tkael commented 3 years ago

From where are you sourcing generic diversity minimum range requirements?

The range requirements are listed in the codex.

Hmm, so they are (once you've confirmed the discovery). Unfortunately, I don't have a long list of confirmed organics to reference. Has someone collected a fairly complete list?

Tkael commented 3 years ago

We don't receive journal information about the biological signals on a planet until after it has been mapped. Likewise, 3rd party databases like EDSM do not publish such information via their API. I'm afraid this leaves us without sufficient data to recommend bodies for mapping on the basis of their exobiology.

It may actually be possible to estimate whether a body should have biological signals on it based on its conditions, but this would require more data. All of the planets I have found with large amounts of life have been landable tenuous atmosphere worlds with daytime surface temperatures somewhere above 210K (I suspect the actual rule would be planets where your suit doesn't warn you of extreme temperatures), and when they were moons of gas giants all other tenuous atmosphere landables had similar levels of life. This is still anecdotal, though.

I'm happy to implement an algorithm for predicting likely organics on a body surface. Please let me know if someone publishes such an algorithm. :-)

Tkael commented 2 years ago

This looks useful enough to consider giving this another look.

Tkael commented 2 years ago

The EliteObservatory BioInsights plugin also tracks distances to prompt the commander when they have traveled enough to take a fresh surface biology sample (the required travel distances apparently vary by species genus).

Tkael commented 1 year ago

Merging in #2242

What happens now

We can lose track of the number of biologicals we've sampled on a planet in Odyssey.

What I'd like to happen

When we are done finish scanning all biological signals in a planet is it possible to get an announcement that all biological signals have been scanned?

How it can happen

  1. Implement the ScanOrganic event
  2. Update our body definition to track biologicals found on that body
  3. Update our data storage to preserve biological data when synchronizing body data from 3rd party servers.
  4. Update scripts.

EDDI Version

4.0.0

Tkael commented 1 year ago

Merging in #2455

What happens now

When you scan a planet with geological/biological surface signals (in FSS) you first get the message of how many surface signals it has and later you get the message about the body being scanned. That's because the surface signal event came first in the journal than the body scan... Because Frontier Devs ¬_¬ But that "feature" of the journal messes up the flow of the body scan script.

What I'd like to happen & How it can happen

Despite changing the way these two events are handled by EDDI (witch I think is quite complicate), a nice solution will be to add a property to the body object with a list of all the surface signals it has. Something like body.surfacesignals or similar. Were it stores the type of signals and the quantity of each type, the same way it does for the Surface signals detected event: body.surfacesignals[].amount and body.surfacesignals[].source If the body is not scanned, it will be null. The same if is scanned but has no signals. The script will handle if the null comes from one way or another looking into the scanned property.

I think is not a difficult change to make and it has a great potential to use in other scripts, for example in a Exobiology oriented script.

EDDI Version

4.0.2_b4