From 3463a3593a0e9d2c20a41051fe3cfe9f18037133 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Thu, 21 Sep 2023 15:00:04 -0700 Subject: [PATCH 01/17] update: new traits and add modifiers --- models/TradeSymbol.json | 1 + models/Waypoint.json | 7 +++++++ models/WaypointModifier.json | 29 +++++++++++++++++++++++++++++ models/WaypointTrait.json | 9 +++++++++ models/WaypointType.json | 7 ++++++- 5 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 models/WaypointModifier.json diff --git a/models/TradeSymbol.json b/models/TradeSymbol.json index 6af7724..2eb679a 100644 --- a/models/TradeSymbol.json +++ b/models/TradeSymbol.json @@ -43,6 +43,7 @@ "AMMUNITION", "ELECTRONICS", "SHIP_PLATING", + "SHIP_PARTS", "EQUIPMENT", "FUEL", "MEDICINE", diff --git a/models/Waypoint.json b/models/Waypoint.json index 1836da5..65e90b8 100644 --- a/models/Waypoint.json +++ b/models/Waypoint.json @@ -45,6 +45,13 @@ "$ref": "./WaypointTrait.json" } }, + "modifiers": { + "type": "array", + "description": "The modifiers of the waypoint.", + "items": { + "$ref": "./WaypointModifier.json" + } + }, "chart": { "$ref": "./Chart.json" } diff --git a/models/WaypointModifier.json b/models/WaypointModifier.json new file mode 100644 index 0000000..c8c5b0f --- /dev/null +++ b/models/WaypointModifier.json @@ -0,0 +1,29 @@ +{ + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "The unique identifier of the modifier.", + "enum": [ + "STRIPPED", + "UNSTABLE", + "RADIATION_LEAK", + "CRITICAL_LIMIT", + "CIVIL_UNREST" + ] + }, + "name": { + "type": "string", + "description": "The name of the trait." + }, + "description": { + "type": "string", + "description": "A description of the trait." + } + }, + "required": [ + "symbol", + "name", + "description" + ] +} \ No newline at end of file diff --git a/models/WaypointTrait.json b/models/WaypointTrait.json index d7dc5ca..66de7dc 100644 --- a/models/WaypointTrait.json +++ b/models/WaypointTrait.json @@ -6,6 +6,7 @@ "description": "The unique identifier of the trait.", "enum": [ "UNCHARTED", + "UNDER_CONSTRUCTION", "MARKETPLACE", "SHIPYARD", "OUTPOST", @@ -54,6 +55,7 @@ "TOXIC_ATMOSPHERE", "CORROSIVE_ATMOSPHERE", "BREATHABLE_ATMOSPHERE", + "THIN_ATMOSPHERE", "JOVIAN", "ROCKY", "VOLCANIC", @@ -63,6 +65,13 @@ "TEMPERATE", "JUNGLE", "OCEAN", + "RADIOACTIVE", + "MICRO_GRAVITY_ANOMALIES", + "DEBRIS_CLUSTER", + "DEEP_CRATERS", + "SHALLOW_CRATERS", + "UNSTABLE_COMPOSITION", + "HOLLOWED_INTERIOR", "STRIPPED" ] }, diff --git a/models/WaypointType.json b/models/WaypointType.json index 4b978cb..359dc60 100644 --- a/models/WaypointType.json +++ b/models/WaypointType.json @@ -8,8 +8,13 @@ "ORBITAL_STATION", "JUMP_GATE", "ASTEROID_FIELD", + "ASTEROID", + "ENGINEERED_ASTEROID", + "ASTEROID_BASE", "NEBULA", "DEBRIS_FIELD", - "GRAVITY_WELL" + "GRAVITY_WELL", + "ARTIFICIAL_GRAVITY_WELL", + "FUEL_STATION" ] } \ No newline at end of file From 3e19fc085a6891bf6da7bde3b18bffbc06823a4d Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Wed, 4 Oct 2023 13:46:37 -0700 Subject: [PATCH 02/17] breaking: jump gates and construction --- models/Construction.json | 26 ++++++ models/ConstructionMaterial.json | 22 +++++ models/JumpGate.json | 18 +--- models/TradeSymbol.json | 1 + models/Waypoint.json | 7 +- reference/SpaceTraders.json | 152 +++++++++++++++++++++++++++++-- 6 files changed, 203 insertions(+), 23 deletions(-) create mode 100644 models/Construction.json create mode 100644 models/ConstructionMaterial.json diff --git a/models/Construction.json b/models/Construction.json new file mode 100644 index 0000000..73972cd --- /dev/null +++ b/models/Construction.json @@ -0,0 +1,26 @@ +{ + "type": "object", + "description": "The construction details of a waypoint.", + "properties": { + "symbol": { + "type": "string", + "description": "The symbol of the waypoint." + }, + "materials": { + "type": "array", + "description": "The materials required to construct the waypoint.", + "items": { + "$ref": "./ConstructionMaterial.json" + } + }, + "isComplete": { + "type": "boolean", + "description": "Whether the waypoint has been constructed." + } + }, + "required": [ + "symbol", + "materials", + "isComplete" + ] +} \ No newline at end of file diff --git a/models/ConstructionMaterial.json b/models/ConstructionMaterial.json new file mode 100644 index 0000000..fc9e9ca --- /dev/null +++ b/models/ConstructionMaterial.json @@ -0,0 +1,22 @@ +{ + "description": "The details of the required construction materials for a given waypoint under construction.", + "type": "object", + "properties": { + "tradeSymbol": { + "$ref": "./TradeSymbol.json" + }, + "required": { + "type": "integer", + "description": "The number of units required." + }, + "fulfilled": { + "type": "integer", + "description": "The number of units fulfilled toward the required amount." + } + }, + "required": [ + "tradeSymbol", + "required", + "fulfilled" + ] +} \ No newline at end of file diff --git a/models/JumpGate.json b/models/JumpGate.json index 69dad45..ca9203e 100644 --- a/models/JumpGate.json +++ b/models/JumpGate.json @@ -2,24 +2,16 @@ "type": "object", "description": "", "properties": { - "jumpRange": { - "type": "number", - "description": "The maximum jump range of the gate." - }, - "factionSymbol": { - "type": "string", - "description": "The symbol of the faction that owns the gate." - }, - "connectedSystems": { + "connections": { "type": "array", - "description": "The systems within range of the gate that have a corresponding gate.", + "description": "All the gates that are connected to this waypoint.", "items": { - "$ref": "./ConnectedSystem.json" + "type": "string", + "description": "The symbol of the waypoint that has a corresponding gate." } } }, "required": [ - "jumpRange", - "connectedSystems" + "connections" ] } \ No newline at end of file diff --git a/models/TradeSymbol.json b/models/TradeSymbol.json index 2eb679a..9fd06e3 100644 --- a/models/TradeSymbol.json +++ b/models/TradeSymbol.json @@ -51,6 +51,7 @@ "CLOTHING", "MICROPROCESSORS", "PLASTICS", + "QUANTUM_STABILIZERS", "POLYNUCLEOTIDES", "BIOCOMPOSITES", "NANOBOTS", diff --git a/models/Waypoint.json b/models/Waypoint.json index 65e90b8..8248d89 100644 --- a/models/Waypoint.json +++ b/models/Waypoint.json @@ -54,6 +54,10 @@ }, "chart": { "$ref": "./Chart.json" + }, + "isUnderConstruction": { + "type": "boolean", + "description": "True if the waypoint is under construction." } }, "required": [ @@ -63,6 +67,7 @@ "x", "y", "orbitals", - "traits" + "traits", + "isUnderConstruction" ] } \ No newline at end of file diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index e284c3d..b83bb8a 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -695,7 +695,7 @@ }, "/systems/{systemSymbol}/waypoints/{waypointSymbol}/jump-gate": { "get": { - "description": "Get jump gate details for a waypoint. Requires a waypoint of type `JUMP_GATE` to use.\n\nThe response will return all systems that are have a Jump Gate in range of this Jump Gate. Those systems can be jumped to from this Jump Gate.", + "description": "Get jump gate details for a waypoint. Requires a waypoint of type `JUMP_GATE` to use.\n\nWaypoints connected to this jump gate can be ", "operationId": "get-jump-gate", "responses": { "200": { @@ -750,6 +750,140 @@ } ] }, + "/systems/{systemSymbol}/waypoints/{waypointSymbol}/construction": { + "get": { + "description": "Get construction details for a waypoint. Requires a waypoint with a property of `isUnderConstruction` to be true.", + "operationId": "get-construction", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "$ref": "../models/Construction.json" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Successfully fetched construction site." + } + }, + "security": [ + {}, + { + "AgentToken": [] + } + ], + "summary": "Get Construction Site", + "tags": [ + "Systems" + ] + } + }, + "/systems/{systemSymbol}/waypoints/{waypointSymbol}/construction/supply": { + "post": { + "description": "Supply a construction site with the specified good. Requires a waypoint with a property of `isUnderConstruction` to be true.\n\nThe good must be in your ship's cargo. The good will be removed from your ship's cargo and added to the construction site's materials.", + "operationId": "supply-construction", + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "shipSymbol": { + "type": "string", + "description": "Symbol of the ship to use." + }, + "tradeSymbol": { + "type": "string", + "description": "The symbol of the good to supply." + }, + "units": { + "type": "integer", + "description": "Amount of units to supply." + } + }, + "required": [ + "shipSymbol", + "tradeSymbol", + "units" + ], + "type": "object" + } + } + }, + "description": "" + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "construction": { + "$ref": "../models/Construction.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + } + }, + "required": [ + "construction", + "cargo" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Successfully supplied construction site." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Supply Construction Site", + "tags": [ + "Systems" + ] + }, + "parameters": [ + { + "description": "The system symbol", + "in": "path", + "name": "systemSymbol", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "The waypoint symbol", + "in": "path", + "name": "waypointSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, "/factions": { "get": { "description": "Return a paginated list of all the factions in the game.", @@ -2211,20 +2345,20 @@ } ], "post": { - "description": "Jump your ship instantly to a target system. The ship must be in orbit to use this function. When used while in orbit of a Jump Gate waypoint, any ship can use this command, jumping to the target system's Jump Gate waypoint.\n\nWhen used elsewhere, jumping requires the ship to have a `Jump Drive` module installed and consumes a unit of antimatter from the ship's cargo. The command will fail if there is no antimatter to consume. When jumping via the `Jump Drive` module, the ship ends up at its largest source of energy in the system, such as a gas planet or a jump gate.", + "description": "Jump your ship instantly to a target connected waypoint. The ship must be in orbit to execute a jump.\n\nA unit of antimatter is purchased and consumed from the market when jumping. The price of antimatter is determined by the market and is subject to change. A ship can only jump to connected waypoints", "operationId": "jump-ship", "requestBody": { "content": { "application/json": { "schema": { "properties": { - "systemSymbol": { - "description": "The system symbol to jump to.", + "waypointSymbol": { + "description": "The symbol of the waypoint to jump to. The destination must be a connected waypoint.", "type": "string" } }, "required": [ - "systemSymbol" + "waypointSymbol" ], "type": "object" } @@ -2240,16 +2374,16 @@ "properties": { "data": { "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, "nav": { "$ref": "../models/ShipNav.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" } }, "required": [ "nav", - "cooldown" + "transaction" ], "type": "object" } From 4ad551ad28fa9603e7c3bc1ed486497d1739672a Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Sun, 22 Oct 2023 12:51:47 -0700 Subject: [PATCH 03/17] update: add supply to shipyard listing --- models/ShipType.json | 3 ++- models/ShipyardShip.json | 11 +++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/models/ShipType.json b/models/ShipType.json index 6a6a48c..fe9ce15 100644 --- a/models/ShipType.json +++ b/models/ShipType.json @@ -11,6 +11,7 @@ "SHIP_HEAVY_FREIGHTER", "SHIP_LIGHT_SHUTTLE", "SHIP_ORE_HOUND", - "SHIP_REFINING_FREIGHTER" + "SHIP_REFINING_FREIGHTER", + "SHIP_SURVEYOR" ] } \ No newline at end of file diff --git a/models/ShipyardShip.json b/models/ShipyardShip.json index 6475e83..cbb6c74 100644 --- a/models/ShipyardShip.json +++ b/models/ShipyardShip.json @@ -11,6 +11,16 @@ "description": { "type": "string" }, + "supply": { + "type": "string", + "description": "A rough estimate of the total supply of this good in the marketplace.", + "enum": [ + "SCARCE", + "LIMITED", + "MODERATE", + "ABUNDANT" + ] + }, "purchasePrice": { "type": "integer" }, @@ -55,6 +65,7 @@ "symbol", "name", "description", + "supply", "purchasePrice", "frame", "reactor", From 407fbf852480cc4acb4fd5107b7234daaac660ba Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Mon, 23 Oct 2023 16:33:13 -0700 Subject: [PATCH 04/17] add gas siphon endpoint --- models/Siphon.json | 19 +++++++++++ models/SiphonYield.json | 18 +++++++++++ models/TradeSymbol.json | 1 + reference/SpaceTraders.json | 63 +++++++++++++++++++++++++++++++++++++ 4 files changed, 101 insertions(+) create mode 100644 models/Siphon.json create mode 100644 models/SiphonYield.json diff --git a/models/Siphon.json b/models/Siphon.json new file mode 100644 index 0000000..ecfc693 --- /dev/null +++ b/models/Siphon.json @@ -0,0 +1,19 @@ +{ + "description": "Siphon details.", + "type": "object", + "properties": { + "shipSymbol": { + "type": "string", + "minLength": 1, + "description": "Symbol of the ship that executed the siphon." + }, + "yield": { + "$ref": "./SiphonYield.json", + "description": "Yields from the siphon operation." + } + }, + "required": [ + "shipSymbol", + "yield" + ] +} \ No newline at end of file diff --git a/models/SiphonYield.json b/models/SiphonYield.json new file mode 100644 index 0000000..6a126d2 --- /dev/null +++ b/models/SiphonYield.json @@ -0,0 +1,18 @@ +{ + "type": "object", + "description": "A yield from the siphon operation.", + "properties": { + "symbol": { + "$ref": "./TradeSymbol.json", + "description": "Symbol of the good that was siphoned." + }, + "units": { + "type": "integer", + "description": "The number of units siphoned that were placed into the ship's cargo hold." + } + }, + "required": [ + "symbol", + "units" + ] +} \ No newline at end of file diff --git a/models/TradeSymbol.json b/models/TradeSymbol.json index 9fd06e3..b7d24c7 100644 --- a/models/TradeSymbol.json +++ b/models/TradeSymbol.json @@ -82,6 +82,7 @@ "ENGINE_ION_DRIVE_II", "ENGINE_HYPER_DRIVE_I", "MODULE_MINERAL_PROCESSOR_I", + "MODULE_GAS_PROCESSOR_I", "MODULE_CARGO_HOLD_I", "MODULE_CREW_QUARTERS_I", "MODULE_ENVOY_QUARTERS_I", diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index b83bb8a..8013b39 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -2182,6 +2182,69 @@ ] } }, + "/my/ships/{shipSymbol}/siphon": { + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ], + "post": { + "description": "Siphon gases, such as hydrocarbon, from gas giants.\n\nThe ship must be in orbit to be able to siphon and must have siphon mounts and a gas processor installed.", + "operationId": "siphon-resources", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "siphon": { + "$ref": "../models/Siphon.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + } + }, + "required": [ + "siphon", + "cooldown", + "cargo" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Siphon successful." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Siphon Resources", + "tags": [ + "Fleet" + ] + } + }, "/my/ships/{shipSymbol}/extract/survey": { "parameters": [ { From 5c5a50799bac0cd79fcecbba0a9a4a72bfd7ce78 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Mon, 23 Oct 2023 17:02:23 -0700 Subject: [PATCH 05/17] add cooldown to jumps --- reference/SpaceTraders.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index 8013b39..d403555 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -2440,12 +2440,16 @@ "nav": { "$ref": "../models/ShipNav.json" }, + "cooldown": { + "$ref": "../models/Cooldown.json" + }, "transaction": { "$ref": "../models/MarketTransaction.json" } }, "required": [ "nav", + "cooldown", "transaction" ], "type": "object" From 268a1c2442f04bfa7ad501ce19393a6bb0e83a88 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Wed, 25 Oct 2023 17:27:20 -0700 Subject: [PATCH 06/17] add missing types --- models/ShipModule.json | 1 + models/ShipType.json | 1 + 2 files changed, 2 insertions(+) diff --git a/models/ShipModule.json b/models/ShipModule.json index 8569d30..fd3810f 100644 --- a/models/ShipModule.json +++ b/models/ShipModule.json @@ -6,6 +6,7 @@ "type": "string", "enum": [ "MODULE_MINERAL_PROCESSOR_I", + "MODULE_GAS_PROCESSOR_I", "MODULE_CARGO_HOLD_I", "MODULE_CREW_QUARTERS_I", "MODULE_ENVOY_QUARTERS_I", diff --git a/models/ShipType.json b/models/ShipType.json index fe9ce15..8eb689f 100644 --- a/models/ShipType.json +++ b/models/ShipType.json @@ -4,6 +4,7 @@ "enum": [ "SHIP_PROBE", "SHIP_MINING_DRONE", + "SHIP_SIPHON_DRONE", "SHIP_INTERCEPTOR", "SHIP_LIGHT_HAULER", "SHIP_COMMAND_FRIGATE", From bead15176e30347e0d464148d32f40f07e4614e2 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Wed, 25 Oct 2023 17:27:37 -0700 Subject: [PATCH 07/17] update supply and activity levels --- models/ActivityLevel.json | 9 +++++++++ models/MarketTradeGood.json | 24 +++++++++++++++--------- models/ShipyardShip.json | 12 ++++-------- models/SupplyLevel.json | 11 +++++++++++ 4 files changed, 39 insertions(+), 17 deletions(-) create mode 100644 models/ActivityLevel.json create mode 100644 models/SupplyLevel.json diff --git a/models/ActivityLevel.json b/models/ActivityLevel.json new file mode 100644 index 0000000..7cd5ef5 --- /dev/null +++ b/models/ActivityLevel.json @@ -0,0 +1,9 @@ +{ + "type": "string", + "description": "The activity level of a trade good. If the good is an import, this represents how strong consumption is for the good. If the good is an export, this represents how strong the production is for the good.", + "enum": [ + "WEAK", + "GROWING", + "STRONG" + ] +} \ No newline at end of file diff --git a/models/MarketTradeGood.json b/models/MarketTradeGood.json index 7319318..414454d 100644 --- a/models/MarketTradeGood.json +++ b/models/MarketTradeGood.json @@ -5,20 +5,25 @@ "type": "string", "description": "The symbol of the trade good." }, + "type": { + "type": "string", + "description": "The type of trade good (export, import, or exchange).", + "enum": [ + "EXPORT", + "IMPORT", + "EXCHANGE" + ] + }, "tradeVolume": { "type": "integer", - "description": "The typical volume flowing through the market for this type of good. The larger the trade volume, the more stable prices will be.", + "description": "This is the maximum number of units that can be purchased or sold at this market in a single trade for this good. Trade volume also gives an indication of price volatility. A market with a low trade volume will have large price swings, while high trade volume will be more resilient to price changes.", "minimum": 1 }, "supply": { - "type": "string", - "description": "A rough estimate of the total supply of this good in the marketplace.", - "enum": [ - "SCARCE", - "LIMITED", - "MODERATE", - "ABUNDANT" - ] + "$ref": "./SupplyLevel.json" + }, + "activity": { + "$ref": "./ActivityLevel.json" }, "purchasePrice": { "type": "integer", @@ -33,6 +38,7 @@ }, "required": [ "symbol", + "type", "tradeVolume", "supply", "purchasePrice", diff --git a/models/ShipyardShip.json b/models/ShipyardShip.json index cbb6c74..4f868a8 100644 --- a/models/ShipyardShip.json +++ b/models/ShipyardShip.json @@ -12,14 +12,10 @@ "type": "string" }, "supply": { - "type": "string", - "description": "A rough estimate of the total supply of this good in the marketplace.", - "enum": [ - "SCARCE", - "LIMITED", - "MODERATE", - "ABUNDANT" - ] + "$ref": "./SupplyLevel.json" + }, + "production": { + "$ref": "./ActivityLevel.json" }, "purchasePrice": { "type": "integer" diff --git a/models/SupplyLevel.json b/models/SupplyLevel.json new file mode 100644 index 0000000..f9f0831 --- /dev/null +++ b/models/SupplyLevel.json @@ -0,0 +1,11 @@ +{ + "type": "string", + "description": "The supply level of a trade good.", + "enum": [ + "SCARCE", + "LIMITED", + "MODERATE", + "HIGH", + "ABUNDANT" + ] +} \ No newline at end of file From 470642fdb21776f2785c0762634c37d2d975705a Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Thu, 26 Oct 2023 17:40:39 -0700 Subject: [PATCH 08/17] update: add waypoint query filters for type and traits --- reference/SpaceTraders.json | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index d403555..e1a4dbc 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -502,6 +502,32 @@ "in": "query", "name": "limit", "description": "How many entries to return per page" + }, + { + "description": "Filter waypoints by type.", + "in": "query", + "name": "type", + "schema": { + "$ref": "../models/WaypointType.json" + } + }, + { + "description": "Filter waypoints by one or more traits.", + "in": "query", + "name": "traits", + "schema": { + "oneOf": [ + { + "$ref": "../models/WaypointTrait.json" + }, + { + "type": "array", + "items": { + "$ref": "../models/WaypointTrait.json" + } + } + ] + } } ], "security": [ From 5d5bd3beb8f97ca616e01c31eb168c7e010447b4 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Fri, 27 Oct 2023 17:27:36 -0700 Subject: [PATCH 09/17] add cargo modules --- models/ShipModule.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/models/ShipModule.json b/models/ShipModule.json index fd3810f..f30ea36 100644 --- a/models/ShipModule.json +++ b/models/ShipModule.json @@ -8,6 +8,8 @@ "MODULE_MINERAL_PROCESSOR_I", "MODULE_GAS_PROCESSOR_I", "MODULE_CARGO_HOLD_I", + "MODULE_CARGO_HOLD_II", + "MODULE_CARGO_HOLD_III", "MODULE_CREW_QUARTERS_I", "MODULE_ENVOY_QUARTERS_I", "MODULE_PASSENGER_CABIN_I", From 2b4133435940f636fe9e59a22a781bfa3e9f1255 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Fri, 27 Oct 2023 17:27:44 -0700 Subject: [PATCH 10/17] add shipyard activity --- models/ShipyardShip.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/models/ShipyardShip.json b/models/ShipyardShip.json index 4f868a8..21adc34 100644 --- a/models/ShipyardShip.json +++ b/models/ShipyardShip.json @@ -14,7 +14,7 @@ "supply": { "$ref": "./SupplyLevel.json" }, - "production": { + "activity": { "$ref": "./ActivityLevel.json" }, "purchasePrice": { From 8b07e5598061fd1606d822c7c62db3011ac81052 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Sat, 28 Oct 2023 09:32:59 -0700 Subject: [PATCH 11/17] fix missing params on construction endpoint --- reference/SpaceTraders.json | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index e1a4dbc..f5eff48 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -811,7 +811,27 @@ "tags": [ "Systems" ] - } + }, + "parameters": [ + { + "description": "The system symbol", + "in": "path", + "name": "systemSymbol", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "The waypoint symbol", + "in": "path", + "name": "waypointSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] }, "/systems/{systemSymbol}/waypoints/{waypointSymbol}/construction/supply": { "post": { From 8ba82c10c56f1e3b2c6b3b3af42de53b56739424 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Sat, 28 Oct 2023 18:51:14 -0700 Subject: [PATCH 12/17] add cargo modules --- models/TradeSymbol.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/models/TradeSymbol.json b/models/TradeSymbol.json index b7d24c7..425dbb8 100644 --- a/models/TradeSymbol.json +++ b/models/TradeSymbol.json @@ -84,6 +84,8 @@ "MODULE_MINERAL_PROCESSOR_I", "MODULE_GAS_PROCESSOR_I", "MODULE_CARGO_HOLD_I", + "MODULE_CARGO_HOLD_II", + "MODULE_CARGO_HOLD_III", "MODULE_CREW_QUARTERS_I", "MODULE_ENVOY_QUARTERS_I", "MODULE_PASSENGER_CABIN_I", From 8b4e8dc7dc6f368050b8199982fb00d3f5cd502c Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Fri, 17 Nov 2023 16:59:33 -0800 Subject: [PATCH 13/17] add new restricted enum on ActivityLevel --- models/ActivityLevel.json | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/models/ActivityLevel.json b/models/ActivityLevel.json index 7cd5ef5..2a8d4b8 100644 --- a/models/ActivityLevel.json +++ b/models/ActivityLevel.json @@ -1,9 +1,16 @@ { "type": "string", - "description": "The activity level of a trade good. If the good is an import, this represents how strong consumption is for the good. If the good is an export, this represents how strong the production is for the good.", + "description": "The activity level of a trade good. If the good is an import, this represents how strong consumption is. If the good is an export, this represents how strong the production is for the good. When activity is strong, consumption or production is near maximum capacity. When activity is weak, consumption or production is near minimum capacity.", "enum": [ "WEAK", "GROWING", - "STRONG" - ] + "STRONG", + "RESTRICTED" + ], + "x-enumDescriptions": { + "WEAK": "Indicates very low production or consumption activity. This may suggest a surplus in supply or a lack of demand.", + "GROWING": "Represents increasing activity in production or consumption, suggesting a developing market.", + "STRONG": "Signifies high levels of production or consumption. Indicates a healthy and active market with high demand or supply.", + "RESTRICTED": "Reflects a bottlneck in production or consumption, possibly due to a lack of supply or demand in related goods." + } } \ No newline at end of file From a5a4d2af72d387c0de063839ee280b5d932f0d63 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Fri, 17 Nov 2023 16:59:43 -0800 Subject: [PATCH 14/17] add pirate base waypoint trait --- models/WaypointTrait.json | 1 + 1 file changed, 1 insertion(+) diff --git a/models/WaypointTrait.json b/models/WaypointTrait.json index 66de7dc..ce16fba 100644 --- a/models/WaypointTrait.json +++ b/models/WaypointTrait.json @@ -13,6 +13,7 @@ "SCATTERED_SETTLEMENTS", "SPRAWLING_CITIES", "MEGA_STRUCTURES", + "PIRATE_BASE", "OVERCROWDED", "HIGH_TECH", "CORRUPT", From 2c52780ca91124058d728bc34cdd904459067b65 Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Fri, 17 Nov 2023 17:00:00 -0800 Subject: [PATCH 15/17] add missing ship symbols --- models/TradeSymbol.json | 37 ++++++++++++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 5 deletions(-) diff --git a/models/TradeSymbol.json b/models/TradeSymbol.json index ad6bef6..186b7cb 100644 --- a/models/TradeSymbol.json +++ b/models/TradeSymbol.json @@ -30,6 +30,7 @@ "MERITIUM_ORE", "HYDROCARBON", "ANTIMATTER", + "FAB_MATS", "FERTILIZERS", "FABRICS", "FOOD", @@ -51,9 +52,9 @@ "CLOTHING", "MICROPROCESSORS", "PLASTICS", - "QUANTUM_STABILIZERS", "POLYNUCLEOTIDES", "BIOCOMPOSITES", + "QUANTUM_STABILIZERS", "NANOBOTS", "AI_MAINFRAMES", "QUANTUM_DRIVES", @@ -72,6 +73,21 @@ "NOVEL_LIFEFORMS", "BOTANICAL_SPECIMENS", "CULTURAL_ARTIFACTS", + "FRAME_PROBE", + "FRAME_DRONE", + "FRAME_INTERCEPTOR", + "FRAME_RACER", + "FRAME_FIGHTER", + "FRAME_FRIGATE", + "FRAME_SHUTTLE", + "FRAME_EXPLORER", + "FRAME_MINER", + "FRAME_LIGHT_FREIGHTER", + "FRAME_HEAVY_FREIGHTER", + "FRAME_TRANSPORT", + "FRAME_DESTROYER", + "FRAME_CRUISER", + "FRAME_CARRIER", "REACTOR_SOLAR_I", "REACTOR_FUSION_I", "REACTOR_FISSION_I", @@ -90,8 +106,6 @@ "MODULE_ENVOY_QUARTERS_I", "MODULE_PASSENGER_CABIN_I", "MODULE_MICRO_REFINERY_I", - "MODULE_ORE_REFINERY_I", - "MODULE_FUEL_REFINERY_I", "MODULE_SCIENCE_LAB_I", "MODULE_JUMP_DRIVE_I", "MODULE_JUMP_DRIVE_II", @@ -101,6 +115,8 @@ "MODULE_WARP_DRIVE_III", "MODULE_SHIELD_GENERATOR_I", "MODULE_SHIELD_GENERATOR_II", + "MODULE_ORE_REFINERY_I", + "MODULE_FUEL_REFINERY_I", "MOUNT_GAS_SIPHON_I", "MOUNT_GAS_SIPHON_II", "MOUNT_GAS_SIPHON_III", @@ -116,7 +132,18 @@ "MOUNT_LASER_CANNON_I", "MOUNT_MISSILE_LAUNCHER_I", "MOUNT_TURRET_I", - "FAB_MATS" + "SHIP_PROBE", + "SHIP_MINING_DRONE", + "SHIP_SIPHON_DRONE", + "SHIP_INTERCEPTOR", + "SHIP_LIGHT_HAULER", + "SHIP_COMMAND_FRIGATE", + "SHIP_EXPLORER", + "SHIP_HEAVY_FREIGHTER", + "SHIP_LIGHT_SHUTTLE", + "SHIP_ORE_HOUND", + "SHIP_REFINING_FREIGHTER", + "SHIP_SURVEYOR" ], "description": "The good's symbol." -} +} \ No newline at end of file From 4e1cc85eedcd5e349036d122655d0cc513d1320f Mon Sep 17 00:00:00 2001 From: SpaceAdmiral Date: Fri, 17 Nov 2023 17:00:08 -0800 Subject: [PATCH 16/17] remove duplicate key --- models/MarketTradeGood.json | 9 --------- 1 file changed, 9 deletions(-) diff --git a/models/MarketTradeGood.json b/models/MarketTradeGood.json index 830505b..2f085ad 100644 --- a/models/MarketTradeGood.json +++ b/models/MarketTradeGood.json @@ -13,15 +13,6 @@ "EXCHANGE" ] }, - "type": { - "type": "string", - "description": "The type of trade good (export, import, or exchange).", - "enum": [ - "EXPORT", - "IMPORT", - "EXCHANGE" - ] - }, "tradeVolume": { "type": "integer", "description": "This is the maximum number of units that can be purchased or sold at this market in a single trade for this good. Trade volume also gives an indication of price volatility. A market with a low trade volume will have large price swings, while high trade volume will be more resilient to price changes.", From a4c9fd3385b6663c2205aabe2cbdb2152c909534 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Baumk=C3=B6tter?= Date: Sat, 11 Nov 2023 21:20:36 +0100 Subject: [PATCH 17/17] refuel ship preparations --- reference/SpaceTraders.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index 53f6a08..aabdbdb 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -3072,6 +3072,11 @@ "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", "example": "100", "minimum": 1 + }, + "fromCargo": { + "type": "boolean", + "description": "Wether to use the FUEL thats in your cargo or not. Default: false", + "example": false } } }