Skip to content

Data Sources and API Behavior

Fenris159 edited this page Jun 21, 2026 · 2 revisions

Data Sources and API Behavior

This page explains where each visible value comes from and which actions write to RavenColonial.

Overlay Column Sources

Overlay value Source
Build name/system/type RavenColonial project data.
Need RavenColonial project commodities, or live journal depot remaining need when docked at the matching project.
Ship Local EDMC commander ship cargo state from journal/CAPI tracking.
FC Local Fleet Carrier manifest cache, seeded from RavenColonial and updated by journal deltas.
Capacity footer Local owner capacity cache from CAPI or CarrierStats style data.

What Comes From the Journal

The plugin reads Elite Dangerous journal events through EDMC.

Important events:

Event Use
LoadGame Commander and ship context.
Docked / Location Dock context, station, market ID, repair eligibility.
Cargo Commander cargo state and squadron cargo resync behavior.
MarketBuy / MarketSell Ship cargo and Fleet Carrier cargo delta handling.
CargoTransfer Transfers between ship and Fleet Carrier.
ColonisationConstructionDepot Authoritative remaining construction need.
ColonisationContribution Commander contribution history.
CarrierStats style data Owner free-space cache when available.

What Comes From Supported EDMC CAPI Hooks

The plugin uses only supported EDMC Companion hook payloads:

Hook Use
cmdr_data Commander identity hints and optional profile/cache data.
cmdr_data_legacy Legacy-galaxy profile/cache data.
capi_fleetcarrier Owner-visible Fleet Carrier capacity and cargo snapshots when available.

The plugin does not use the unsupported Companion /squadron endpoint. Squadron Fleet Carrier behavior remains journal-driven through linked marketId values and StationServices / squadronBank signals.

Construction Need vs Contribution History

The plugin keeps remaining need and commander history separate.

Remaining need:

PATCH /api/project/{buildId}

with depot-derived commodities, maxNeed, and colonisationConstructionDepot.

Commander history:

POST /api/project/{buildId}/contribute/{cmdr}

This records what the commander delivered but does not subtract remaining need.

The plugin avoids the web-style supply endpoint for journal-driven depot sync because it would risk double-applying delivery amounts.

Fleet Carrier Cargo Writes

Eligible Fleet Carrier cargo moves use:

PATCH /api/fc/{marketId}/cargo

The body is a commodity delta map. Positive values add to the carrier; negative values remove from it.

Eligibility is built from profile-linked carriers plus active-project linked carriers.

Fleet Carrier Cargo Reads

Initial linked carrier data can come from:

GET /api/cmdr/{cmdr}/fc/all

Active project carrier eligibility can come from:

GET /api/cmdr/{cmdr}/active

Manual overlay manifest refresh uses:

GET /api/fc/{marketId}

Project and Location Reads

Current dock project lookup:

GET /api/system/{id64}/{marketId}

Project details:

GET /api/project/{buildId}

Plan-location refresh:

GET /api/v2/system/{id64}/architect
GET /api/v2/system/{id64}/sites

Link worker safety checks use fresh live reads before PUT /api/project.

Site Repair Writes

Completed-site MarketID or name repair uses targeted site PATCH behavior:

PATCH /api/v2/system/{nameOrNum}/sites/{siteId}

The plugin sends only the field it is repairing, such as marketId or name.

What Does Not Happen

The plugin does not continuously poll RavenColonial for overlay redraws.

The plugin does not use overlay carrier selection alone to decide whether to PATCH cargo.

The plugin does not use POST /api/project/{buildId}/supply/{cmdr} for journal-driven construction deliveries.

The plugin does not call the unsupported Companion /squadron endpoint.

The plugin does not currently write Fleet Carrier metadata or location routes during normal cargo sync.

Clone this wiki locally