DotNet.Ships.Class.ShipCatalogue - Elite-Dangerous-Almanac/Almanac-Core GitHub Wiki

EliteDangerousAlmanac / Ships / ShipCatalogue

Class: ShipCatalogue

Defined in: dotnet/src/EliteDangerousAlmanac/Ships/ShipCatalogue.cs:25

The Elite Dangerous ship catalogue: every player-flyable hull's identity, stats and slot layout, with the lookups that turn an internal symbol or a display name into a hull.

Remarks

There is one list of hulls and it is small, so the lookups take no catalogue argument: they always search All. Stock module identities live in the default loadouts, which keeps this hull catalogue independent of them.

Symbols and entitlements come from EDCD FDevIDs, with exact English display names and stat corrections verified in-game. The remaining stats and the slot layout come primarily from EDCD coriolis-data. See data/ships/SOURCES.md for provenance and ATTRIBUTIONS.md for credit.

Properties

All

static All: IReadOnlyList<Ship>

Defined in: dotnet/src/EliteDangerousAlmanac/Ships/ShipCatalogue.cs:39

Every player-flyable hull, in Frontier's shipyard order — roughly the order the hulls were introduced, beginning with the Sidewinder.

Methods

FindByName()

static FindByName(name): Ship?

Defined in: dotnet/src/EliteDangerousAlmanac/Ships/ShipCatalogue.cs:55

Finds a hull by its display name.

Parameters

name

string?

The display name as the shipyard spells it, such as Imperial Clipper. Leading and trailing whitespace and case are ignored; matching is otherwise exact.

Returns

Ship?

The hull, or null when no hull has that name.

FindBySymbol()

static FindBySymbol(symbol): Ship?

Defined in: dotnet/src/EliteDangerousAlmanac/Ships/ShipCatalogue.cs:47

Finds a hull by its internal symbol.

Parameters

symbol

string?

The internal identifier, such as Empire_Trader. Leading and trailing whitespace and case are ignored, so the journal's lower-cased form resolves too.

Returns

Ship?

The hull, or null when no hull has that symbol.

FindSlots()

static FindSlots(symbol): ShipSlots?

Defined in: dotnet/src/EliteDangerousAlmanac/Ships/ShipCatalogue.cs:63

A hull's slot layout, ready to enumerate.

Parameters

symbol

string?

The internal identifier. Whitespace and case are ignored.

Returns

ShipSlots?

The layout, or null when no hull has that symbol. Every carried hull has a layout, so a symbol that resolves always answers one.

⚠️ **GitHub.com Fallback** ⚠️